Instalando y configurando Mosquitto en la Raspberry Pi (parte 2)

En la entrada anterior, configuramos el acceso al servidor mosquitto, usando certificados, pero permitiendo la conexión anónima al mismo, es decir: ciframos la conexión pero permitimos que acceda cualquiera. Estábamos usando el sistema con cifrado pero sin autenticación, lo cual sirve para poco en nuestra situación. Para eliminar esa debilidad, tendremos que hacer los siguientes cambios en la configuración del servidor, en el fichero mosquitto.conf:

allow_anonymous false
autosave_interval 1800

connection_messages true
log_dest file /var/log/mosquitto.log
#log_dest stderr
log_dest topic
log_type error
log_type warning
log_type notice
log_type information
log_type all
log_type debug
log_timestamp true

#message_size_limit 10240

password_file /etc/mosquitto/passwd.pw

persistence true
persistence_location /tmp/
persistence_file mosquitto.db
persistent_client_expiration 1m

#pid_file xxxx

retained_persistence true

listener 1883
#listener 1883 127.0.0.1

listener 8883
tls_version tlsv1
cafile /etc/mosquitto/ca_certificates/ca.crt
certfile /etc/mosquitto/certs/server.crt
keyfile /etc/mosquitto/certs/server.key
require_certificate false

Las lineas importantes son la primera, con la que NO permitimos los accesos anónimos y la que especifica el password_file, que será el fichero en el que se almacenarán las parejas usuario:contraseña.

Con esta configuración vamos a permitir las conexiones cifradas y no cifradas, pero siempre con usuario y contraseña. Desde fuera de nuestro servidor usaremos las conexiones cifradas con usuario y contraseña, y desde dentro del servidor permitiremos las conexiones sin cifrar (cargan menos el sistema al ahorrarse tener que cifrar y descifrar) pero con usuario y contraseña.

Para generar el fichero de contraseñas usaremos el comando mosquitto_passwd:

root@server:/etc/mosquitto# mosquitto_passwd -c /etc/mosquitto/passwd.pw openHABuser
Password: 
Reenter password:
root@server:/etc/mosquitto# mosquitto_passwd -U /etc/mosquitto/passwd.pw moviljose
Password: 
Reenter password:
root@server:/etc/mosquitto# chown mosquitto /etc/mosquitto/passwd.pw

Reiniciamos el servidor mosquitto, y ya tenemos un poco más de seguridad…

 

3 comentarios

Añadir un comentario

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

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.