Comando ssh de Linux
Referencia completa de comandos de Linux
sshEl comando se utiliza para conectarse a un host remoto mediante el protocolo SSH, permitiendo el inicio de sesión remoto y la ejecución de comandos. Cifra toda la comunicación en la sesión para garantizar la seguridad de la transmisión de datos.
SSH (Secure Shell) es un protocolo cifrado utilizado para el inicio de sesión remoto y otros servicios de red. SSH proporciona un canal de comunicación seguro para proteger la confidencialidad e integridad de los datos.
Sintaxis
ssh [options] [user@]hostname [command]
Descripción de parámetros
[user@]hostname: nombre de usuario y nombre de host del host remoto al que se desea conectar.[command]: comando opcional que se ejecutará en el host remoto.
Opciones comunes
-l user: especifica el usuario con el que se iniciará sesión.-p port: especifica el número de puerto para conectarse al host remoto; el valor predeterminado es 22.-i identity_file: especifica el archivo de autenticación (archivo de clave privada).-v: modo detallado, puede mostrar información de depuración.-C: habilita la compresión.-N: no ejecuta comandos remotos, solo realiza el reenvío de puertos.-f: se ejecuta en segundo plano.-L local_port:remote_host:remote_port: reenvío de puerto local.-R remote_port:local_host:local_port: reenvío de puerto remoto.-D [bind_address:]port: reenvío de puerto dinámico a nivel de aplicación.
Ejemplos
Uso básico
Conectarse a un host remoto:
ssh user@hostname
Ejemplo:
ssh [email protected]
Conexión con puerto específico:
ssh -p 2222 user@hostname
Ejemplo:
ssh -p 2222 [email protected]
Usar un archivo de autenticación:
ssh -i /path/to/private_key user@hostnameEjemplo:
ssh -i ~/.ssh/id_rsa [email protected]
Ejecutar comandos en el host remoto:
ssh user@hostname command
Ejemplo:
ssh [email protected] ls -la
Modo detallado:
ssh -v user@hostname
Ejemplo:
ssh -v [email protected]
Habilitar compresión:
ssh -C user@hostname
Ejemplo:
ssh -C [email protected]
Ejecutar en segundo plano sin ejecutar comandos:
ssh -f -N user@hostname
Ejemplo:
ssh -f -N [email protected]
Reenvío de puertos
Reenvío de puerto local:
ssh -L local_port:remote_host:remote_port user@hostname
Ejemplo:
ssh -L 8080:localhost:80 [email protected]
Reenvío de puerto remoto:
ssh -R remote_port:local_host:local_port user@hostname
Ejemplo:
ssh -R 8080:localhost:80 [email protected]
Reenvío de puerto dinámico:
ssh -D [bind_address:]port user@hostname
Ejemplo:
ssh -D 1080 [email protected]
Uso avanzado
Archivo de configuración
El archivo de configuración del cliente SSH se encuentra en ~/.ssh/config, donde se pueden establecer configuraciones comunes.
Ejemplo:
Host example
HostName example.com
User john
Port 2222
IdentityFile ~/.ssh/id_rsa
Al usarlo, solo necesita:
ssh example
Reenvío de agente SSH
Habilitar el reenvío de agente:
ssh -A user@hostname
Ejemplo:
ssh -A [email protected]
Reenvío X11
Habilitar el reenvío X11:
ssh -X user@hostname
Ejemplo:
ssh -X [email protected]Otras extensiones