El cliente SSH (ssh) utiliza el fichero de configuración:
y demás, el fichero:
si es que existe. Los parámetros especificados en él prevalecen sobre el fichero
ssh_config. La información completa sobre este fichero puede obtenerse mediante man
ssh_config.
Veámos las principales opciones que podemos configurar:
-
Host:
- Especifica el host al que se aplican los parámetros que aparecen a
continuación. Un “*” (que es el valor por defecto) referencia a todos los hosts.
Nótese que el los sistemas en los que comparte el directorio “/etc” esto puede
ser muy útil.
-
ForwardAgent:
- Indica si la conexión con el agente de autentificación (si es que
existe) será redirigido a la máquina remota. Por defecto, no.
-
ForwardX11:
- Se utiliza para hacer que las conexiones X11 sean automáticamente
redirigidas sobre el canal seguro (utilizando la variable de entorno DISPLAY).
Por defecto es que no.
-
ForwardX11Trusted:
- Especifica si el cliente X11 tendrá acceso sin restricciones al
servidor. Por defecto es que sí tendrá acceso total.
-
RhostsRSAAuthentication:
- Especifica si usar el fichero rhosts con RSA (ver
configuración del servidor). Por defecto, no.
-
RSAAuthentication:
- Especifica si usar RSA authentication (ver configuración del
servidor). Por defecto, sí.
-
PasswordAuthentication:
- Indica si usar autentificación basada en password. Por
defecto, sí.
-
HostbasedAuthentication:
- Especifica si usar la autentificación basada en
rhosts con la autentificación de clave pública. Por defecto, no.
-
BatchMode:
- Permite deshabilitar la pregunta sobre el password. Por defecto, no.
-
CheckHostIP:
- Por defecto está habilitada. Si se deshabilita el cliente SSH no
comprobará si el servidor figura en el fichero /etc/ssh/ssh_known_hosts.
Esto permite detectar el DNS spoofing (el que alguien inserte en el DNS una
IP falsa para un host).
-
AddressFamily:
- Tipos de direcciones IP aceptadas. Por defecto any.
-
ConnectTimeout:
- El TCP utiliza un temporizador para mantener activa la conexión
enviando un paquete de datos vacío, aunque no exista actividad. Con esta
opción hacemos que sea el SSH el que se encarge de este proceso, en lugar
del TCP. Un valor a 0 indica que esta opción seguirá siendo controlada por el
TCP.
-
StrictHostKeyChecking:
- Si este flag se activa a yes, el cliente SSH no añadirá el
key host al fichero /.ssh/known_hosts, y por tanto, recharará la conexión
con aquellos hosts que hallan cambiado su host key (por ejemplo, porque han
reinstalado el sistema operativo).
-
IdentityFile:
- Espeficica el fichero con el identificador DSA. En la versión 1 del
protocolo apunta al fichero /.ssh/identity. En la versión 2 puede apuntar
al fichero /.ssh/id_rsa and /.ssh/id_dsa, dependiendo del algoritmo
de cifrado usado.
-
Port:
- Puerto donde espera encontrar al servidor. 22, por defecto.
-
Protocol:
- Versión del protocolo. 2, por defecto.
-
Cipher:
- Especifica el cifrador en la versión 1 del protocolo. Por defecto, 3des.
-
Ciphers:
- Cifradores para la versión 2, por orden de preferencia. Por defecto, aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,arcfour,aes192-cbc,aes2
56-cbc.
-
EscapeChar:
- Por defecto vale el carácter ~ (<Alt Gr> + <4>) y se utiliza para
realizar acciones como terminar la conexión (~.), enviar un BREAK al sistema
remoto (~B), acceder al interprete de comandos del cliente (~C), mostrar las
conexiones redirigidas (~#), etc.
-
Tunnel:
- Esta opción por defecto vale no y se utiliza para evitar tener que utilizar la
capa de red del TCP/IP. Los otros posibles valores son: yes, point-to-point
y ethernet.
-
TunnelDevice:
- Selecciona el interface de red sobre el que realizar el tunneling. Por
defecto, any:any.
-
PermitLocalCommand:
- Controla la posibilidad de ejecutar comandos en la máquina
local (no en la remota) usando la secuencia de escape C. Por defecto, no.
-
SendEnv:
- Sirve para especificar el contenido de una variable de entorno
(generalmente LANG que controla el lenguaje utilizado en el shell).
-
HashKnownHosts:
- Se usa para aplicar un hashing sobre los nombres de host y
direcciones que se especifican en /.ssh/known_hosts. No, por defecto.
-
GSSAPIAuthentication:
- Permitir autentificación GSSAPI. Por defecto, no.