SSH - Acceso sin password en Linux
Introducción
En este ocasión se trae una guía rápida de como generar una conexión a un servidor SSH evitando que en cada sesión nos solicite un usuario y password.
Esta pequeña guía se enfoca en el caso de practicidad al momento genera conexiones a un servidor utilizando llaves publicas y privadas. Si bien existen gestores de conexiones como Remmina en Linux o MobaXterm en Windows y otros mas, es posible administrar nuestras conexiones si tener herramientas adicionales, este método te permite generar tu archivo de configuración a tu gusto.
El escenario a mostrar en esta guía sera:
- SSH Cliente: Tendrá la dirección IP 192.168.1.12
- SSH Server: Tendrá la dirección IP 192.168.1.11
Equipo cliente
Paso 1. Generar llaves de acceso
En el equipo cliente se debe generar las llaves publicas y privadas las cuales se usaran para acceder al servicio remoto. Para lo anterior, en una terminal, ejecutar el siguiente comando:
ssh-keygen -t rsa
La generación solicitará una password, si no se quiere estar proporcionando dicha password solo es necesario presionar "Enter" a las preguntas. Esto ha de generar 2 archivos, la llave publica (id_rsa.pub) y la llave privada (id_rsa)
Paso 2. Copiar tu llave publica al servidor remoto
Una vez generada las llaves, es necesario copiar la llave pública al servidor remoto al que se desea conectar sin usar password. Para esto la herramienta de SSH trae un comando que permite hacer el envió de forma segura. Hay que ejecutar:
ssh-copy-id usuario@192.168.1.11
Lo anterior solicitará una conexión al servidor SSH remoto con el usuario que utilizamos para conectarnos al servidor. Solicitará la contraseña de ese usuario, si todo bien realizará la copia de la llave pública de forma automática
Con lo anterior es necesario para realizar la conexión sin necesitar escribir password. Para esto se puede ejecutar la conexión de la siguiente forma:
ssh usuario@192.168.1.11
Y el cliente SSH realizara la validación de las llaves y el intercambio de autenticación, permitiendo acceder de forma directa al servidor remoto.
Si queremos hacer mas como nuestro acceso, podemos editar nuestro archivo config del cliente SSH y definir parámetros de conexión al servidor remoto. De ese modo nuestro comando de conexión seria mas corto
Paso 3. Configurar sesiones
Para tener una mejor comodidad al momento de ingresar a nuestros equipos, y evitar escribir tanto, podemos editar el archivo config de ssh, definiendo los parámetros de nuestros equipos. Para esto editamos el archivo ~/.ssh/config
Definimos los configuración de nuestro ejemplo, quedando:
Host Remoto
Hostname 192.168.1.11
User usuario
IdentityFile ~/.ssh/id_rsa
ServerAliveInternal 60
ServerAliveCountMax 3
Guardamos el archivo y podemos probar la conexión ejecutando desde una terminal:
ssh Remoto
Con esto debería ser suficiente para generar la sesión remota.
Esperando sea de ayuda para mas de alguno, nos leemos en otra publicación.
Comentarios
Publicar un comentario
Son bienvenidos tus comentarios, solo se respetuoso. Saludos