SSH con certificados

Apache HTTPHace un tiempo, escribí como acceder de un servidor a otro mediante certificados por SSH, para automatizar tareas que requieran de una conexión SSH entre servidores, evitando así tener que introducir el password. Aquí el post original.

Sin embargo, en ocasiones, el SSH no está configurado para aceptar conexiones con password, y no podemos por lo tanto, usar el comando «ssh-copy-id». Para estas ocasiones, podemos seguir el procedimiento descrito a continuación:

Continuar leyendo «SSH con certificados»

Configurar claves ssh

SSH keyImaginemos que queremos conectar desde un servidor A, usando el usuario «user», con otro servidor B, por ssh, pero sin tener que estar introduciendo el password a cada nueva conexión (por ejemplo, si queremos poder conectar automáticamente por ssh por necesidades de un script en un cron). En este caso, podremos seguir el proceso descrito a continuación:

  • En el servidor A, si «user» no tiene ya una clave ssh creada (se podrá ver si existe en $HOME/.ssh/ un archivo .pub), se podrá generar dicha clave, estando logueados con el usuario «user», ejecutando:

ssh-keygen -t dsa

  • Una vez creada la clave ssh, deberemos ir al servidor B y crear un usuario «user» (en este caso querremos conectar desde A, a user@B). Podemos usar «useradd user» y posteriormente «passwd user» para crear al usuario.
  • Ahora desde A, podremos conectar con B mediante:

ssh user@B

  • De nuevo desde A, podremos copiar la clave pública de user (de A) a la home del usuario user (de B) con el comando:

ssh-copy-id -i ~/.ssh/id_dsa.pub user@B

  • Desde este momento, ya se podrá conectar desde A a user@B sin necesidad de introducir el password del usuario «user» en el servidor B.

Fuentes: