Also mittlerweile funktioniert es.
Wichtig ist eben auch, bei der Zertifikatserstellung den
Common Name (e.g. server FQDN or YOUR name) richtig festzulegen.
Zertifikat erstellen, und den CN (s.o.) so festlegen, wie er auch nacher beim Connect aufgerufen wird zB
192.168.0.100 oder
MeinServer.dyndns.orgcd /opt/fhem
/opt/fhem $ sudo mkdir certs
/opt/fhem $ cd /opt/fhem/certs
sudo openssl req -new -x509 -nodes -out server-cert.pem -days 3650 -keyout server-key.pem
sudo chmod 644 /opt/fhem/certs/server-key.pem
sudo chmod 644 /opt/fhem/certs/server-cert.pem
Das Zertifikat (server-
cert.pem) wird dann in den Code kopiert:
ESP32DevelopmentBoardSecure.inoUnd es läuft, auch mit dem PubSubClient.
Dann läuft das
NETSGP über SSL über das Internet.
Jetzt müsste ich nur noch schauen, wie ich die sicherste MQTT Server Variante hinbekomme.
Ist es sinnvoll einen Mosquitto über einen Container, nur für die Internetanbindung laufen zu lassen und in FHEM einen MQTT Client einzusetzen?
Oder reicht es schon einen MQTT Proxy vor den MQTT2_SERVER zu setzen?
Momentan habe ich den MQTT2_SERVER:8883 direkt geforwarded und schon ein paar Connects fremder IPs drauf.