Windows tiene un cliente SSH integrado y un servidor SSH que puede usar en Terminal Windows. En este tutorial, aprenderá a configurar un perfil en Terminal Windows que usa SSH. Tenga en cuenta que esta característica está en versión preliminar.
Qué es el SSH
El SSH o Secure Sheel, es un protocolo que permite conectar dos ordenadores, creando la posibilidad de realizar un acceso remoto mediante un canal seguro y con la información cifrada. Además del protocolo, también puede ser el nombre que reciba el programa que lo implemente, y es una función especialmente útil para administradores de sistema.
Se trata de una alternativa a tecnologías como FTP o Telnet, pero que se diferencia por cifrar los datos. También permite copiar datos de forma segura desde un ordenador a un cliente externo que se haya conectado utilizando claves RSA que son más seguras que las contraseñas de inicio de sesión, o simular sesiones FTP cifradas para poder intercambiarlos.
Es un protocolo muy versátil, ya que puedes conectarte al ordenador que configures como servidor tanto desde una red interna como de forma remota. Vamos, que tanto si los dos equipos están compartiendo una misma red, o incluso si están a distancia y en diferentes conexiones, igualmente vas a poder conectarte en uno desde el otro.
Lo que sí debes tener en cuenta es que, para poder utilizar esta conexión, primero vas a tener que configurar un ordenador concreto como servidor SSH. Una vez lo hagas, podrás conectarte desde el resto de dispositivos a este ordenador que haga de servidor.
OpenSSH en Windows 10-11
OpenSSH es la versión de código abierto de las herramientas Secure Shell (SSH) utilizadas por los administradores de Linux y otros sistemas no Windows para la gestión multiplataforma de sistemas remotos. A partir de Windows 10 build 1809 y Windows Server 2019, OpenSSH está disponible como una característica bajo demanda.
SSH se basa en una arquitectura cliente-servidor en la que el sistema en el que trabaja el usuario es el cliente y el sistema remoto que se gestiona es el servidor. OpenSSH incluye una serie de componentes y herramientas diseñados para proporcionar un enfoque seguro y sencillo para la administración remota de sistemas.
Instalar OpenSSH en Windows vía PowerShell
Get-WindowsCapability -Online | Where-Object Name -like 'OpenSSH*'
Instalar
Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0Habilitar
# Start the sshd service
PS C:\Windows\system32> Start-Service sshd
# OPTIONAL but recommended:
PS C:\Windows\system32> Set-Service -Name sshd -StartupType 'Automatic'
# Confirm the Firewall rule is configured. It should be created automatically by setup. Run the following to verify
PS C:\Windows\system32>
if (!(Get-NetFirewallRule -Name "OpenSSH-Server-In-TCP" -ErrorAction SilentlyContinue | Select-Object Name, Enabled)) {
Write-Output "Firewall Rule 'OpenSSH-Server-In-TCP' does not exist, creating it..."
New-NetFirewallRule -Name 'OpenSSH-Server-In-TCP' -DisplayName 'OpenSSH Server (sshd)' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22
} else {
Write-Output "Firewall rule 'OpenSSH-Server-In-TCP' has been created and exists."
}
Firewall rule 'OpenSSH-Server-In-TCP' has been created and exists.
Configurar
Una vez finalizada la instalación, el archivo de configuración de sshd se encuentra en C:\ProgramData\ssh\sshd_config
o C:\Windows\System32\OpenSSH\sshd_config_default
Normalmente utilizamos la autenticación SSH basada en contraseña. Por lo tanto, podríamos configurarlo como
Port 22Crear un usuario:
PasswordAuthentication yes
# Add a new userCambiar la contraseña del usuario de red
PS C:\Windows\system32> net user alex * /ADD
Type a password for the user:
Retype the password to confirm:
The command completed successfully.
PS C:\Windows\system32> net user
User accounts for \\LAPTOP-V8LP6SGQ
-------------------------------------------------------------------------------
Administrator alex DefaultAccount
Guest xxx WDAGUtilityAccount
The command completed successfully.
net user "user name" newpassword123
Cómo configurar SSH en Windows 10
Configurar el SSH en Windows 10 es relativamente sencillo. Primero tienes que activar un ordenador como servidor. Para ello, enciende el PC que vayas a usar como servidor, pulsa Windows + R y escribe services.msc en la ventana que te va aparecer para ejecutar programas.
Se abrirá la ventana de servicios de Windows. En ella, tienes que buscar y hacer click derecho sobre el servicio OpenSSH SSH Server que tienes. En el menú emergente hay dos cosas que puedes hacer. Si simplemente quieres iniciar el servidor SSH pulsa en Iniciar,
pero si quieres que se inicie automáticamente todas las veces que
enciendas el ordenador para no tener que hacerlo manualmente, entra a Propiedades y cambia el tipo de inicio de Manual a Automático.
Una vez hayas iniciado OpenSSH SSH Server, tienes que hacer exactamente lo mismo con OpenSSH Authentication Agent. Este posiblemente te aparezca como Deshabilitado, por lo que tienes que entrar en sus propiedades sí o sí, y elegir el inicio manual para iniciarlo después haciendo click derecho sobre él o el automático para que se inicie luego también cada vez que enciendas Windows.
A continuación, abre el menú de inicio y escribe PowerShell. Cuando salgan los resultados, **tienes que entrar a Windows PowerShell como administrador. Para lo que vamos a hacer no vale el símbolo de sistema, tiene que ser la consola de comandos PowerShell con permisos de administrador.
Una vez dentro de PowerShell como administrador, escribe el comando:
New-NetFirewallRule -Name sshd -DisplayName 'OpenSSH Server (sshd)' -Service sshd -Enabled True -Direction Inbound -Protocol TCP -Action Allow -Profile Domain
Cuando hagas esto, habrás habilitado todo lo necesario y abierto el puerto 22 para poder acceder a este ordenador con un cliente SSH desde fuera de tu red doméstica.
Acceso al cliente SSH de Windows y al servidor SSH
Las compilaciones más recientes de Windows 10 y Windows 11 incluyen un servidor SSH integrado y un cliente basados en OpenSSH, una herramienta de conectividad para el inicio de sesión remoto que usa el protocolo SSH. OpenSSH cifra todo el tráfico entre el cliente y el servidor para eliminar las escuchas, el secuestro de la conexión y otros ataques.
De forma predeterminada, el cliente OpenSSH y el servidor OpenSSH se encuentran en el directorio: C:\Windows\System32\OpenSSH.
También puede comprobar que está presente en la Configuración de
Windows > Sistema > Características opcionales, y luego buscar
"OpenSSH" en sus características agregadas.
Creación de un perfil
Para iniciar una sesión de SSH en el símbolo del sistema, ejecute ssh user@machine
y se le pedirá que escriba su contraseña. Puede crear un perfil de
Terminal Windows que haga esto al inicio si agrega la configuración commandline a un perfil en el archivo settings.json dentro del parámetro list de los objetos de perfil.
{
"name": "user@machine ssh profile",
"commandline": "ssh user@machine"
}
Especificación del directorio inicial
Para especificar el directorio inicial de una sesión de SSH invocada por Terminal Windows, puede usar este comando:
{
"commandline": "ssh -t bob@foo \"cd /data/bob && exec bash -l\""
}
La marca -t fuerza la asignación de pseudo terminal. Se
puede usar para ejecutar programas arbitrarios basados en pantalla en un
equipo remoto, por ejemplo, al implementar servicios de menú. Tendrá
que usar comillas dobles con escape porque los derivados de Bourne Shell
no realizan ningún análisis adicional para una cadena entre comillas
simples.
OpenSSH for Windows has the following commands built in.
sshis the SSH client component that runs on the user's local systemsshdis the SSH server component that must be running on the system being managed remotelyssh-keygengenerates, manages and converts authentication keys for SSHssh-agentstores private keys used for public key authenticationssh-addadds private keys to the list allowed by the serverssh-keyscanaids in collecting the public SSH host keys from hostssftpis the service that provides the Secure File Transfer Protocol, and runs over SSHscpis a file copy utility that runs on SSH
Fuentes:
https://www.xataka.com/basics/ssh-windows-10-que-como-configurarlo
https://learn.microsoft.com/es-es/windows/terminal/tutorials/ssh




No hay comentarios:
Publicar un comentario