*Cube-Host– servicios completos en la nube!!

Conexión a un VPS Linux a través de SSH

Connecting to Linux VPS via SSH

Lo que necesita

  • Dirección IP del VPS, nombre de usuario (normalmente root o un usuario con sudo), puerto SSH (el puerto estándar es 22).
  • Cliente SSH:
    • Windows 10/11: OpenSSH integrado en Windows Terminal / PowerShell / CMD (recomendado) o PuTTY.
    • macOS / Linux: ssh preinstalado en el terminal.

Opción A: conexión rápida con contraseña (Windows/macOS/Linux)

Comando (sustituya user y 1.2.3.4 por sus propios valores):

				
					ssh user@1.2.3.4 -p 22
				
			

Cuando inicie sesión por primera vez, confirme la clave del host (Sí) y, a continuación, introduzca su contraseña.
Las opciones básicas del cliente y de autenticación se describen en el manual de OpenSSH.

Linux VPS

Opción B: protección con clave (recomendada)

Paso 1. Genere un par de claves en su PC

En Windows 10/11, abra PowerShell y ejecute el siguiente comando:

				
					ssh-keygen -t ed25519 -C “my-comment”
# if ed25519 is not available:
# ssh-keygen -t rsa -b 4096 -C “my-comment”
				
			

Las claves se muestran en C:\Users\<Nombre>\.ssh\ (o ~/.ssh en macOS/Linux): privada – sin extensión (debe mantenerse en secreto), pública – .pub (debe copiarse en el servidor).

Linux VPS

Detalles sobre la generación de claves en Windows: Microsoft/phoenixNAP/HowToGeek.

Paso 2. Descargue la clave pública en el servidor

Método 2.1: automático (si el acceso mediante contraseña está disponible):

				
					ssh-copy-id -i ~/.ssh/id_ed25519.pub user@1.2.3.4
				
			

La utilidad añade la clave a ~/.ssh/authorized_keys y define los permisos.

Método 2.2: manualmente (mediante conexión con contraseña):

				
					ssh user@1.2.3.4
mkdir -p ~/.ssh && chmod 700 ~/.ssh
nano ~/.ssh/authorized_keys
# paste the contents of your .pub here, then save
chmod 600 ~/.ssh/authorized_keys
				
			

No se equivoque: solo .pub se envía al servidor; nunca copiamos la clave privada. Permisos .ssh = 700, authorized_keys = 600 (de lo contrario, recibirá el mensaje Permission denied (publickey)).

Linux VPS

Paso 3. Conéctese a la llave.

				
					ssh -i ~/.ssh/id_ed25519 user@1.2.3.4
				
			

Para evitar tener que volver a introducir los parámetros cada vez, añada el perfil a ~/.ssh/config:

				
					Host myvps
    HostName 1.2.3.4
    User user
    Port 22
    IdentityFile ~/.ssh/id_ed25519
				
			

Ahora solo hay que utilizar ssh myvps. Documentación sobre ssh_config (todos los parámetros importantes: host, usuario, puerto, IdentityFile).

Opción C: a través de PuTTY (Windows) si la interfaz gráfica resulta más práctica

  1. Descargar y ejecutar PuTTY → pestaña «Session» → indicar «Host Name» (IP/dominio), «Port=22», «Connection type=SSH» → «Saved Sessions» → «Save» → «Open».
Linux VPS

2. Si se conecta con una clave: PuTTYgen → descargue su clave privada o cree una nueva → guárdela en formato .ppk y, a continuación, en PuTTY: Conexión → SSH → AutenticaciónArchivo de clave privada para la autenticación: seleccione .ppk.

3. (Opcional) Conéctese a la sesión y guarde el perfil para no tener que introducir los parámetros cada vez.

Verificación y configuración básica

Compruebe la disponibilidad del puerto 22 desde su PC:

				
					# Linux/macOS:
nc -vz 1.2.3.4 22
# Windows (PowerShell):
Test-NetConnection 1.2.3.4 -Port 22
				
			

Acceso denegado (clave pública) → Compruebe:

  1. si la clave pública (.pub) se ha transferido al servidor,
  2. los permisos para ~/.ssh (700) y authorized_keys (600),
  3. si IdentityFile coincide localmente.

Mejora de la seguridad del servidor (después de configurar las claves)

Abra /etc/ssh/sshd_config y compruebe (o añada) las líneas, luego reinicie sshd:

				
					# prohibit direct root login (recommended)
PermitRootLogin no
# prohibit passwords, leave only keys
PasswordAuthentication no
PubkeyAuthentication yes
# (optional) non-standard port:
# Port 2222
sudo systemctl restart sshd
				
			

Las directivas y algoritmos importantes compatibles se describen en la página del manual sshd_config/ssh_config.

Copia de archivos

SCP:

				
					scp -P 22 file.zip user@1.2.3.4:/home/user/
				
			

SFTP (interactivo):

				
					sftp -P 22 user@1.2.3.4
				
			

(Ambos métodos están incluidos en el paquete cliente OpenSSH).