个人智能家居系统 - MQTT服务器搭建(centOS7.3)
个人智能家居系统 - MQTT服务器搭建(centOS7.3)
0x00 参考
0x01 配置
General configuration
所见即所得,保持默认即可
Default listener
# 设置端口
port 1883
# 设置最大连接数
max_connections -1
# 使用协议,mqtt或者websocket
protocol mqtt
SSL/TLS support
用于 default listerner 的安全设置,暂未设置
Extra listeners
用于 websocket ,暂未设置
SSL/TLS support
用于 Extra listeners 的安全设置,暂未设置
Persistence
持续性设置,即 mosquitto 重启后恢复设置,暂未设置
而且客户端的断线重连机制更加稳妥Logging
开启服务时重定向 stdout 等信息至文件,这里只设置 type
Security
# 设置前缀
clientid_prefixes guduyl
# 禁止匿名登录
allow_anonymous false
# 设置用户名密码文件
password_file /etc/mosquitto/pwfile
# 设置权限信息文件
acl_file /etc/mosquitto/aclfile
Bridges
用于分布式服务器,暂未设置
SSL/TLS support
分布式服务器安全设置,暂未设置
External config files
rsmb options
用户名密码设置
- mosquitto_passwd 命令,查看帮助即可
权限文件设置
仿照 aclfile.example 文件
- test/jh/# 可匹配 test/jh/a/b/c, test/jh/a/b, test/jh/a.test/jh
- test/jh/+ 可匹配 test/jh/a, test/jh/b, 但是不能匹配 test/jh/a/b
启动停止
启动
#! /bin/bash ps -ef | grep mosquitto | tee /tmp/graduation.tmp lines=$(awk 'END{print NR}' /tmp/graduation.tmp)
lines=`expr $lines + 1`
for ((i=1; i<$lines; ++i))
do
uid=$(sed -n "$i, 1p" /tmp/graduation.tmp | awk '{print $1}')
if [ $uid == "mosquit+" ] ; then
break
fi
done if [ $i != $lines ] ; then
echo "the mosquitto1.4.1 had been started already"
else
echo "Starting the mosquitto1.4.1 ..."
mosquitto -d -c /etc/mosquitto/mosquitto.conf > /root/graduation/mosquitto.log 2>&1
echo "the mosquitto1.4.1 has been started"
echo "the log file is /root/graduation/mosquitto.log"
fi rm -f /tmp/graduation.tmp停止
#! /bin/bash ps -ef | grep mosquitto | tee /tmp/graduation.tmp lines=$(awk 'END{print NR}' /tmp/graduation.tmp)
lines=`expr $lines + 1`
for ((i=1; i<$lines; ++i))
do
uid=$(sed -n "$i, 1p" /tmp/graduation.tmp | awk '{print $1}')
if [ $uid == "mosquit+" ] ; then
break
fi
done if [ $i != $lines ] ; then
pid=$(sed -n "$i, 1p" /tmp/graduation.tmp | awk '{print $2}')
echo "killing $pid ..."
kill $pid
echo "the mosquitto1.4.1 has been stopped"
else
echo "the mosquitto1.4.1 has not been started yet"
fi rm -f /tmp/graduation.tmp重启
#! /bin/bash /root/graduation/stop.sh
/root/graduation/start.sh
个人智能家居系统 - MQTT服务器搭建(centOS7.3)的更多相关文章
- 树莓派安装开源智能家居系统 Domoticz
前言 最近闲来无事开始折腾自己的智能家居系统,对比了几种比较流行的开源智能家居系统,觉得 Domoticz 更适合,Domoticz的官方中文文档,虽然不是很完善但还是可以参考一下.需要注意的是下文用 ...
- Mqtt服务器搭建
.bg { background: #99CC99 } Mqtt服务器搭建 测试环境:CentOS64位 1.安装基础软件 yum install gcc-c++ yum install cmake ...
- Home Assistant + 树莓派:强大的智能家居系统 · 安装篇
Home Assistant + 树莓派:强大的智能家居系统 · 安装篇 转载:Home Assistant + 树莓派:强大的智能家居系统 · 安装篇 目录 1. 初始安装 3. Homebridg ...
- 常见MQTT服务器搭建与试用
常见MQTT服务器搭建与试用 简介 MQTT(Message Queuing Telemetry Transport,消息队列遥测传输)是IBM开发的一个即时通讯协议,它比较适合于在低带宽.不可靠 ...
- Home Assistant + 树莓派:强大的智能家居系统 · 设备接入篇
转载:Home Assistant + 树莓派:强大的智能家居系统 · 设备接入篇 目录 HASS 配置框架 主文件设置 Homebridge 设置 鹬蚌相争? 设备追踪设置 更新日志 作者的话 相信 ...
- 智能家居系统 Home Assistant 系列 --介绍篇
一. HomeAssistant 是什么? HomeAssistant是构建智慧空间的神器.是一个成熟完整的基于 Python 的智能家居系统,设备支持度高,支持自动化(Automation).群组化 ...
- 智能家居系统 Home Assistant 系列 --安装系统之Windows
Home Assistant 是一个成熟完整的基于 Python 的智能家居系统. 首先得安装Python环境.在浏览器中访问Python官网 www.python.org 进入Downloads中的 ...
- 常见MQTT服务器搭建[转载]
简介 MQTT(Message Queuing Telemetry Transport,消息队列遥测传输)是IBM开发的一个即时通讯协议,它比较适合于在低带宽.不可靠的网络的进行远程传感器和控制设备通 ...
- Apollo mqtt 服务器搭建
html { overflow-x: initial !important } :root { --bg-color: #ffffff; --text-color: #333333; --select ...
随机推荐
- sqli-labs(6)
双注入GET双引号字符型注入 0x01(这里思路和05一样只是单引号变成了双引号) 首先我们看见这个网站 又是不显示值的 所以想到用报错的信息来得出你想要的结果 有了思路之后来试试一下吧 先填入单引号 ...
- 打造boost的trhead环境
windows下的环境 1.官网下载boost_1_68_0解压后用VS2010的命令行工具运行bootstrap.bat 2.用VS2005命令行工具运行 bjam.exe link=static ...
- leetcode-mid-sorting and searching-75. Sort Colors-NO
mycode 97.95% class Solution(object): def sortColors(self, nums): """ :type nums: L ...
- 3,、maven修改jar包下载为国内镜像下载地址
maven 默认的中央仓库是在国外的服务器,下载速度慢,有时候稍不注意就下载出错 通常我将maven的中央仓库修改为阿里云的地址,下载速度很快体验非常好 修改conf下的setting.xml文件 在 ...
- 前端必须掌握的 docker 技能(1)
概述 作为一个前端,我觉得必须要学会使用 docker 干下面几件事: 部署前端应用 部署 nginx 给部署的 nginx 加上 https 使用 docker compose 进行部署 给 ngi ...
- tomcat7源码包编译安装
tomcat/:作用解析jsp程序.先安装jdk容器.1.下载jdk, wget http://download.oracle.com/otn- pub/java/jdk/8u131- b11/d54 ...
- webpack中的 chunk,module,bundle的区别,以及hidden modules是什么
hidden modules是什么: chunk,module,bundle的区别 总结: module是指任意的文件模块,等价于commonjs中的模块 chunks是webpack处理过程中被分组 ...
- HTTP学习记录:三、状态码
学习资源主要为:@小坦克HTTP相关博客 常见的HTTP状态码: 200--请求成功: 302--重定向: 304--Not Modified:表示上次的文档已经被缓存了,还可以继续使用: 400-- ...
- PHP 数组函数 内部指针
current( &$arr ) 每个数组的当前单元,初始值的 数组的第一个单元next ( &$arr ) 返回数组中的下一个单元 , 如果没值则返回falshprev ( & ...
- [19/09/08-星期日] Python的几个概念和语法
一.表达式.语句.程序.函数 1.表达式 就是一个类似于数学公式的东西 ,比如:10 + 5 8 - 4:表达式一般仅仅用了计算一些结果,不会对程序产生实质性的影响 如果在交互模式中输入一个表达式,解 ...