— Comentarios, estilo y sintaxis correcta en una sola guía
Configurar bien el archivo ~/.ssh/config
te ahorra escribir direcciones IP y puertos cada vez que haces ssh
— pero la sintaxis es estricta. En esta entrada verás:
- Cómo documentar tu configuración con comentarios.
- Por qué cada directiva debe ir en su propia línea (y qué pasa si no lo haces).
- Atajos de Visual Studio Code para que el proceso sea cómodo.
1. Comentarios: solo con #
, una línea a la vez
En OpenSSH (cliente), los comentarios son de una sola línea y empiezan con #
:
# Servidor de producción
Host servidor-produccion
HostName 203.0.113.15
User deploy
# Puerto no estándar
Port 2222
No existe comentario multilínea. Si quieres “bloquear” varias líneas, repite #
en cada una o selecciona el bloque y usa el atajo de VS Code (más abajo).
2. La regla de oro: una directiva por línea
Cada línea comienza con una palabra clave que OpenSSH usa para saber qué está leyendo:
Palabra | Significado | Ejemplos de argumentos |
---|---|---|
Host | Abre un bloque y define patrones de nombres de host | web* , servidor-produccion |
HostName , User , Port , etc. | Opciones que se aplican al bloque Host anterior | 203.0.113.15 , deploy , 2222 |
Si intentas meterlo todo en una sola línea…
Host servidor-produccion HostName 203.0.113.15 User deploy Port 2222
…OpenSSH pensará que has escrito cinco patrones de host (servidor-produccion
, HostName
, 203.0.113.15
, User
, deploy
) y no aplicará HostName
, User
ni Port
. Resultado: te conectarás al host real llamado HostName
, no al que imaginas.
Solución: pon cada directiva en su propia línea, indentando las opciones dentro del bloque:
Host servidor-produccion
HostName 203.0.113.15
User deploy
Port 2222
3. VS Code como editor de ssh config
3.1. Activa el modo de sintaxis
- Abre la paleta (
Ctrl + Shift + P
o⌘ + Shift + P
). - Escribe “Change Language Mode” y selecciona “ssh config” (si no aparece, instala la extensión SSH Config de Microsoft).
Tendrás resaltado de colores, plegado de bloques y validación básica.
3.2. Comentar y descomentar rápido
- Selecciona las líneas →
- Windows/Linux:
Ctrl + /
- macOS:
⌘ + /
- Windows/Linux:
VS Code añadirá o quitará #
al principio de cada línea seleccionada.
4. Buenas prácticas extra
Consejo | Por qué importa |
---|---|
Indentación constante (4 espacios o Tab) | Facilita leer bloques anidados: Match , múltiples Host , etc. |
Agrupa por entorno | Producción, staging y personal en orden lógico. |
Prueba la configuración con ssh -G <alias> | Muestra cómo la interpreta OpenSSH; ideal para cazadores de errores. |
Evita caracteres invisibles | Guarda siempre en UTF-8 sin BOM; algunos editores insertan un BOM que rompe la clave. |
No mezcles mayúsculas | Las keywords son case-insensitive, pero la consistencia ayuda a buscarlas. |
5. Plantilla base para tus hosts
# ────────────────────────────────────────────────────
# 🔒 PRODUCCIÓN
# ────────────────────────────────────────────────────
Host prod
HostName 203.0.113.15
User deploy
Port 2222
IdentityFile ~/.ssh/id_rsa_prod
# ────────────────────────────────────────────────────
# 🛠️ STAGING
# ────────────────────────────────────────────────────
Host staging
HostName 198.51.100.42
User deploy
Port 2200
IdentityFile ~/.ssh/id_rsa_staging
Conclusión
En un archivo SSH Config:
- Comentarios:
#
+ fin de línea. - Directivas: una por línea, nunca encadenadas.
- VS Code: modo “ssh config” +
Ctrl/⌘ + /
para comentar.
Dedicar unos minutos a la sintaxis correcta te evita horas de frustración cuando, en mitad de una emergencia, un simple ssh prod
funciona a la primera.
Configuración y conexiones seguras es la meta.