OpenSSH es una implementación completa del protocolo SSH (versión 2) para inicio de sesión remoto seguro, ejecución de comandos y transferencia de archivos. Incluye un cliente ssh
y un servidor sshd
, utilidades de transferencia de archivos scp
y sftp
, así como herramientas para la generación de claves ( ssh-keygen
), almacenamiento de claves en tiempo de ejecución ( ssh-agent
) y una serie de programas de soporte.
Este es un puerto de OpenSSH de OpenBSD para la mayoría de los sistemas operativos tipo Unix, incluidos Linux, OS X y Cygwin. Portable OpenSSH polyfills API de OpenBSD que no están disponibles en otros lugares, agrega sshd sandboxing para más sistemas operativos e incluye soporte para autenticación y auditoría nativa del sistema operativo (por ejemplo, usando PAM).
La documentación oficial de OpenSSH son las páginas de manual de cada herramienta:
ssh(1)
sshd(8)
ssh-keygen(1)
agente ssh(1)
scp(1)
ftp(1)
ssh-keyscan(8)
servidor sftp(8)
Los archivos tar de versión estable están disponibles en varios espejos de descarga. Recomendamos el uso de una versión estable para la mayoría de los usuarios. Lea las notas de la versión para obtener detalles sobre cambios recientes y posibles incompatibilidades.
OpenSSH portátil se construye usando autoconf y make. Requiere un compilador de C que funcione, una biblioteca estándar y encabezados.
También se puede utilizar libcrypto
de LibreSSL u OpenSSL. OpenSSH puede construirse sin ninguno de estos, pero los binarios resultantes tendrán sólo un subconjunto de los algoritmos criptográficos normalmente disponibles.
zlib es opcional; sin él no se admite la compresión de transporte.
La compatibilidad con el token de seguridad FIDO necesita libfido2 y sus dependencias y se habilitará automáticamente si se encuentran.
Además, determinadas plataformas y opciones de tiempo de compilación pueden requerir dependencias adicionales; consulte README.platform para obtener detalles sobre su plataforma.
Los tarballs de lanzamiento y las ramas de lanzamiento en git incluyen una copia prediseñada del script configure
y se pueden compilar usando:
tar zxvf openssh-X.YpZ.tar.gz cd openssh ./configure # [options] make && make tests
Consulte la sección Personalización del tiempo de compilación a continuación para conocer las opciones de configuración. Si planea instalar OpenSSH en su sistema, normalmente querrá especificar las rutas de destino.
Si compila desde la rama git master, necesitará tener instalado autoconf para compilar el script configure
. Los siguientes comandos verificarán y construirán OpenSSH portátil desde git:
git clone https://github.com/openssh/openssh-portable # or https://anongit.mindrot.org/openssh.git cd openssh-portable autoreconf ./configure make && make tests
Hay muchas opciones de personalización disponibles durante el tiempo de construcción. Todos los indicadores de ruta de destino de Autoconf (por ejemplo, --prefix
) son compatibles (y generalmente son necesarios si desea instalar OpenSSH).
Para obtener una lista completa de indicadores disponibles, ejecute ./configure --help
pero a continuación se describen algunos de los más utilizados. Algunas de estas banderas requerirán la instalación de bibliotecas y/o encabezados adicionales.
Bandera | Significado |
---|---|
--with-pam | Habilite la compatibilidad con PAM. Se admiten OpenPAM, Linux PAM y Solaris PAM. |
--with-libedit | Habilite el soporte de libedit para sftp. |
--with-kerberos5 | Habilite la compatibilidad con Kerberos/GSSAPI. Se admiten implementaciones de Heimdal y MIT Kerberos. |
--with-selinux | Habilite la compatibilidad con SELinux. |
El desarrollo de OpenSSH portátil se analiza en la lista de correo de openssh-unix-dev (espejo de archivo). Los errores y las solicitudes de funciones se rastrean en nuestro Bugzilla.
Los errores no relacionados con la seguridad se pueden informar a los desarrolladores a través de Bugzilla o mediante la lista de correo anterior. Los errores de seguridad deben informarse a [email protected].