Sistema:
- Instalar el sistema operativo
- Acceso mediante SSH
- Configuración básica
- Usar una IP estática
- Acceder desde Internet
- Instalación de Webmin
- Instalar RPi-Monitor
- Instalar phpSysInfo
Instalar el sistema operativo
Para la Raspberry existe una gran variedad de sistemas operativos. La mayoría de estos sistemas son distintas distribuciones de Linux. En la página web de la Fundación Raspberry Pi hay varias de estas distribuciones disponibles. Por su carácter genérico, la más utilizada (y la recomendada por la Fundación) es Raspberry Pi OS, que está basada en Debian. Descargamos, pues, la última versión y la guardamos en una carpeta de nuestro PC.
Tenemos que descargar también la utilidad con la que crearemos la imagen del sistema operativo en la tarjeta microSD. Para esto disponemos de varias opciones: podemos usar balenaEtcher (disponible para Windows, macOS y Linux), Win32 Disk Imager (sólo para Windows) o la aplicación que ofrece la propia Fundación, llamada Raspberry Pi Imager (para Windows, macOS y Ubuntu). Si vamos a usar esta última, no es necesario descargar antes la imagen del sistema operativo, ya que la aplicación nos ofrece varios para elegir y se ocupa de realizar la descarga.
Nosotros usaremos la aplicación balenaEtcher. El proceso completo, paso a paso, lo haremos del siguiente modo:
- 1.) Descomprimimos el fichero ZIP que contiene la imagen del sistema operativo Raspberry Pi OS, que descargamos antes.
- 2.) Insertamos la tarjeta microSD (es recomendable que sea de 16 GB o más) en el lector de tarjetas de nuestro PC.
- 3.) Arrancamos balenaEtcher como administrador y nos aparecerá esta ventana:
- 4.) En Flash from file seleccionamos la imagen del sistema Raspberry Pi OS que hemos descomprimido en el paso 1.
- 5.) En Select target escogemos la unidad que se corresponda con la tarjeta microSD.
- 6.) Pulsamos en el botón Flash! y empezará el proceso de copia de la imagen del sistema en la tarjeta microSD.
- 7.) Terminado el proceso, cerramos la aplicación.

IMPORTANTE: Antes de extraer el lector de tarjetas del PC, necesitamos hacer algo más. El motivo es que, por razones de seguridad, Raspberry Pi OS trae el servidor SSH deshabilitado por defecto, y la forma más fácil de habilitarlo es crear un fichero vacío llamado simplemente ssh (tal cual, sin extensión alguna) en la partición boot a la que podemos acceder mientras tenemos la tarjeta microSD conectada al PC (ya sea con Windows, Linux o macOS). Es imprescindible hacer esto, antes de pasar al apartado siguiente, para poder acceder mediante SSH a nuestra máquina.
Una vez realizado lo anterior, seguiremos estos pasos para poner en marcha la Raspberry Pi:
- 1.) Extraemos la microSD del lector de tarjetas del PC y la colocamos en la ranura de inserción de la Raspberry.
- 2.) Conectamos un extremo del cable de red en el conector Ethernet de la RasPi y el otro extremo en el router (o en un AP o en un PLC, según el caso).
- 3.) Conectamos el cable de alimentación y encendemos la placa.
Si nuestro router tiene activado el servidor DHCP, este asignará automáticamente una dirección IP a la Raspberry.
Acceso mediante SSH
En lugar de dedicar un monitor, un teclado y un ratón para conectarnos a la Raspberry, vamos a acceder a ella de forma remota mediante el servidor SSH que lleva instalado el sistema operativo Raspberry Pi OS y que habilitamos en el apartado anterior. Esto significa que la manejaremos desde nuestro PC o desde cualquier otra máquina de la red local. La conexión a un servidor SSH se realiza además de forma segura, ya que el tráfico de datos que circula entre el servidor y el cliente va cifrado.
Una vez insertada la tarjeta microSD en la Raspberry, ponemos esta en marcha y ya podremos acceder por SSH. Podemos hacerlo desde una tableta digital o un smartphone Android con la app JuiceSSH, que es un cliente SSH. Con Linux, macOS o Windows, si el acceso lo hacemos mediante la línea de comandos, sólo tendremos que escribir lo siguiente:
ssh -p 22 pi@192.168.1.33
sustituyendo 192.168.1.33 por la IP de la Raspberry en nuestra red local.
Pero en Windows lo más habitual es trabajar desde el escritorio, en cuyo caso es muy recomendable usar el cliente PuTTY, que ofrece este aspecto:

