Instalación, prueba y desinstalación de un servidor SFTP basado en OpenSSH en Windows

Instalación, prueba y desinstalación de un servidor SFTP basado en OpenSSH en Windows

Guía paso a paso

Instalación y configuración de un servidor SFTP (SSH FTP)

Primero necesitas descargar e instalar OpenSSH desde GitHub:
https://github.com/PowerShell/...
Descarga el archivo: OpenSSH-Win64.zip

1) Extrae el contenido del archivo a un directorio de destino, por ejemplo:"C:\Windows"

Instalación, prueba y desinstalación de un servidor SFTP basado en OpenSSH en Windows

2) Abra las propiedades del sistema(WIN+R, comando "sysdm.cpl") -> Avanzado -> Variables de entorno
La ventana que aparece tiene dos secciones: la superior contiene las variables de entorno del usuario, la inferior las variables del sistema.
En las variables de sistema seleccione la variable"Ruta", haga clic en"Cambiar...".

Instalación, prueba y desinstalación de un servidor SFTP basado en OpenSSH en Windows

3) En la ventana que se abre, haga clic en"Nuevo" e introduzca la ruta del directorio OpenSSH del paso 1, en este ejemplo"C:\Windows\OpenSSH-Win64"

Instalación, prueba y desinstalación de un servidor SFTP basado en OpenSSH en Windows

4) Inicie"PowerShell" como administrador:
Inicio, escriba"PowerShell"→ Haga clic con el botón derecho en "PowerShell" → Ejecutar como Administrador.

Instalación, prueba y desinstalación de un servidor SFTP basado en OpenSSH en Windows

5) Navegue hasta el directorio OpenSSH, en este ejemplo:"C:\Windows\OpenSSH-Win64"

cd C:\Windows\OpenSSH-Win64

Instale el servidor OpenSSH:
(debería aparecer un mensaje verde "sshd and ssh-agent services successfully installed");

.\Install-sshd.ps1

Habilite la ejecución automática para el servicio SSHD:

Set-Service -Name sshd -StartupType ‘Automatic’

Abra el puerto TCP 22 en el cortafuegos de Windows para el tráfico entrante al servidor SSH:

New-NetFirewallRule -Protocol TCP -LocalPort 22 -Direction Inbound -Action Allow -DisplayName SSH

Configure el propietario del archivo y los derechos de acceso: (Responda a cada pregunta con un"S")

.\FixHostFilePermissions.ps1
Instalación, prueba y desinstalación de un servidor SFTP basado en OpenSSH en Windows


6) Abra la lista de servicios(WIN+R, comando"services.msc") -> Haga doble clic en"OpenSSH SSH Server" → Establezca el tipo de inicio:"Automático", hacer clic en "Ejecutar" → Aceptar.

Instalación, prueba y desinstalación de un servidor SFTP basado en OpenSSH en Windows

Comprobación de la conexión SFTP mediante WinSCP

Descargue y ejecute el cliente gratuito WinSCP.
En la ventana de configuración de la conexión, seleccione el protocolo de transferencia de archivos SFTP, especifique el nombre del servidor y los datos de la cuenta de Windows con la que se está conectando

Instalación, prueba y desinstalación de un servidor SFTP basado en OpenSSH en Windows

Si todo está configurado correctamente, el cliente debería conectarse al servidor SFTP y mostrar una lista de archivos en el directorio raíz del usuario (el directorio por defecto con el perfil del usuario).
Utilizando la conocida interfaz del gestor de archivos, los archivos pueden copiarse de forma segura entre el servidor y el cliente. La transferencia de archivos se realizará a través del protocolo seguro SFTP.

Instalación, prueba y desinstalación de un servidor SFTP basado en OpenSSH en Windows

Desinstalación del servicio Win32 OpenSSH

Para eliminar correctamente el servicio Win32 OpenSSH del sistema

1) Inicie"PowerShell" como Administrador:
Inicio, escriba"PowerShell"→ Haga clic con el botón derecho en "PowerShell" → Ejecutar como Administrador.

Instalación, prueba y desinstalación de un servidor SFTP basado en OpenSSH en Windows

2) Navegue hasta el directorio de OpenSSH, en este ejemplo: "C:\Windows\OpenSSH-Win64"

cd C:\Windows\OpenSSH-Win64

3) Detenga el servicio SSHD:

Stop-Service sshd

4) Desinstala el servicio OpenSSD:

.\uninstall-sshd.ps1
Instalación, prueba y desinstalación de un servidor SFTP basado en OpenSSH en Windows

Problemas con la configuración de OpenSSH en Windows y cómo resolverlos

La configuración de OpenSSH en Windows puede ser un poco complicada, especialmente después de las actualizaciones de Windows lanzadas posterior a octubre de 2024, ya que estas pueden afectar el funcionamiento de OpenSSH. Si encuentras problemas con OpenSSH, como el error 1067 o la imposibilidad de conectarte, instala la actualización de Windows KB5052093 (febrero de 2025). Esta actualización incluye correcciones para los problemas causados por las actualizaciones de octubre de 2024. Verifica su disponibilidad en "Configuración" → "Actualización y seguridad" → "Windows Update" (incluyendo las actualizaciones opcionales). Antes de la instalación, crea un punto de restauración del sistema por si surgen problemas inesperados. Además, para resolver la mayoría de los problemas, utiliza las soluciones de la siguiente tabla.

Problema Causa Solución
El servicio no se inicia (error 1067) Cambio en los permisos de acceso a C:\ProgramData\ssh\logs Dejar solo SYSTEM y Administradores con acceso completo
No se puede conectar El cortafuegos bloquea el puerto 22 Agregar una regla en el cortafuegos para el puerto 22
Errores de autenticación Credenciales incorrectas o configuraciones de claves Verificar las credenciales, agregar PubkeyAcceptedAlgorithms +ssh-rsa en sshd_config
El servicio está en estado "installpending" Instalación incompleta Reinstalar OpenSSH, eliminar la carpeta C:\Windows\System32\OpenSSH
Problemas con la conexión externa El puerto 22 está bloqueado por el enrutador Configurar el reenvío de puertos para el puerto 22
Sesiones SSH congeladas Errores en OpenSSH o en la configuración del cliente Actualizar OpenSSH, verificar la configuración del cliente