Administrar una Raspberry Pi con SSH

Para los que como yo queráis tener acceso a su Raspberry Pi sin necesidad de conectarle un teclado y un monitor, accediendo a ella desde cualquier ordenador a la red,   os recomiendo acceder a ella a través de  SSH, un sistema similar al conocido Telnet pero con algunas mejoras además de ser mucho más seguro.

Para iniciar una sesión SSH la sintaxis es la siguiente usuario@direcciónip, un ejemplo podría ser pi@10.0.0.4

Normalmente se accede a través de SSH usando el usuario root (administrador) opción que no está disponible por defecto en Raspbian, aunque a continuación indicaré como habilitarlo.

Conectaremos la Raspberry un teclado y una pantalla de ordenador o TV como si de cualquier ordenador personal se tratara.

La conectaremos a la corriente y se iniciará el sistema, solicitándonos a continuación un usuario y un password que por defecto son pi y raspberry respectivamente.

Nos aparecerá algo parecido a lo siguiente:

pi@raspberrypi:~# 

Lo primero que haremos será cambiar el password del root:

sudo passwd root

Tras lo que  se nos pedirá dos veces seguidas el nuevo password.

Seguidamente cambiaremos la configuración para poder  acceder como root desde SSH, para lo que en primer lugar tendremos que ir a raspiconfig y habilitar el acceso con SSH

sudo raspi-config

Iremos a Interfacing Options, seleccionaremos SSH e indicaremos   que si queremos activar el servidor de SSH

Captura de pantalla 2021-03-28 a las 16.34.13

Una vez hecho esto le daremos a la opción finalizar para salir y guardar los cambios.

El siguiente paso es editar el fichero sshd_config:

sudo nano /etc/ssh/sshd_config

Una vez se abra el editor, buscaremos el apartado PermitRootLogin y a continuación pondremos yes (borrando without-password)

Grabaremos los cambios con Ctrl + X, contestaremos yes y pulsaremos Enter.

A continuación editaremos el fichero de configuración de nuestros interfaces de red, y añadiremos la IP que queremos asignar a nuestra raspberry, y el resto de parámetros de red (los datos siguientes corresponderían a una IP 10.0.0.47, máscara 255.255.255.0 y una red que va desde 10.0.0.1 a 10.0.0.255:

sudo nano /etc/network/interfaces

Y al abrirse el fichero informaremos al final lo siguiente:

auto eth0
iface eth0 inet static
address 10.0.0.47
mask 255.255.255.0
network 10.0.0.0

Depende de la configuración de cada uno, pero para la mayoría de los casos recomiendo poner # delante del resto de parámetros de configuración del fichero, como forma de evitar que interfieran con nuestra configuración, y a la vez dejarlos allí por si un día queremos volver a la configuración original.

Con esto quedará todo hecho, bastará con forzar el reinicio del sistema para que los cambios tengan efecto:

sudo reboot

A partir de ese momento, desde cualquier ordenador conectado a la misma red podremos acceder a la Raspberry utilizando una aplicación de Terminal como la que por ejemplo hay disponible en OSX.

Siguiendo el ejemplo, y desde la aplicación de Terminal teclearemos lo siguiente:

ssh root@10.0.0.47

Tras lo que nos aparecerá algo similar a lo siguiente:

root@10.0.0.47’s password:

Que confirmará que estamos accediendo, bastando con informar el password, si lo informamos correctamente aparecerá algo similar a lo siguiente:

Last login: Sat Feb  6 12:10:02 on ttys002
iMac-de-Albir:~ SANTI$ ssh pi@10.0.0.47
root@10.0.0.47’s password: 
The programs included with the Debian GNU/Linux system are free software
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Sat Feb  6 13:21:03 2016 from 10.0.0.204

Si en algún momento olvidáis  la IP de la Raspberry, o habéis optado por no asignarle una Ip fija sino asignada automáticamente por DHCP y necesitáis acceder con SSH, hay herramientas que os ayudarán a saber su IP de una manera rápida y fácil …  si usáis OSX os recomiendo IP Scanner , si usáis un Iphone/Ipad os recomiendo la aplicación Fing.