PuTTY es una gran interfaz de Windows, sin mencionar la necesidad de un cliente SSH en primer lugar. En Linux, OS X y la mayoría de los demás entornos basados en UNIX, SSH generalmente es puramente línea de comando, pero sigue siendo increíblemente potente.
El cliente SSH le permite almacenar una increíble cantidad de propiedades basadas en un nombre de host dado, incluso valores predeterminados globales, en el archivo del cliente "ssh_config". Este archivo no existe de forma predeterminada (según los comentarios sobre la pregunta), pero debe escribirse en ~/.ssh/config
.
Esa ruta equivale a:,
~
su directorio de inicio, se expande en mi sistema a /Users/jason
.
.ssh
, el punto inicial lo oculta. Si está en la Terminal y en su directorio de inicio, simplemente puede ejecutarlo cd .ssh
e ingresarlo.
config
es el nombre del archivo, es un archivo de texto sin formato con parámetros de configuración.
Uso este archivo para controlar los túneles que siempre uso, la clave privada necesaria para la conexión, el nombre de usuario (si difiere de mi nombre de usuario local), etc.
Vea la página de manual, ya sea a través man ssh_config
de su propia máquina que contendrá la versión más apropiada, o puede verla en línea desde el sitio de OpenBSD .
Algunos contenidos de ejemplo de mi archivo de configuración ssh son:
ControlMaster auto
ControlPath ~/.ssh/sockets/master-%r-%h-%p
VisualHostKey yes
Host serve
Hostname 8.8.8.8
User jason
IdentityFile ~/.ssh/id_rsa
LocalForward 5901 localhost:5901
El espacio en blanco es una preferencia puramente personal, no se requiere, excepto para separar las claves de los valores.
Las primeras tres líneas son propiedades globales, afectan a todas las conexiones SSH. La segunda sección es una configuración específica del host.
La Host
línea especifica la etiqueta de host que usará al invocar ssh
. Ex. ssh serve
. Al ejecutar eso, carga todas las propiedades enumeradas hasta la siguiente Host
línea.
Como serve
no es necesariamente un nombre DNS, especifico el Hostname
que realmente debería conectarse (no, no es realmente mío). User
se explica por sí mismo y solo debe ser explícito, y IdentityFile
es la ruta al archivo de clave privada que usa para conectarse.
Por último, LocalForward
establece una regla de reenvío de puertos que envío a través del túnel SSH.
Las diversas sintaxis están documentadas en la página del manual.
No existe un mecanismo para definir una contraseña de texto sin formato. La entrada de contraseña SIEMPRE es interactiva cuando se configura la conexión SSH. Si desea iniciar sesión automáticamente, configure la Autenticación de clave privada . Almacenar contraseñas de texto plano es estúpido, siempre.
Lo uso con gran efecto. ¿Y la mejor parte? ¡Todas sus configuraciones SSH son increíblemente portátiles, es solo un archivo que debe respaldar / retener y mover de un sistema a otro! No es tan portátil para Windows, pero ¿a quién le gusta lidiar con el registro de todos modos?
ssh_config
(~/.ssh/config
), pero mantendré a raya mi barba y entenderé que editar un archivo de texto plano con un formato definido no es para todos. Le doy mucho crédito a PuTTY por su configuración (y mucho dolor también, lo admito).