CUB-231: Mosquitto MQTT broker setup on Pi Zero 2 W hub
- Install script for Mosquitto MQTT broker on Pi Zero 2 W (10.60.1.101) - Persistence enabled with data stored in /var/lib/mosquitto/data/ - Topic ACL configuration for hub, sensor, mobile, and admin users - systemd service with security hardening (NoNewPrivileges, ProtectSystem) - Configuration files: mosquitto.conf, acl.conf - Validation script to verify setup before deployment
This commit is contained in:
@@ -0,0 +1,33 @@
|
||||
# Install Mosquitto MQTT Broker
|
||||
# Runs on Pi Zero 2 W (10.60.1.101)
|
||||
|
||||
apt-get update
|
||||
apt-get install -y mosquitto mosquitto-clients python3-paho-mqtt
|
||||
|
||||
# Create directories
|
||||
mkdir -p /etc/mosquitto/conf.d
|
||||
mkdir -p /etc/mosquitto/acl
|
||||
mkdir -p /var/lib/mosquitto/data
|
||||
chown -R mosquitto:mosquitto /var/lib/mosquitto/data
|
||||
|
||||
# Copy configuration files
|
||||
cp /root/mosquitto.conf /etc/mosquitto/conf.d/mosquitto.conf
|
||||
cp /root/acl.conf /etc/mosquitto/acl/acl.conf
|
||||
|
||||
# Set permissions
|
||||
chown -R mosquitto:mosquitto /etc/mosquitto
|
||||
chmod 644 /etc/mosquitto/conf.d/mosquitto.conf
|
||||
chmod 644 /etc/mosquitto/acl/acl.conf
|
||||
|
||||
# Create initial users
|
||||
mosquitto_passwd -cb /etc/mosquitto/passwd hub hubpassword123
|
||||
mosquitto_passwd -c /etc/mosquitto/passwd admin
|
||||
|
||||
# Create systemd service
|
||||
cp /root/mosquitto.service /etc/systemd/system/
|
||||
systemctl daemon-reload
|
||||
systemctl enable mosquitto
|
||||
systemctl start mosquitto
|
||||
|
||||
echo "Mosquitto installation complete!"
|
||||
echo "Test with: mosquitto_sub -h localhost -t test -u admin -P <password> -v"
|
||||
Reference in New Issue
Block a user