This is an old revision of the document!
MQTT Server für owntracks
- Owntracks ist eine Android/iOS App, die Standortdaten speichern/publizieren kann
- Unter anderem an einen MQTT-Server
- Andere Dienste können den Standort dann auswerten, z.B. Home Assistant
Installation
- Standortdienste sind schützenswerte Dienste, also sollte ein sicherer Betrieb sichergestellt werden
- daher TLS inkl. TLS-Client-Zertifikate
- Betrieb im Docker container
Eigene CA
- ~/docker-mosquitto/easy-rsa/easyrsa3
- Anpassungen in der vars
- CA hält 100 Jahre, Zert hält 10 Jahre, Keysize 4096
- ./easyrsa init-pki
- ./easyrsa build-ca
- ./easyrsa build-server-full brot-mqtt nopass
- ./easyrsa build-client-full brot-owntracks
- passwort ist bei owntracks pflicht
- cp pki/issued/brot-mqtt.crt pki/private/brot-mqtt.key pki/ca.crt ~/docker-mosquitto/
mosquitto MQTT brocker im Docker-Container
- mkdir ~/docker-mosquitto
- nano ~/docker-mosquitto/mosquitto.conf
- mkdir ~/docker-mosquitto/data ~/docker-mosquitto/log
- docker run -d -p 53883:8883 -name brot-mqtt -v /home/brot/docker-mosquitto/mosquitto.conf:/mosquitto/config/mosquitto.conf -v /home/brot/docker-mosquitto/data/:/mosquitto/data/ -v /home/brot/docker-mosquitto/log/:/mosquitto/log/ -v /home/brot/docker-mosquitto/ca.crt:/mosquitto/ca.crt -v /home/brot/docker-mosquitto/brot-mqtt.crt:/mosquitto/brot-mqtt.crt -v /home/brot/docker-mosquitto/brot-mqtt.key:/mosquitto/brot-mqtt.key eclipse-mosquitto
listener 8883 cafile /mosquitto/ca.crt certfile /mosquitto/brot-mqtt.crt keyfile /mosquitto/brot-mqtt.key require_certificate true use_identity_as_username true persistence true persistence_location /mosquitto/data/ log_dest file /mosquitto/log/mosquitto.log