34 lines
1004 B
Bash
34 lines
1004 B
Bash
|
|
# 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"
|