OpenSSHSSHSFTP6 min de lectura

Configurar OpenSSH en Windows Server

Habilitá OpenSSH en Windows Server para acceso SSH y transferencia de archivos por SFTP.


OpenSSH te permite acceder a tu VPS Windows por línea de comandos y transferir archivos por SFTP, sin necesidad de RDP.

Paso 1 — Instalar OpenSSH Server

powershell
# Verificar disponibilidad
Get-WindowsCapability -Online | Where-Object Name -like 'OpenSSH*'

# Instalar servidor
Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0

# Instalar cliente (opcional)
Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0

Paso 2 — Iniciar y habilitar el servicio

powershell
Start-Service sshd
Set-Service -Name sshd -StartupType Automatic

# Verificar
Get-Service sshd

Paso 3 — Configurar firewall

powershell
New-NetFirewallRule -Name "OpenSSH-Server" -DisplayName "OpenSSH Server (sshd)" -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22

Paso 4 — Configurar autenticación por clave

En tu máquina local, copiá tu clave pública:

powershell
# Desde tu máquina local
scp ~/.ssh/id_ed25519.pub Administrator@TU_IP:C:\Users\Administrator\.ssh\authorized_keys

En el servidor, ajustá permisos:

powershell
# Para administradores, la clave va en otro archivo
Copy-Item C:\Users\Administrator\.ssh\authorized_keys C:\ProgramData\ssh\administrators_authorized_keys
icacls C:\ProgramData\ssh\administrators_authorized_keys /inheritance:r /grant "Administrators:F" /grant "SYSTEM:F"

Paso 5 — Configurar sshd_config

Editá C:\ProgramData\ssh\sshd_config:

powershell
notepad C:\ProgramData\ssh\sshd_config

Opciones recomendadas:

terminal
PubkeyAuthentication yes
PasswordAuthentication no
PermitRootLogin no
Subsystem sftp sftp-server.exe

Reiniciá:

powershell
Restart-Service sshd

Paso 6 — Conectarte por SSH

Desde tu máquina local:

bash
ssh Administrator@TU_IP

Paso 7 — Usar SFTP

bash
sftp Administrator@TU_IP
put archivo.txt C:\Users\Administrator\Desktop\
get C:\logs\app.log ./

Cambiar shell por defecto a PowerShell

powershell
New-ItemProperty -Path "HKLM:\SOFTWARE\OpenSSH" -Name DefaultShell -Value "C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" -PropertyType String -Force

OpenSSH en tu VPS Windows de Baires Host te da acceso remoto por terminal sin depender de RDP.


¿Te resultó útil esta guía?