El cliente SSH incorporado apareció en Windows 10 y Windows Server 2019. Ssh.exe
se 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 OpenSSH puerto y está preinstalado en Windows a partir de Windows 10 build 1809.
¿Cómo habilitar (instalar) el cliente OpenSSH en Windows 10?
El cliente OpenSSH está incluido en Windows 10 Funciones bajo demanda (como RSAT). El cliente SSH se instala de forma predeterminada en Windows Server 2019, Windows 10 1809 y versiones más recientes.
Verifique 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 de PowerShell:
Add-WindowsCapability -Online -Name OpenSSH.Client*
- Con DISM:
dism /Online /Add-Capability /CapabilityName:OpenSSH.Server~~~~0.0.1.0
- A través de Configuración -> Aplicaciones -> Funciones opcionales -> Agregar una función. Encontrar Cliente OpenSSH en la lista y haga clic en Instalar en pc.
Los archivos binarios de OpenSSH se encuentran en c:WindowsSystem32OpenSSH
.
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 administrar claves RSA;ssh-add.exe
: Agrega una clave a la base de datos del agente SSH.
Uso de un cliente SSH nativo en Windows 10
Para iniciar el cliente SSH, ejecute el indicador de PowerShell o cmd.exe. Puede enumerar las opciones y la sintaxis disponibles para ssh.exe:
ssh
usage: 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@host
Si su servidor SSH se ejecuta en un puerto diferente del estándar TCP / 22, especifique el número de puerto:
ssh username@host -p port
Por ejemplo, para conectarse a un host Linux con la dirección IP 192.168.1.102 como root, ejecute este comando:
En la primera conexión, verá una solicitud para agregar la clave de host a la lista de confianza. Tipo yes
y presione ENTER. Luego, la huella digital de la clave del host se agrega al C: Users username .ssh known_hosts expediente.
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).
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 [email protected] -i "C:Usersusername.sshid_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-agent
Agregue su clave privada a la base de datos del agente ssh:
ssh-add "C:Usersusername.sshid_rsa"
Luego, 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 una contraseña (si no ha protegido su clave RSA con una contraseña diferente):
Aquí hay algunos argumentos SSH más útiles:
-C
– utilizado 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 utilizar para reenviar puertos mediante un túnel SSH
Uso de SCP.exe para transferir archivos hacia / desde Windows Host usando SSH
Utilizando el scp.exe herramienta (es parte del paquete de cliente SSH de Windows 10), puede copiar un archivo desde su computadora al servidor SSH:
scp.exe "E:ISOCentOS-8.1.x86_64.iso" [email protected]:/home
Puede copiar todo el contenido del directorio de forma recursiva:
scp -r E:ISO [email protected]:/home
Y viceversa, puede transferir un archivo desde un servidor remoto a su computadora:
scp.exe [email protected]:/home/CentOS-8.1.x86_64.iso c:iso
Si configura la autenticación mediante claves RSA, no se le pedirá que ingrese su contraseña para transferir archivos. Esto es útil si desea configurar la copia automática de archivos programada.
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.
Artículos Interesantes
Relacionados:
Contenido