El sistema de claves pública/privada es mucho más seguro que el uso de contraseñas y además, si quieres, te ahorras la necesidad de recordarlas.

536px-public_key_shared_secret-svg

En esta imagen se puede ver el funcionamiento de los pares de llaves. Si os interesa este tema podéis encontrar más información en Wikipedia.

Requisitos:

  • Tener el paquete “openssh-server” instalado.
  • Tener un usuario con acceso a la terminal y que no sea “root”.
  • Tener el directorio “.ssh” en el “home” de ese usuario.

Generamos el par en la máquina cliente:
$ ssh-keygen -t rsa

Si no queremos que el servidor nos pida contraseña cada vez que iniciamos sesión dejamos en blanco el “passphrase”.

Una vez tengamos las llaves tenemos que copiar la pública al servidor (podemos hacerlo mediante SSH):
$ scp ~/.ssh/llave.pub [email protected]:/home/usuario

Nos conectamos al servidor:
$ ssh [email protected]

Dentro del servidor añadimos la llave pública al archivo de llaves autorizadas:
$ cat ~/llave.pub >> ~/.ssh/authorized_keys
$ cp llave.pub ~/.ssh

Para aceptar conexiones desde cualquier máquina que tenga la llave privada editamos “~/.ssh/authorized_keys” y cambiamos el hostname de la máquina cliente por un “*”.

Para que funcione los directorios y los archivos deben tener unos permisos concretos:
$ sudo chmod 700 ~/.ssh
$ sudo chmod 600 ~/.ssh/authorized_keys

Editamos la configuración del openssh-server:
$ sudo nano /etc/ssh/sshd_config

Las siguientes líneas deben quedar así:
ServerKeyBits 2048
PermitRootLogin no
AuthorizedKeysFile %h/.ssh/authorized_keys
PasswordAuthentication no
UsePAM no

Una vez hecho esto reiniciamos el servicio:
$ sudo service ssh restart

El comando para conectarnos desdel cliente:
$ sudo ssh -i llave [email protected]

Y con esto ya lo tenemos. El servidor no nos pedirá contraseñas para acceder y seguirá siendo seguro.

4
Deja una respuesta

avatar
2 Hilos de comentario
2 Respuestas de hilo
0 Seguidores
 
Comentario más reaccionado
El hilo de comentarios más caliente
2 Autores de comentarios
XaldiksZZAZZBitacoras.com Autores de comentarios recientes
  Suscribirse  
Los más recientes Los más antiguos Más votados
Notificarme las
cr58j3sP2X rF3H44wvB3
Miembro

Excelente tutorial, muy bien explicado, recomendaría agregar al archivo sshd_config las siguientes lineas:

LoginGraceTime 5m
Protocol 2

Personalmente no me gusta dejar una sesión de ssh abierta y sin password aunque sea con clave publica.
Buena publicación.

trackback

Información Bitacoras.com

Valora en Bitacoras.com: El sistema de claves pública/privada es mucho más seguro que el uso de contraseñas y además, si quieres, te ahorras la necesidad de recordarlas. En esta imagen se puede ver el funcionamiento de los pares de llaves. Si os …