En Host Name escribimos la dirección IP interna de la RasPi, mientras que en Port dejaremos el 22. Si no conocemos aún su dirección IP, podemos usar una utilidad como Netscan o Wireless Network Watcher (para Windows) con el fin de averiguarla. En el caso de Android, la app Fing hará la misma tarea. Con cualquiera de ellas escanearemos el rango de IPs de nuestra red local y veremos cuál le ha asignado el router a la Raspberry.
Ya sólo falta pulsar en el botón Open para realizar la conexión. Se nos pedirá el nombre de usuario, que es pi, y la contraseña, que por defecto es raspberry.
Configuración básica
Una vez que hayamos realizado la conexión mediante SSH, lo primero que haremos será configurar adecuadamente el sistema operativo Raspberry Pi OS que acabamos de instalar. Para ello escribimos
sudo raspi-config
y aparecerá una ventana como la de la figura de abajo para configurar determinados aspectos del sistema:

Las siguientes cinco opciones son quizás las más importantes:
- 1. Change User Password: sirve para cambiar la contraseña del usuario pi, que por defecto es raspberry. Es muy conveniente hacerlo, sobre todo si nos conectamos a la RasPi desde fuera, a través de Internet.
- 3. Boot Options: aquí podemos escoger el modo en que deseamos que arranque el sistema por defecto cuando nos conectemos a la RasPi mediante monitor, teclado y ratón: en modo consola (es decir, en modo texto o línea de comandos) o en modo escritorio (mostrando el sistema gráfico), para lo que seleccionaremos la opción Desktop / CLI y elegiremos el modo que nos interese.
- 4. Localisation Options: nos permite cambiar el idioma del teclado (Change Locale) o la hora local (Change Timezone) .
- 5. Interfacing Options: en este apartado podremos, entre otras cosas, activar el servidor SSH o el servidor VNC, con lo que podremos acceder a la Raspberry desde otro PC, bien sea en modo terminal (SSH) o en modo gráfico (VNC).
- 7. Avanced Options: con Expand Filesystem es posible expandir el sistema de ficheros para que ocupe todo el espacio disponible en la tarjeta microSD.
Normalmente, el sistema realiza esta tarea automáticamente la primera vez que se inicia, pero si por algún motivo no lo hiciera, habría que ejecutar esta opción para poder usar
todo el espacio libre de la tarjeta; de lo contrario, el sistema sólo reconocerá 4 GB en la misma, desperdiciándose el espacio restante.
En Memory Split podemos elegir la cantidad de memoria RAM que el sistema asigna a la GPU (tarjeta gráfica). Por defecto, esta cantidad es de 64 MB. Pero si vamos a instalar la versión Lite de Raspberry Pi OS, que carece de escritorio, podemos disminuirla al mínimo (16 MB) a fin de ganar memoria RAM para uso del sistema operativo.
Para ejecutar la opción seleccionada, pulsamos la tecla del tabulador hasta que quede resaltada la palabra Select y luego pulsamos la tecla Intro.
Otras opciones nos permitirán activar la cámara web (si disponemos de ella), cambiar el nombre de la máquina (hostname), "overclockear" el sistema, etc. Es cuestión de mirar detenidamente todas las posibilidades de configuración que ofrece esta herramiente y activar/modificar aquellas que necesitemos hasta adaptar el sistema a nuestro gusto.
Una vez configuradas las opciones anteriores según las necesidades de cada usuario, es el momento de actualizar la lista de paquetes y la propia distribución Raspberry Pi OS mediante estos dos comandos:
sudo apt update
sudo apt upgrade -y
Ambos comandos deberemos lanzarlos con cierta frecuencia para tener siempre actualizada nuestra distribución, tanto en lo que se refiere a la lista de paquetes como a la corrección de posibles fallos en los mismos.
Actualizar el firmware y el kérnel
Otra cosa que podríamos hacer es aprovechar para actualizar el firmware de la Raspberry Pi. Antes de hacerlo, conviene tener bien puesta la hora local. La actualización se guarda en la tarjeta microSD, por lo que no hay peligro de dañar o romper el equipo. Si algo saliera mal, sólo habría que reinstalar Raspberry Pi OS y volver a configurar de nuevo el sistema. Debemos añadir que este proceso también actualiza al mismo tiempo el kérnel. Para que se lleven a cabo ambas tareas, tan sólo tenemos que ejecutar este comando:
sudo rpi-update
Una vez acabado el proceso de actualización, es necesario reiniciar para que los cambios surtan efecto:
sudo reboot
Ahora podremos comprobar las nuevas versiones del firmware y del kérnel, respectivamente, con estos comandos:
/opt/vc/bin/vcgencmd version
uname -r
Usar una IP estática
Estamos dando por supuesto que la IP local de la Raspberry nos la asignará el router mediante el servidor DHCP que lleva incluido, lo que significa que será una IP dinámica (podrá cambiar cada vez que reiniciemos el router). Sin embargo, para identificarla en la red local de forma inequívoca y, sobre todo, si vamos a instalar aplicaciones que requieran la apertura de puertos y acceso a través de Internet, es imprescindible asignarle una IP estática a la RasPi.
Conexión por cable
En las versiones anteriores del sistema Raspberry Pi OS se utilizaba el fichero /etc/network/interfaces para configurar las distintas interfaces de red. Sin embargo, a partir de la versión Jessie debemos recurrir al fichero /etc/dhcpcd.conf para realizar esta tarea. Así pues, vamos a editar este último archivo:
sudo nano /etc/dhcpcd.conf
Nos desplazamos hasta al final del mismo y ahí realizamos las modificaciones o añadidos necesarios para indicar la IP estática que queramos asignar a la Raspberry, de modo que quede así:
interface eth0
static ip_address=192.168.1.33/24
static routers=192.168.1.1
static domain_name_servers=192.168.1.1
En la primera línea se indica el nombre de la interfaz de red que vamos a configurar (eth0 en este caso, o sea, la interfaz Ethernet por cable); en la segunda es donde pondremos la IP estática propiamente dicha (192.168.1.33 en este ejemplo); en la tercera línea escribimos la IP que corresponde a la puerta de enlace (el router); y en la cuarta pondremos un servidor DNS (aquí hemos indicado que lo tome del propio router, pero podríamos haber puesto la IP del servidor DNS que más nos guste).
Conexión por wifi
Si queremos conectarnos mediante wifi en lugar de hacerlo por cable, en primer lugar accederemos a la configuración del sistema mediante el comando que usamos más arriba:
sudo raspi-config
y entramos en el apartado 4 Localisation Options. Aquí seleccionamos I4 Change Wi-fi Country y elegimos nuestro país (ES Spain en nuestro caso).
A continuación pasamos a configurar la conexión wifi. Para ello, editamos el siguiente fichero:
sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
Al final del mismo añadimos estas líneas:
network={
ssid="SSID"
psk="PASSWORD"
}
Sustituimos SSID por el nombre de nuestra red wifi y PASSWORD por la contraseña que usamos en ella.
Para conectarnos por wifi usando una IP fija (como hicimos por cable), editamos de nuevo el mismo fichero de antes:
sudo nano /etc/dhcpcd.conf
En él sólo habremos de cambiar la primera línea, de manera que quede así:
interface wlan0
static ip_address=192.168.1.33/24
static routers=192.168.1.1
static domain_name_servers=192.168.1.1
Para que funcione todo correctamente, debemos iniciar el adaptador wifi. Como a veces este proceso da problemas si lo hacemos mediante comandos o incluso reiniciando el sistema, lo mejor es apagar y encender de nuevo la Raspberry:
sudo shutdown -h now
Acceder desde Internet
Dado que la mayoría de nosotros no tenemos una IP fija (sino IP dinámica) en nuestra conexión a Internet, para poder acceder desde fuera de nuestra red local a la RasPi, necesitamos crearnos previamente un DDNS (Dynamic DNS) o DNS dinámico, en español, que es una especie de dominio virtual. Podemos crear uno gratuitamente en No-ip, por ejemplo.

