Qué es SSH y qué pasa exactamente cuando te conectás

Publicado el 2026-09-12 por frfrand

El par de claves explicado sin misterio, qué es el desafío que firma tu máquina, por qué el servidor puede tener tu clave pública sin riesgo y qué significa ese aviso gigante de host changed.

Qué es SSH y qué pasa exactamente cuando te conectás

SSH es el protocolo con el que entrás a un servidor. Eso lo sabe todo el mundo. Lo que suele quedar borroso es qué ocurre en el segundo que va entre que apretás Enter y aparece el prompt.

Vale la pena, porque de ahí salen las respuestas a casi todas las dudas de seguridad que aparecen después.

El par de claves, y cuál se comparte

Cuando generás una clave, se crean dos archivos:

~/.ssh/id_ed25519 la privada ~/.ssh/id_ed25519.pub la pública

La privada vive en tu computadora y no sale de ahí. Nunca. No se manda por correo, no se pega en un chat, no se sube a un repositorio.

La pública sí se reparte: va a cada servidor donde quieras entrar, dentro del archivo ~/.ssh/authorized_keys.

La confusión más común es pensar que entregar la pública es riesgoso. No lo es, y no por convención sino por matemática: a partir de la clave pública no se puede deducir la privada. Por eso un servidor puede tener las claves públicas de diez personas tranquilamente.

Regla práctica: si alguna vez copiaste a algún lado el archivo sin el .pub, generá un par nuevo hoy.

Qué pasa cuando te conectás

  1. Tu cliente se conecta y las dos partes acuerdan un cifrado para la sesión.
  2. El servidor manda un desafío: un dato aleatorio, distinto cada vez.
  3. Tu máquina lo firma con la clave privada y devuelve la firma.
  4. El servidor verifica esa firma con la clave pública que ya tenía. Si cierra, entrás.

Lo importante de este baile: tu clave privada nunca viaja, y el desafío cambia en cada conexión, así que capturar el tráfico no sirve para volver a entrar después.

Con contraseña, en cambio, el secreto sí viaja (cifrado, pero viaja) y el servidor lo recibe. Un servidor comprometido se queda con tu contraseña. Con claves, se queda con una firma que ya no sirve para nada.

Ese aviso gigante que asusta

La primera vez que entrás a un servidor, SSH guarda su huella en ~/.ssh/known_hosts. Si esa huella cambia, aparece el cartel de REMOTE HOST IDENTIFICATION HAS CHANGED.

Hay exactamente dos explicaciones:

  • Reinstalaron el servidor o le regeneraron las claves. Pasa seguido y es inofensivo.
  • Alguien se metió en el medio y está haciéndose pasar por el servidor.

El reflejo habitual es borrar la línea del known_hosts y seguir. Está bien hacerlo después de confirmar el primer caso, no antes. Son diez segundos de preguntar.

Tres cosas que valen oro

ssh-copy-id instala tu clave pública en el servidor sin editar archivos a mano:

ssh-copy-id deploy@miservidor.com

El archivo ~/.ssh/config te evita recordar usuario, puerto y clave:

Host prod HostName miservidor.com User deploy Port 2222 IdentityFile ~/.ssh/id_ed25519

Desde ahí, ssh prod. Y lo mejor: scp, rsync, git y los editores leen ese mismo archivo.

Poné una passphrase a la clave privada. Si te roban la laptop, la clave sola no alcanza. Para no escribirla cada vez, está el agente: ssh-add la guarda mientras dure tu sesión.

Y el permiso que rompe todo

chmod 700 ~/.ssh chmod 600 ~/.ssh/id_ed25519 chmod 600 ~/.ssh/authorized_keys

SSH se niega a usar una clave privada que otros usuarios puedan leer, y hace bien. Si un día tu clave "deja de funcionar" sin que hayas tocado nada, mirá los permisos: casi siempre es eso, después de copiar la carpeta de un lado a otro.

Qué es SSH y qué pasa exactamente cuando te conectás
Qué es SSH y qué pasa exactamente cuando te conectás
  • SSH
  • seguridad
  • Linux
  • cifrado
  • acceso remoto

Seguir leyendo

Todos los artículos · Planes de VPS