Conectarse por SSH a Windows 10 (OpenSSH server)

Instalación de OpenSSH Server

Tenemos 2 opciones para instalar OpenSSH Server, desde un entorno gráfico o con la línea de comandos.

Opción 1 - Usando interfaz gráfica

  1. Abrir el programa Aplicaciones y características de Windows y elegir la opción Características opcionales:
../../../_images/install_openssh_server_gui_1.png

Opción Características opcionales del programa Aplicaciones y características

  1. Clic en + Agregar una característica:
../../../_images/install_openssh_server_gui_2.png

Opción + Agregar una característica

  1. Buscar Servidor de OpenSSH y clic en Instalar:
../../../_images/install_openssh_server_gui_3.png

En la característica Servidor de OpenSSH, opción Instalar:

  1. Comprobar que hemos agregado correctamente el Servidor de OpenSSH:
../../../_images/install_openssh_server_gui_4.png

Comprobar que está instalado el Servidor de OpenSSH:

Opción 2 - Usando Powershell

Abrir el programa Powershell como administrador. Y ejecutar los siguientes comandos:

Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0
Set-Service -Name ssh-agent -StartupType 'Automatic'
Set-Service -Name sshd -StartupType 'Automatic'
Get-Service ssh* | Start-Service

Abrir el archivo sshd_config con un editor de texto

  • Con un editor de texto editar el archivo sshd_config:

Usando Visual Studio Code

  • Abrir Powershell en modo administrador y ejecutar los siguiente comandos:
cd C:\ProgramData\ssh\
code sshd_config

Usando Bloc de Notas

  • Abrir Powershell en modo administrador y ejecutar los siguiente comandos:
cd C:\ProgramData\ssh\
notepad sshd_config

Usando WSL

  • Abrir un terminal de Linux como administrador y ejeutar los siguientes comandos:
sudo su
cd /mnt/c/ProgramData/ssh/
vim sshd_config

Configuración del servidor OpenSSH

Port 2233
PasswordAuthentication yes
#PermitEmptyPasswords yes

Note

En caso, el usuario de Windows no tenga una contraseña establecida; en primer lugar, probar usando como contraseña el nombre de usuario. En caso no funcione, habilitar la línea PermitEmptyPasswords yes en el archivo sshd_config y reiniciar el servicio de SSH. Con esta última opción se habilita las conexiones SSH para usuario que no tiene contraseña.

Agregar una regla al Firewall de Windows

  • Abrir el puerto 2233 en el firewall de Windows:
  1. En el barra de navegación de Windows, abrir el programa WF.msc Seleccionar la opción Reglas de entrada en la barra izquierda:
../../../_images/new_windows_ssh_firewall_rule_1.png

Abrir el programa WF.msc de Windows, Reglas de entrada

  1. Seleccionar la opción Nueva regla… en la barra derecha:
../../../_images/new_windows_ssh_firewall_rule_2.png

Seleccionar la opción Nueva regla…

  1. Seleccionar el tipo de regla Puerto:
../../../_images/new_windows_ssh_firewall_rule_3.png

Tipo de regla: Puerto

  1. Aplicar la regla a TCP y usar la opción Puertos locales específicos: y escribir 2233:
../../../_images/new_windows_ssh_firewall_rule_4.png

Aplicar la regla a TCP, Puertos locales específicos: 2233

  1. Elegir la opción Permitir la conexión:
../../../_images/new_windows_ssh_firewall_rule_5.png

Seleccionar Permitir la conexión

  1. Aplicar la regla sobre todas las opciones: Dominio, Privado, Público
../../../_images/new_windows_ssh_firewall_rule_6.png

Seleccionar Permitir la conexión

  1. Dar un nombre y descripción a la nueva regla de firewall creada:
../../../_images/new_windows_ssh_firewall_rule_7.png

Nombre y descripción de la regla de firewall

Reiniciar el servicio de SSH

Restart-Service sshd
  • Verificar que se encuentre escuchando en el puerto 2233:
netstat -aon | findstr "2233"
  TCP    0.0.0.0:2233           0.0.0.0:0              LISTENING       9972
  TCP    [::]:2233              [::]:0                 LISTENING       9972

Conexión remota por SSH

  • Desde un equipo remoto conectarnos por SSH al sistema Windows usando un terminal o PuTTY, apuntando a la IP del sistema Windows y el puerto 2233. Por ejemplo para conectarnos por SSH desde un terminal de Linux usamos:
$ ssh usuario@192.168.1.8 -p 2233

usuario@192.168.1.8 s password:
Microsoft Windows [Versión 10.0.18362.720]
(c) 2019 Microsoft Corporation. Todos los derechos reservados.

usuario@DESKTOP-PTFJ9SQ C:\Users\usuario>