Una vez creado desde su web, nos descargamos e instalamos el cliente en la Raspberry. Lo haremos así:
mkdir no-ip
cd no-ip
wget https://www.no-ip.com/client/linux/noip-duc-linux.tar.gz
tar -zxvf noip-duc-linux.tar.gz
cd noip-2.1.9-1 [o el nº de versión que hayamos descargado]
make
sudo make install
Al empezar la instalación nos solicitará nuestros datos de la cuenta de No-ip (email y contraseña), comprobará el dominio dinámico (o DDNS) indicado y nos preguntará el tiempo de actualización del mismo, que por defecto es de 30 minutos.
Para iniciar el servicio debemos escribir lo siguiente:
sudo /usr/local/bin/noip2
Autoarranque de No-ip
Si queremos que No-ip se inicie automáticamente cada vez que encendamos la Raspberry, debemos de hacer varias cosas. Primero creamos el siguiente fichero:
sudo nano /etc/init.d/noip2
Luego insertamos este código en el fichero que acabamos de crear:
#! /bin/bash
### BEGIN INIT INFO
# Provides: Servicio No-IP
# Required-Start: $syslog
# Required-Stop: $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Arranque automatico para No-IP
# Description:
#
### END INIT INFO
sudo /usr/local/bin/noip2
Ahora lo guardamos (Ctrl+o, Intro, Ctrl+x) y le damos permisos de ejecución:
sudo chmod +x /etc/init.d/noip2
Finalmente lo ponemos en la cola de ejecución:
sudo update-rc.d noip2 defaults
A partir de este momento el servicio No-ip ya estará activo y funcionando en el sistema. Podemos comprobarlo con este comando:
sudo /usr/local/bin/noip2 -S
Reconfigurar No-ip
Si con el tiempo necesitáramos reconfigurar el servicio, primero tendremos que matar el proceso para desactivarlo:
sudo pkill noip2
Hecho lo anterior, ya podremos reconfigurarlo de nuevo escribiendo lo siguiente:
sudo /usr/local/bin/noip2 -C
Finalmente volvemos a iniciar el servicio:
sudo /usr/local/bin/noip2
RECORDEMOS: antes de poder acceder, por ejemplo, por SSH necesitamos abrir el puerto 22 en el router (y en el cortafuegos, si lo tenemos instalado) y redirigirlo a la IP local de la RasPi. Hecho esto, ya podremos acceder con el nombre de nuestro dominio de No-ip (por ejemplo, midominio.ddns.org) a la Raspberry y manejarla remotamente desde Internet igual que si estuviéramos en nuestra red local.
Instalación de Webmin
Más arriba hicimos una configuración básica del sistema Raspberry Pi OS. En los últimos apartados hemos realizado algunas tareas más de configuración. Sin embargo, los usuarios que posean un conocimiento avanzado del sistema, seguramente querrán hacer una configuración mucho más completa del mismo. Para ello podemos usar Webmin, que posee dos ventajas: en primer lugar, ofrece una interfaz web para administrar de forma gráfica el sistema operativo (en lugar de hacerlo empleando la línea de comandos) y en segundo lugar, permite realizar la configuración del sistema desde un mismo sitio, sin tener que ir saltando de directorio en directorio.
Antes de proceder con la instalación, actualizamos los paquetes de nuestro sistema operativo:
sudo apt update
sudo apt upgrade
Luego, en la página web de Webmin podemos ver cuál es la última versión de esta aplicación. En este momento es la 1.930, así que nos la descargamos:
wget http://prdownloads.sourceforge.net/webadmin/webmin_1.930_all.deb
Antes de instalarla debemos asegurarnos de que tenemos en el sistema las dependencias necesarias:
sudo apt install perl libnet-ssleay-perl openssl libauthen-pam-perl libpam-runtime libio-pty-perl apt-show-versions python
Hecho lo anterior, ya podemos proceder a su instalación:
sudo dpkg -i webmin_1.930_all.deb
Una vez finalizada la instalación (que puede tardar un poco), accederemos a la interfaz web de la aplicación utilizando el navegador mediante el protocolo seguro https, poniendo la IP local de la Raspberry y el puerto 10000:
https://192.168.1.33:10000
Puesto que se trata de una conexión segura, para poder acceder, previamente tendremos que añadir una excepción de seguridad en el navegador. A continuación se nos pedirá el nombre del usuario (pi) y su contraseña.
Una vez que hayamos accedido a Webmin, veremos a la izquierda el menú de configuración del sistema:

