Autenticando SSH mediante clave pública/privada 1


Muchas veces es necesario planificar accesos con ssh, por ejemplo para sincronizaciones de sistemas de ficheros, y es muy incomodo, y poco seguro, tener que incluir el usuario/clave de conexión. SSH ofrece un sistema de autenticación basado en un sistema de clave pública y privada para resolver esto. A pesar de que es un tema que está mas que documentado nunca lo encuentro cuando lo necesito, así que aquí va mi chuletilla.

 

Partimos de dos servidores linux: Cliente ssh y Servidor ssh. Asumo que las configuraciones son las adecuadas, actualmente la configuración por defecto está preparada para la autenticación por clave pública/privada. En cualquier caso los ficheros de configuración se pueden encontrar en:

  • Configuración cliente ssh: /etc/ssh/ssh_config
  • Configuración servidro ssh: /etc/ssh/sshd_config

Acciones a realizar en el cliente SSH

Vamos a generar los ficheros que contienen las claves.

 

 

~$  ssh-keygen -t dsa 

Se puede generar también una clave rsa con la opción "-t rsa". Este comando nos solicita donde dejar el juego de ficheros (por defecto $HOME/.ssh) y una clave para los ficheros generados. Si dejamos la clave en blanco en el momento de conexión no se solicitará clave y si incluimos una clave se nos pedirá en el momento de conexión (la del fichero, no la del usuario).

Se generan dos ficheros en $HOME/.ssh: id_dsa (la clave privada) e id_dsa.pub (con la clave pública). Ahora tenemos que trasladar el fichero de clave pública al servidor, por ejemplo con:

~$  sftp usuario@servidor_ssh
sftp: put id_dsa.pub /home_usuario_servidor/.ssh/

Y eventualmente almacenar la clave del fichero en el almacén de claves de ssh para no tener que teclearlas. Se hace con ssh-add.

Pues ya hemos acabado el trabajo en la parte cliente.

Acciones a realizar en el servidor SSH
En el servidor lo que habría que hacer es incluir la clave pública dentro de las claves autorizadas para acceder:

~$  cat $HOME/.ssh/id_dsa.pub >> $HOME/.ssh/authorized_keys

Pues ya debería funcionar. Para encontrar información con mas detalle basta buscar en google. Dejo aquí el post que he usado de referencia.

Compartir
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  

Dejar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Una idea sobre “Autenticando SSH mediante clave pública/privada