Cuando necesite administrar una máquina * nix a distancia, casi siempre usará SSH. Cualquier sistema operativo basado en BSD o Linux que se ejecute en un servidor vendrá con el demonio OpenSSH preinstalado. Para «hablar» con este demonio e interactuar con la máquina remota, también necesita un cliente SSH. PuTTY ha sido durante mucho tiempo el cliente SSH más popular utilizado en Windows, pero desde la última actualización importante, Windows 10 ahora viene con un cliente SSH preinstalado. Es más fácil y rápido usar este cliente en lugar de instalar y configurar PuTTY.
Cómo instalar el cliente OpenSSH de Windows
Primero, comprueba si ya está instalado. Presione la tecla del logotipo de Windows en su teclado o haga clic en el menú Inicio. Escribe cmd
y abra el símbolo del sistema.
Ahora, escribe ssh
y presione Entrar. Debería mostrarse un breve resumen de los modificadores de la línea de comandos. Esto significa que el cliente está instalado y puede omitir el resto de esta sección.
Si recibe un mensaje que dice que no se reconoce el comando, haga clic en el menú Inicio y escriba features
. Abra «Aplicaciones y funciones» y haga clic en «Administrar funciones opcionales».
A continuación, haga clic en «Agregar una función» y desplácese hacia abajo hasta que encuentre «Cliente OpenSSH». Instálalo y deberías estar listo para comenzar.
Cómo utilizar el cliente OpenSSH integrado de Windows
Si está familiarizado con el ssh
comando en Linux, ya sabes cómo usarlo en Windows. Tiene la misma sintaxis y conmutadores de línea de comandos. Puedes leer el completo Manual de SSH en el sitio web de OpenBSD.
La sintaxis básica para conectarse a un servidor es ssh username@IP-address-or-hostname
.
Ejemplos:
ssh root@203.0.113.1 ssh john@example.com
Cuando inicia sesión con una contraseña, es fácil. Sólo tipo yes
para aceptar la huella digital y luego escriba su contraseña (los caracteres no se mostrarán en la pantalla).
Sin embargo, se recomienda que en lugar de contraseñas utilice claves SSH. Las computadoras zombies de las botnets escanean constantemente e intentan forzar contraseñas en los servidores OpenSSH. Las claves no pueden ser de fuerza bruta. Son mucho más seguras que usar el esquema comúnmente recomendado de contraseñas más fail2ban. Fail2ban bloquea múltiples intentos desde la misma IP, pero otra IP intentará diferentes contraseñas hasta que una de ellas tenga suerte.
Cómo iniciar sesión con claves SSH
Existen muchos métodos para crear pares de claves para la autenticación SSH. y tu tambien tienes ssh-keygen
disponible en Windows, que puede usar en el símbolo del sistema. Después de crear el par, agregue la clave pública a su servidor y deshabilite los inicios de sesión con contraseña. Luego, guarde la clave privada en su computadora con Windows.
Cuando inicia sesión, puede proporcionar la ruta a esta clave (privada) después de la -i
parámetro en un comando como:
ssh -i C:\Users\mte\testkey root@203.0.113.1
De lo contrario, puede mover una clave privada a su ubicación predeterminada. Después de la primera conexión, el cliente SSH crea un directorio, .ssh
, en su directorio de usuario actual. Puede abrir el directorio escribiendo esto en el símbolo del sistema:
explorer %userprofile%\.ssh
Ahora, copie su clave privada aquí y asígnele un nombre id_rsa
.
A partir de ahora, puede iniciar sesión con esta clave privada sin usar el -i
parámetro.
Parámetros útiles del comando SSH
-p
– Use esto si su servidor SSH está escuchando en un puerto diferente (que no sea el 22). Ejemplo:ssh -p 4444 root@203.0.113.1
-C
– Comprimir el tráfico entre cliente y servidor. Solo útil en conexiones muy lentas-v
– Modo detallado, genera mucho más sobre lo que está sucediendo. Puede ayudarlo a depurar problemas de conexión.
Comando de ejemplo:
ssh -p 4444 -C -v root@203.0.113.1
Conclusión
Dado que este es básicamente el mismo cliente OpenSSH que encuentra en las máquinas Linux, algunos comandos como sftp
también están disponibles. Esto facilita la carga y descarga de archivos a/desde servidores remotos. Para aquellos que prefieren la línea de comandos, esto significa que ya no necesitan instalar clientes FTP como FileZilla. También es posible configurar túneles SSH con el ssh
dominio. Es posible que cubramos esto en un tutorial futuro, ya que hace posible algunas cosas «imposibles», como aceptar conexiones externas en su computadora local, incluso si su ISP no le ofrece una dirección IP externa privada (más clientes se sientan detrás de la misma Internet). Dirección IP).