SSH conexión por certificado
En el anterior articulo montaba una unidad por ssh de un servidor a otro para presenta información en un FTP, la idea es que una RaspBerry deje un log de ping para ver los cortes de una red en mi servidor ssh
El problema es que no quiero poner usuario y contraseña en cada inicio de la rasp, por ello hacemos la conexion SSH por certificados
Escenario:
Cliente Raspberry con Raspbian
Servidor Centos7
En la maquina cliente:
lanzamos el comando
ssh-keygen
(Como vemos trabajaremos en /root/.ssh/) con ficheros id_rsa (si no cambiamos el nombre) pulsamos enter
Si queremos una conexión segura pondríamos una contraseña extra con el certificado y en cada conexión utilizaría el certificado y la contraseña, (en el servidor destino tendriamos que modificar la configuración ssh para deshabilitar la contraseña «normal») pero como mi objetivo es no usar la contraseña para realizar ejecuciones por scripts yo lo dejo en blanco.
Una vez generado esto ya tendremos clave publica (nombre.pub) y privada
Enviando clave publica a servidor destino
scp ./nombre.pub root@ipServidorRemoto:/rutaServerRemoto
ejemplo:
scp ./id_rsa.pub root@80.124.22.999:/root
Entramos en el servidor externo
ssh root@ipservidorremoto
password actual
copiamos la clave que dejamos en /root en el dichero de .ssh/authorized_keys
cat nombre.pub >> .ssh/authorized_keys
Ya esta!
si todo va bien cuando realicemos en el cliente ssh root@ipservidorremoto tendríamos que acceder directamente.
en la raspberry no lo necesite pero según leo en algunas ocasiones se tendrá que añadir en el cliente la clave
ssh-add ~/.ssh/nombrecertificadogenerado
saludos Monsters!