Asegurar conexión SSH de una raspberrry pi

(aunque aplica para cualquier servidora)

┈┈┈╱▏┈┈┈┈┈╱▔▔▔▔╲┈┈┈┈ ┈┈┈▏▏┈┈┈┈┈▏╲▕▋▕▋▏┈┈┈ ┈┈┈╲╲┈┈┈┈┈▏┈▏┈▔▔▔▆┈┈ ┈┈┈┈╲▔▔▔▔▔╲╱┈╰┳┳┳╯┈┈ ┈╱╲╱╲▏┈┈┈┈┈┈▕▔╰━╯┈┈┈ ┈▔╲╲╱╱▔╱▔▔╲╲╲╲┈┈┈┈┈┈ ┈┈┈╲╱╲╱┈┈┈┈╲╲▂╲▂┈┈┈┈ ┈┈┈┈┈┈┈┈┈┈┈┈╲╱╲╱┈┈┈┈

Una vez conectada la raspberry pi a nuestra red podemos buscarla con el comando:

https://www.kali.org/tools/netdiscover/

sudo netdiscover

lo que mostrara en nuestro segmento de red la IP de nuestro dispositivo:

   IP             Count    MAC Vendor / Hostname
                                                                                
 192.168.0.2       1      Raspberry Pi Foundation   

entonces procedemos con el siguiente comando para conectarnos:

 
ssh cacu@192.168.0.2 -o PasswordAuthentication=yes

aparecerá este mensaje de advertencia:

The authenticity of host '192.168.0.2 (192.168.0.2)' can't be established.
ECDSA key fingerprint is SHA256:xxxxxx.
Are you sure you want to continue connecting (yes/no/[fingerprint])?

ponemos nuestra contraseña del usuario y ya estamos dentro.

pero es mas bacán accesar via llave ssh por eso vamos a agregar nuestra llave publica a la raspberrypi:

ssh-copy-id -i id_rsa2.pub cacu@192.168.0.2

lo que arroja los siguientes datos:

/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "id_rsa2.pub"
/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
cacu@192.168.0.2's password: 

donde ponemos nuestra contraseña para confirmar la adición de la llave.

y ahora a probar la nueva conexión via:

ssh cacu@192.168.0.2

Modificar el archivo /etc/ssh/sshd_config

Para asegurar nuestra conexión ssh para para que no entren con root, sean solo 3 intentos en la contraseña, que solo acceda nuestro usuario (y a blue demon por si me pasa algo) y otro puerto que no sea el por defecto:

sudo vim /etc/ssh/sshd_config

donde modificaremos estos datos:

Port 22445
PermitRootLogin no
LoginGraceTime 30
MaxAuthTries 3
MaxStartups 3
AllowUsers cacu bluedemon

finalmente probamos el acceso con puerto cambiado:

ssh cacu@192.168.0.2 -p 22445