¿Cómo usar el cliente SSH nativo en Windows 10?
El cliente SSH integrado apareció en Windows 10 y Windows Server 2019.
Ssh.exese puede utilizar para conectarse de forma segura a servidores Linux/UNIX, hosts VMWare ESXi y otros dispositivos en lugar de Putty, MTPuTTY y otros clientes SSH de terceros. El cliente SSH nativo de Windows se basa en el puerto OpenSSH y está preinstalado en Windows a partir de Windows 10 compilación 1809.
¿Cómo habilitar (instalar) el cliente OpenSSH en Windows 10?
El cliente OpenSSH está incluido en las Características bajo demanda de Windows 10 (como RSAT). El cliente SSH está instalado de forma predeterminada en Windows Server 2019, Windows 10 1809 y versiones más recientes.
Compruebe que el cliente SSH está instalado:
Get-WindowsCapability -Online | ? Name -like 'OpenSSH.Client*'
En nuestro ejemplo, el cliente OpenSSH está instalado (Estado: Instalado).
Si no (Estado: No presente), puede instalarlo usando:
El comando PowerShell:
Add-WindowsCapability -Online -Name OpenSSH.Client*Con DISM:
dism /Online /Add-Capability /CapabilityName:OpenSSH.Server~~~~0.0.1.0A través de Configuración -> Aplicaciones -> Funciones opcionales -> Agregar una función. Busque cliente OpenSSH en la lista y haga clic en Instalar.
Los archivos binarios de OpenSSH se encuentran en
c:\Windows\System32\OpenSSH\ssh.exe- el ejecutable del cliente SSH;
scp.exe- herramienta para copiar archivos en una sesión SSH;
ssh-keygen.exe- herramienta para generar claves de autenticación RSA SSH;
ssh-agent.exe- utilizado para gestionar claves RSA;
ssh-add.exe- agrega una clave a la base de datos del agente SSH.
También puede instalar OpenSSH en versiones anteriores de Windows: simplemente descargue e instale Win32-OpenSSH desde GitHub (puede encontrar un ejemplo en el artículo: Configuración de SSH FTP en Windows).
Uso de un cliente SSH nativo en Windows 10
Para iniciar el cliente SSH, ejecute el indicador PowerShell o cmd.exe. Puede enumerar las opciones y la sintaxis disponibles para ssh.exe:
sshusage: ssh [-46AaCfGgKkMNnqsTtVvXxYy] [-b bind_address] [-c cipher_spec]
[-D [bind_address:]port] [-E log_file] [-e escape_char]
[-F configfile] [-I pkcs11] [-i identity_file]
[-J [user@]host[:port]] [-L address] [-l login_name] [-m mac_spec]
[-O ctl_cmd] [-o option] [-p port] [-Q query_option] [-R address]
[-S ctl_path] [-W host:port] [-w local_tun[:remote_tun]]
destination [command]Para conectarse a un servidor remoto usando SSH, use el siguiente comando:
ssh username@hostSi su servidor SSH se ejecuta en un puerto diferente al estándar TCP/22, especifique el número de puerto:
ssh username@host -p portPor ejemplo, para conectarse a un host Linux con la dirección IP 192.168.1.102 como raíz, ejecute este comando:
ssh root@192.168.1.102En la primera conexión, verá una solicitud para agregar la clave de host a la lista de confianza. Tipo
yes
y presione ENTRAR. Luego, la huella digital de la clave de host se agrega al archivo C:\Users\username\.ssh\known_hosts.
Se te solicitará una contraseña. Especifique su contraseña de root y la consola de su servidor Linux remoto debería abrirse (en mi ejemplo, CentOS está instalado en el servidor remoto).
Usando SSH, puede conectarse tanto a sistemas operativos * Nix como a Windows. En uno de los artículos anteriores, mostramos cómo configurar un servidor OpenSSH en Windows 10 y conectarse a él desde un host de Windows usando un cliente SSH.
Si usa la autenticación SSH con claves RSA (vea un ejemplo sobre cómo configurar la autenticación SSH usando claves en Windows), puede especificar una ruta al archivo de clave privada en su cliente SSH de la siguiente manera:
ssh root@192.168.1.102 -i "C:\Users\username\.ssh\id_rsa"También puede agregar una clave privada a SSH-Agent. Primero, habilite el servicio ssh-agent y configure el inicio automático para él.
set-service ssh-agent StartupType 'Automatic'
Start-Service ssh-agentAgregue su clave privada a la base de datos de ssh-agent:
ssh-add "C:\Users\username\.ssh\id_rsa"Entonces podrá conectarse a su servidor a través de SSH sin especificar la ruta a la clave RSA. Se utilizará automáticamente. Ahora puede conectarse de forma segura a su servidor sin contraseña (si no ha protegido su clave RSA con una contraseña diferente):
ssh root@192.168.1.102Aquí hay algunos argumentos SSH más útiles:
-C- se utiliza para comprimir el tráfico entre el cliente y el servidor (es útil en caso de conexiones lentas o inestables)
-v- muestra información detallada sobre todas las acciones del cliente SSH
-R/-L- se puede usar para reenviar puertos usando un túnel SSH
Uso de SCP.exe para transferir archivos hacia/desde el host de Windows mediante SSH
Con la herramienta scp.exe (es parte del paquete de cliente SSH de Windows 10), puede copiar un archivo desde su computadora al servidor SSH:
scp.exe "E:\ISO\CentOS-8.1.x86_64.iso" root@192.168.1.202:/homePuede copiar todo el contenido del directorio de forma recursiva:
scp -r E:\ISO\ root@192.168.1.202:/homeY viceversa, puede transferir un archivo desde un servidor remoto a su computadora:
scp.exe root@192.168.1.202:/home/CentOS-8.1.x86_64.iso c:\isoSi configura la autenticación con claves RSA, no se le pedirá que ingrese su contraseña para transferir archivos. Esto es útil si desea configurar la copia automática programada de archivos.
Por lo tanto, puede conectarse a servidores SSH directamente desde su Windows 10, copiar archivos usando scp sin ninguna otra aplicación o herramienta de terceros.





