DigitalOcean tiene un artículo muy completo https://www.digitalocean.com/community/tutorials/how-to-configure-ssh-key-based-authentication-on-a-linux-server En resumen, el la PC hacia la que se realiza la conexión: * Si no hay un servidor ssh sudo apt install openssh-server * verificar que esté corriendo sudo systemctl status ssh * verificar que no esté el firewall al medio sudo ufw status * si estuviera activo ufw sudo ufw allow ssh * crear las claves ssh-keygen sin passphrase ===== ahora sucede la magia ===== * Desde la PC que se usa para conectar hacia el host remoto, copiar la clave pública al otro host. Por ejemplo, desde mi PC del trabajo y para conectar al server01, usaría ''ssh-copy-id username@server01'' ssh-copy-id username@remote_host ===== Desde Powershell ===== En PowerShell puedes lograr algo similar al comando `ssh-copy-id` para agregar tu laptop con Windows 10 a la lista de hosts que pueden conectarse con claves SSH en tu servidor Linux. Puedes hacerlo manualmente copiando la clave pública desde tu laptop a tu servidor Linux. Aquí hay una manera de hacerlo en PowerShell: - Primero, asegúrate de tener una clave SSH generada en tu laptop. Si no la tienes, puedes generarla con el comando `ssh-keygen` (sin passphrase). - Luego, necesitas copiar el contenido de tu clave pública (`id_rsa.pub`) en tu servidor Linux. Puedes hacerlo con PowerShell utilizando algo como esto: cat ~/.ssh/id_rsa.pub | ssh user@server01 "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys" Esto copiará el contenido de tu clave pública desde tu laptop al archivo `authorized_keys` en el directorio `.ssh` en tu servidor Linux. Solo asegúrate de reemplazar `user@server01` con tu usuario y la dirección del servidor Linux.