Una de las primeras cosas que podemos hacer, si lo deseamos, es cambiar el idioma de la propia interfaz, seleccionando en Webmin - Change Language and Theme las opciones que se muestran en la imagen de abajo. Escogemos el español (o el idioma que queramos) y hacemos clic en el botón Make Changes.

Esta aplicación permite configurar multitud de opciones en nuestro sistema, por lo que explicar cada una de ellas sería un trabajo enorme. Sólo tenemos que recorrer detenidamente su amplio menú lateral para hacernos una idea de la gran cantidad de cambios que podemos realizar. Para salir de la aplicación, pinchamos en el icono rojo que hay a la derecha de la barra inferior de iconos.
Instalar RPi-Monitor
RPi-Monitor es una utilidad que nos proporciona abundante información sobre nuestro sistema. Vamos a instalarlo desde el repositorio correspondiente. Para ello, lo primero será incluir la clave pública de dicho repositorio:
sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 2C0D3C0F
Ahora ejecutamos este comando para añadir RPi-Monitor a nuestra lista de repositorios:
sudo wget http://goo.gl/vewCLL -O /etc/apt/sources.list.d/rpimonitor.list
Actualizamos el sistema de la forma habitual y luego procedemos a instalarlo:
sudo apt update
sudo apt upgrade
sudo apt install rpimonitor
Finalmente lo actualizamos:
sudo /etc/init.d/rpimonitor update
Ya podemos entrar en la interfaz web de la aplicación usando la IP local de la Raspberry y el puerto 8888:
http://192.168.1.33:8888
Aparecerá una imagen similar a esta:
Si pinchamos arriba, en el menú Statistics, podremos ver una serie de gráficos con información sobre diversos parámetros del sistema: carga de la CPU, memoria usada, velocidad de los datos transmitidos por la red, temperatura, etc.
Podemos controlar el funcionamiento de RPi-Monitor con estos comandos:
sudo systemctl start rpimonitor [Iniciarlo]
sudo systemctl stop rpimonitor [Pararlo]
sudo systemctl restart rpimonitor [Reiniciarlo]
sudo systemctl status rpimonitor [Conocer su estado]
Cambios en la configuración
Si por algún motivo queremos cambiar el puerto por defecto (8888), editamos el fichero de configuración:
sudo nano /etc/rpimonitor/daemon.conf
Buscamos en él la línea que se indica a continuación, la descomentamos y cambiamos el número del puerto:
daemon.port=7865
Hecho este cambio, será necesario reiniciar el servicio:
sudo systemctl restart rpimonitor
A partir de este momento accederemos a la interfaz web a través del nuevo puerto:
http://192.168.1.33:7865
Para hacer cambios en la información que aparece en la pantalla de Status, tenemos que seguir estos pasos:
- 1.- Descomentar/comentar (según queramos que se muestre o no un determinado módulo) las líneas apropiadas en el fichero /etc/rpimonitor/template/raspbian.conf, que como podemos ver, es un enlace simbólico al auténtico fichero de configuración (/etc/rpimonitor/data.conf).
- 2.- En los casos en que sea necesario (como ocurre con storage.conf, por ejemplo), modificaremos la plantilla que se corresponda con el módulo que nos interese, haciendo en ella los cambios oportunos. Estas plantillas se encuentran en la ruta /etc/rpimonitor/template
- 3.- Reiniciar el servicio para que las modificaciones se hagan visibles:
sudo systemctl restart rpimonitor
Actualizaciones
Cuando se nos indique que hay nuevos paquetes para actualizar (en la página de Status, al final del apartado Version), podremos hacerlo con los comandos habituales:
sudo apt update
sudo apt upgrade
Además, si lo deseamos, podemos actualizar la aplicación por si hubiera disponible una nueva versión:
sudo /etc/init.d/rpimonitor update
Eliminar/reinstalar
Si por algún motivo deseamos eliminar este servicio, haremos lo siguiente:
sudo apt purge rpimonitor
sudo rm -rf /etc/rpimonitor
sudo rm -rf /usr/share/rpimonitor
sudo rm -rf /var/lib/rpimonitor
Si más adelante queremos reinstalarlo, puesto que no hemos eliminado con los comandos anteriores la clave pública ni los repositorios, sólo hemos de seguir las instrucciones que se indicaron más arriba, es decir:
sudo apt update
sudo apt upgrade
sudo apt install rpimonitor
sudo /etc/init.d/rpimonitor update
Problemas de inicio y solución
A veces nos podemos encontrar con el problema de que el servicio no se inicia correctamente después del arranque de la Raspberry, mostrando en su lugar un mensaje de error. La solución es sencilla; sólo necesitaremos reiniciarlo manualmente para que vuelva a funcionar de forma adecuada:
sudo systemctl restart rpimonitor
Instalar phpSysInfo
phpSysInfo es una utilidad muy similar a la anterior (RPi-Monitor), ya que su finalidad es, asímismo, ofrecernos una amplia información sobre nuestro sistema. Pero antes de poder usarla necesitamos tener instalados en la Raspberry un servidor web y PHP. En este caso vamos a utilizar Apache (aunque también podríamos instalar Nginx de la manera que explicamos aquí).
sudo apt install apache2 php7.3 libapache2-mod-php7.3 php7.3-xml
A continuación nos dirigimos a la web de phpSysInfo y tomamos nota de cuál es la última versión. Entonces la descargamos desde la propia Raspberry mediante el comando wget que se muestra a continuación, pero cambiando los números de versión por los de la última disponible:
wget https://netcologne.dl.sourceforge.net/project/phpsysinfo/phpsysinfo/3.3.2/phpsysinfo-3.3.2.tar.gz
Acto seguido, la descomprimimos:
tar -zxvf phpsysinfo-3.3.2.tar.gz
Renombramos el directorio donde se ha descomprimido (eliminando los números de versión), lo copiamos en /var/www/html y ya podemos borrar lo que no necesitamos:
mv phpsysinfo-3.3.2 phpsysinfo
sudo cp -R phpsysinfo /var/www/html
rm -rf phpsysinfo*
Vamos a donde lo hemos copiado y usamos como fichero de configuración el que ya viene incluido como ejemplo, pero renombrándolo previamente:
cd /var/www/html/phpsysinfo
sudo cp phpsysinfo.ini.new phpsysinfo.ini
Desde el navegador de cualquier dispositivo de nuestra LAN podremos acceder escribiendo la IP local de la Raspberry seguida de /phpsysinfo:
http://192.168.1.33/phpsysinfo
Esto es un fragmento de la información que se nos mostrará:
El fichero anterior (/var/www/html/phpsysinfo/phpsysinfo.ini) puede editarse para hacer cambios en la configuración. Por ejemplo, modificando estas cinco líneas podemos definir el idioma y la plantilla por defecto, si queremos que aparezan o no sus respectivos menús desplegables en el panel superior y el tiempo de actualización de la información que se muestra:
DEFAULT_LANG="es"
DEFAULT_TEMPLATE="phpsysinfo"
SHOW_PICKLIST_LANG=fase
SHOW_PICKLIST_TEMPLATE=true
REFRESH=60000
Otros cambios requieren conocimientos algo más avanzados. Es lo que sucede si queremos que aparezca la temperatura de la CPU. En este caso localizamos la línea SENSOR_PROGRAM=false y la modificamos así:
SENSOR_PROGRAM="PiTemp"