Generar llaves (key) ssh-keygen Gnu/Linux

Hola a todos bueno hoy comento como generar llaves ssh para no estar realizando el ingreso de contraseñas de usuario del servidor y asi tener una capa de seguridad mas por encima de la conexion normal que se realiza por ssh.

pero primero veamos que es ssh ?

sshes ( secure shell ) que seria ( interprete de ordenes o comandos seguro ) esto es lo que significa ssh y tambien ese es su nombre del protocolo .

para que sirve ssh ?

Sirve para las conexiones a servidores privados a través de una puerta trasera (tambien llamada backend) y esto permite manejar por completo el servidor a traves de un interprete de comados.

que puerto usa por defecto ?

el puerto asignado a este protocolo es el 22.

generar llave ssh para acceder a un servidor Unix o Linux mediante los siguientes pasos.

bueno ahora ejecutaremos en una terminal los siguientes comandos.

$ ssh-keygen

bueno una vez ejecutado este comando nos preguntara un nombre para el archivo de la clave que estamos generando, aca pueden darle un nombre, o bien si teclean enter por defecto el nombre del archivo que generar por defecto sera (id_rsa (llave privada)) y tambien (id_rsa.pub(llave publica)) También nos preguntará por una passphrase (clave de acceso o bueno como le diriamo password), para mayor seguridad.

bueno una vez terminado este proceso debemos de copiar la clave que hemos creado en el servidor ssh y bueno para esto copiamos el archivo id_rsa.pub si es que lo dejaron el nombre por defecto al momento de crear el archivo o si no sera el archivo NombreArchivo.pub.

Ahora ejecutamos el siguiente comando para realizar la copia al servidor.

$ scp id_rsa.pub usuario@IPSERVER:/home/<usuario>/.ssh/

una vez realizado este paso, debemos de acceder al servidor para poder crear el archivo en la carpeta con el nombre de authorized_keys y debe de estar creado en la ruta /home/user/.ssh y le agregamos el contenido que esta en el archivo is_rsa.pub con la clave publica al archivo authorized_keys.

o bueno tambien pueden ejecutar estos comandos para realizar dicha tarea.

$ touch authorized_keys

$ cat ir_rsa.pub >> /home/user/.ssh/authorized_keys

La configuración del servidor SSH se puede encontrar en el archivo /etc/ssh/sshd_config. Para deshabilitar el acceso SSH con contraseña hay que añadir la siguiente línea, editando el archivo como root:

PasswordAuthentication no

Dar acceso SSH solo a los usuarios que lo necesiten, y no a todos:

AllowUsers usuario1 usuario2

y bueno con esto acabaríamos de integrar la llave ssh para poder acceder de forma remota, y no así con el password de uno de los usuarios del servidor ssh.