ssh
Conectarse a un servidor, ejecutar comandos y crear túneles cifrados.
Antes de ejecutar
En el primer acceso, compruebe la huella de la clave del servidor por un canal fiable. -N solo activa reenvíos; Ctrl+C detiene estos túneles en primer plano. -L resuelve y alcanza el destino desde el servidor SSH; -R lo alcanza desde este equipo. La escucha remota depende de la política de reenvío del servidor, y la vinculación a loopback también de GatewayPorts. ExitOnForwardFailure comprueba la configuración inicial, no cada destino posterior. -D ofrece SOCKS, no una VPN: configure el cliente por separado, incluido DNS remoto si lo admite. Oculte direcciones, usuarios y rutas de claves antes de compartir registros detallados.
Ejemplos
Iniciar sesión y completar la verificación de la clave del servidor y la autenticación.
ssh alice@server.example.comElegir el puerto 2222 y una clave; IdentitiesOnly limita las identidades ofrecidas.
ssh -p 2222 -i ~/.ssh/id_ed25519 -o IdentitiesOnly=yes alice@server.example.comAcceder al destino a través de un bastión con ProxyJump (-J).
ssh -J alice@bastion.example.com alice@internal.example.comReenvío local: el puerto 15432 llega a la base de datos a través del servidor.
ssh -N -L 127.0.0.1:15432:db.internal.example.com:5432 -o ExitOnForwardFailure=yes alice@server.example.comReenvío remoto: el puerto loopback 18080 del servidor llega al puerto 8080 de este equipo.
ssh -N -R 127.0.0.1:18080:127.0.0.1:8080 -o ExitOnForwardFailure=yes alice@server.example.comCrear una escucha SOCKS local en 127.0.0.1:1080.
ssh -N -D 127.0.0.1:1080 -o ExitOnForwardFailure=yes alice@server.example.comDiagnosticar con registros detallados y diez segundos de espera para establecer conexión.
ssh -vvv -o ConnectTimeout=10 alice@server.example.comConecte mediante dos servidores de salto en orden. El cliente autentica cada salto; verifique todas las claves de host.
ssh -J alice@jump1.example.com,alice@jump2.example.com alice@target.example.comMuestre la configuración efectiva tras aplicar Host e Include. La salida puede contener datos sensibles de conexión.
ssh -G alice@server.example.comEjecute un comando remoto y vuelva a la terminal local. Use comillas adecuadas para la shell remota.
ssh alice@server.example.com 'uptime'Cree y reutilice una conexión, compruébela y cierre la conexión maestra. Proteja ~/.ssh; al cerrarla también terminan sus sesiones dependientes.
ssh -M -S ~/.ssh/securepipes-%C -o ControlPersist=10m -fN alice@server.example.com
ssh -S ~/.ssh/securepipes-%C alice@server.example.com
ssh -S ~/.ssh/securepipes-%C -O check alice@server.example.com
ssh -S ~/.ssh/securepipes-%C -O exit alice@server.example.comEnumere categorías de consulta, algoritmos de clave y cifrados. Que el cliente los admita no garantiza que el servidor los acepte.
ssh -Q help
ssh -Q key
ssh -Q cipherCompruebe la entrada known_hosts y su huella. Elimínela solo después de verificar el cambio por un canal independiente; use el formato exacto de host y puerto.
ssh-keygen -F server.example.com -l
ssh-keygen -R server.example.comUse modo no interactivo y tiempo de espera para scripts. Configure previamente autenticación y confianza; las solicitudes interactivas fallan.
ssh -o BatchMode=yes -o ConnectTimeout=10 alice@server.example.comUse ProxyCommand con -W mediante un servidor de salto. ProxyJump suele ser más simple; verifique ambas claves de host.
ssh -o 'ProxyCommand=ssh -W %h:%p alice@bastion.example.com' alice@target.example.comCree un puerto SOCKS en la interfaz de bucle del servidor. Otros usuarios y procesos locales podrían acceder; el servidor debe permitir el reenvío.
ssh -N -R 127.0.0.1:1080 -o ExitOnForwardFailure=yes alice@server.example.comConfigure sondas SSH cifradas y tiempo de conexión. Detectan un extremo sin respuesta, pero no garantizan la reconexión.
ssh -o ServerAliveInterval=30 -o ServerAliveCountMax=3 -o ConnectTimeout=10 alice@server.example.comOpciones y ejemplos
-p portFrecuenteConéctese al puerto del servidor especificado.
ssh -p 2222 alice@server.example.com-i identity_fileFrecuenteUtilice el archivo de clave privada especificado; protégelo y nunca lo compartas.
ssh -i ~/.ssh/id_ed25519 alice@server.example.com-l login_nameEspecifique el nombre de inicio de sesión remoto.
ssh -l alice server.example.com-J destinationFrecuenteConéctese a través de un host de salto SSH.
ssh -J alice@bastion.example.com alice@internal.example.com-L address:port:host:hostportFrecuenteReenvíe un puerto de escucha local a un destino alcanzado desde el servidor SSH.
ssh -N -L 127.0.0.1:15432:db.internal.example.com:5432 alice@server.example.com-R address:port:host:hostportFrecuenteReenvía un puerto de escucha remoto a un destino al que se llega desde la computadora local. La política del servidor puede restringir el enlace.
ssh -N -R 127.0.0.1:18080:127.0.0.1:8080 alice@server.example.com-D address:portFrecuenteCree un oyente SOCKS local. Configure cada cliente para usarlo; esto no es una VPN.
ssh -N -D 127.0.0.1:1080 alice@server.example.com-NFrecuenteNo ejecute un comando remoto; útil sólo para reenviar.
ssh -N -D 127.0.0.1:1080 alice@server.example.com-o option=valueFrecuenteEstablezca una opción ssh_config para esta invocación. El éxito de la configuración de reenvío no garantiza que se pueda llegar a un destino más adelante.
ssh -o ExitOnForwardFailure=yes alice@server.example.com-F configfileUtilice un archivo de configuración de cliente alternativo.
ssh -F ~/.ssh/lab_config alice@server.example.com-v / -vvvFrecuenteImprimir salida de diagnóstico; más caracteres v aumentan los detalles. Los registros pueden contener información de conexión confidencial.
ssh -vvv alice@server.example.com-4 / -6Utilice solo IPv4 o solo IPv6, respectivamente.
ssh -4 alice@server.example.com-CSolicitar compresión. Es posible que no mejore el tráfico ya comprimido.
ssh -C alice@server.example.com-T / -tDeshabilitar o solicitar un pseudo-terminal, respectivamente.
ssh -t alice@server.example.com-AHabilitar el reenvío de agentes. Un host remoto comprometido puede solicitar firmas del agente reenviado; Úselo solo con hosts confiables.
ssh -A alice@server.example.com-GImprima la configuración efectiva del cliente después de evaluar las reglas de Host y Match.
ssh -G lab-VImprima la versión del cliente SSH instalada.
ssh -VReferencias oficiales
Revisado el 27 de octubre de 2026