SSH RSA PKI – Autenticación SIN CONTRASEÑA entre servidores linux

El método de autentificación por RSA es el que vamos a utilizar para comunicar diferentes maquinas sin necesidad de introducir una contraseña de acceso.

Lo primero es habilitar el uso de esta opción en el servidor ssh al que nos queremos conectar. Para ello modificaremos el fichero de configuración del demonio sshd. El fichero a modificar es “/etc/ssh/sshd_config”. En este fichero buscaremos las siguientes dos líneas y las descomentaremos en caso de que lo estuvieran:

PubkeyAuthentication yes

AuthorizedKeysFile      .ssh/authorized_keys

De no estar comentadas pueden agregarse estas líneas al archivo, que ha de guardarse necesariamente en la ruta anterior.

Una vez habilitadas las opciones nuevas, introducimos el comando de Linux “service sshd restart”, que para y levanta el servicio sshd. Al reiniciarse se aplican los cambios y el demonio sshd adquiere la configuración de “/etc/ssh/sshd_config”.

En el sistema operativo Sun Solaris podemos ver los servicios con “svcs” y para reiniciar el ssh el comando sería “svcadm restart /network/ssh

En el sistema operativo FreeBSD, para reiniciar el servicio ssh hay que ejecutar el archivo “usr/sbin/.sshd”.

Para generar el par de claves en la maquina cliente teclearemos en ambas maquinas:

ssh-keygen -b 1024 -t rsa

Con el modificador –b definimos el tamaño de la clave y con el –t el tipo de clave.

Generating public/private rsa key pair.

Introducimos la ruta para almacenar las claves, dejándolo en blanco, la ruta por defecto:

Enter file in which to save the key (/usuario/.ssh/id_rsa):

Dejamos la contraseña en blanco:

Enter passphrase (empty for no passphrase):

Enter same passphrase again:

Your identification has been saved in /usuario/.ssh/id_rsa.

Your public key has been saved in /usuario/.ssh/id_rsa.pub.

Como nos ha indicado, ha guardado en el home del usuario de la máquina cliente la clave pública en el archivo id_rsa.pub

Ahora, en la máquina del servidor ssh, si es la primera vez que se hace esto, es posible que haya que crear en el home del usuario /home/user el directorio .ssh, que será oculto, y dentro de él el archivo donde ser guardarán las claves authorized_keys.

Ahora hay que enviarle la clave pública generada al servidor ssh. Lo dejamos en el directorio donde están las claves:

scp id_rsa.pub usuario@maquina_servidor:/home/user/.ssh”

En dicho directorio estará id_rsa.pub y authorized_keys.

Teclearemos “cat id_rsa.pub >> authorized_keys” para no eliminar las claves existentes. Ya podemos eliminar id_rsa.pub.

Este proceso permite conectarse mediante sin contraseña, mediante la compartición de clave pública, de un determinado cliente (máquina, usuario) a un servidor ssh (máquina, usuario)

One thought on “SSH RSA PKI – Autenticación SIN CONTRASEÑA entre servidores linux

Deja un comentario

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