Da ich gestern darüber gestolpert bin und man im Internet noch wenig darüber Finder, notiere ich mir hier einen kleinen Merker wie die Datei- und Verzeichnisrechte bei Mosquitto aussehen sollten.

Um Mosquitto über SSL/TLS abzusichern legt man unter /etc/mosquitto/conf.d eine Datei SSL mit folgendem Inhalt an:

Listener 8883
certfile /etc/mosquitto/certs/server.crt
cafile /etc/mosquitto/ca_certificates/ca.crt
keyfile /etc/mosquitto/certs/server.key

Die entsprechenden Zertifikate müssen natürlich generiert sein (da gibt es unzählige Anleitungen) und an die entsprechende Stelle kopiert werden.

Der eigentlich Kniff war bei mir unter Debian Bookworm nun, dass die Datei- und Verzeichnisrechte nicht gepasst haben. Es kam immer zu folgenden Fehlern:

1695361882: Error: Unable to load CA certificates. Check cafile "/etc/mosquitto/ca_certificates/ca.crt".
1695361882: OpenSSL Error[0]: error:8000000D:system library::Permission denied
1695361882: OpenSSL Error[1]: error:10080002:BIO routines::system lib
1695361882: OpenSSL Error[2]: error:05880002:x509 certificate routines::system lib

Abhilfe schafft dann nur folgende Befehle auszuführen und den Mosquitto Dienst neu zu starten:

chmod 0700 /etc/mosquitto/certs
chmod 0700 /etc/mosquitto/certs/*
chmod 0700 /etc/mosquitto/ca_certificates
chmod 0700 /etc/mosquitto/ca_certificates/*