• Saltar a la navegación principal
  • Saltar al contenido principal
  • Saltar a la barra lateral principal

Joan Escorihuela

  • Inicio
  • Contacto

1 febrero, 2019 by Joan 4 comentarios

Configurar el servidor SSH para el acceso con llave pública.

Uno de los primeros pasos, si no el más importante, al publicar un SSH a la red es desactivar el acceso mediante root y contraseña, aunque no existe la seguridad garantizada, esto nos puede ayudar a no ser susceptibles de un ataque por fuerza bruta para establecer una conexión con nuestro SSH.

Esto va a ser un pequeño tutorial para configurar el acceso a un servidor SSH unicamente con una llave pública, asignando a el una llave privada RSA.

En primer lugar, debemos generar una llave RSA, desde Linux, con el comando ssh-keygen -t rsa

joan@earth:~$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/joan/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in ssh-servidor.
Your public key has been saved in ssh-servidor.pub.
The key fingerprint is:
SHA256:FGWEryQy2B9V539BdKy80AFNxO/+Cp8sMW9IaKzllp0 joan@earth
The key's randomart image is:
+---[RSA 2048]----+
|        .== o*++.|
|        oo o  = o|
|   o   ...  .o = |
|  . + o.. . ..+ o|
|     + +So . ..o.|
|      . . = + ...|
|         = +.* . |
|        . + E+o..|
|         .   o=.o|
+----[SHA256]-----+

Esto nos genera una llave privada (id_rsa) y otra pública (id_rsa.pub) en el directorio /home/USUARIO/.ssh/

Ahora debemos subir nuestra llave pública al servidor, con el comando ssh-copy-id

joan@earth:~$ ssh-copy-id root@12.34.56.78
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
root@12.34.56.78's password: 

Number of key(s) added: 1

Now try logging into the machine, with:   "ssh 'root@12.34.56.78'"
and check to make sure that only the key(s) you wanted were added.

Desde este momento ya podemos acceder a nuestro servidor usando la llave pública.

joan@earth:~$ ssh root@12.34.56.78
Last login: Fri Feb  1 09:23:38 2019 from 87.65.43.21
[root@servidor ~]# 

Aunque aún se puede acceder mediante la contraseña, por lo que debemos desactivar la posibilidad de autenticación en el SSH mediante contraseña, para ello tenemos que editar el fichero /etc/ssh/sshd_config

Reemplazar en el fichero /etc/ssh/sshd_config

PasswordAuthentication yes

Por:

PasswordAuthentication no

Por último reiniciamos el servidor SSH para que este cambio surja efecto:

sudo systemctl reload sshd.service

Se recomienda desactivar el acceso root al SSH y hacerlo accesible solo para un usuario sin privilegios y que pertenezca al grupo de sudoers.

Publicado en: Linux, Seguridad

Interacciones con los lectores

Comentarios

  1. juan carlos dice

    20 febrero, 2019 a las 11:21 am

    Hola,
    Una aclaracion , ssh-copy-id copia la clave publica en .authorized_keys. La clave privada no puede salir de tu ordenador.
    Saludos.

    Responder
    • Joan dice

      22 febrero, 2019 a las 11:13 am

      Hola Juan, he revisado lo que me comentas en mi guía por si hubiese algún error y no encuentro en que punto se manda la clave privada, con ssh-copy-id se envía solo la clave pública a la maquina destino: https://www.ssh.com/ssh/copy-id#sec-Copy-the-key-to-a-server Saludos.

      Responder
      • tulechero dice

        25 junio, 2021 a las 9:19 am

        Indicas esto:
        Ahora debemos subir nuestra llave privada al servidor, con el comando ssh-copy-id

        Lo que sube como indica Juan, es la public.

      • Joan dice

        3 abril, 2022 a las 6:51 am

        ¡Vaya, no me di cuenta del error! En el texto puse «subir llave privada» y en el lab, subía la pública (que es lo correcto). ¡Gracias!

Deja una respuesta Cancelar la respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

sidebar

sidebar-alt

Joan Escorihuela ·
  • Política de cookies
  • Aviso legal
  • Contacto