前言:由于将之前的几个项目底层从新使用了mqtt协议,因此在此记录一下阿里云搭建mosquitto的过程。
linux
这个过程就不详细说,若是有学生认证的话会很是的优惠。应该是在9.9一个月。
购买成功后
而后在远程链接中设置本身的密码就可使用SecureCRT 8.1等工具来对你的linux云服务器进行开发了。
将你在控制台获取到的公网IP、用户名(默认root)点击链接后输入密码后便可链接到你的阿里云。web
http://mosquitto.org/files/source/ [最新版本查看]服务器
wget http://mosquitto.org/files/source/mosquitto-1.6.9.tar.gz
sudo apt-get install libssl-dev sudo apt-get install libc-ares-dev sudo apt-get install uuid-dev
tar zxvf mosquitto-1.6.9.tar.gz cd mosquitto-1.6.9 make sudo make install
在安装mosquitto成功后,能够在/usr/local/lib文件夹中有libmosquitto.so.1等文件,以下图所示:tcp
cd /user/local/lib ls
使用过程当中找不到libmosquitto.so.1svg
error while loading shared libraries: libmosquitto.so.1: cannot open shared object file: No such file or directory
【解决方法】——修改libmosquitto.so位置工具
建立连接 sudo ln -s /usr/local/lib/libmosquitto.so.1 /usr/lib/libmosquitto.so.1 更新动态连接库 sudo ldconfig
1)启动mosquitto服务器测试
mosquitto -v
2)订阅消息ui
mosquitto_sub -h localhost -t "mqtt" -v
(3)发布消息阿里云
mosquitto_pub -h localhost -t "mqtt" -m "Hello mqtt"
在切回到订阅主题的终端就已经接收到了来自主题为mqtt推送到的消息“hello world”
spa
Mosquitto服务器的配置文件为/etc/mosquitto/mosquitto.conf,关于用户认证的方式和读取的配置都在这个文件中进行配置。
nano /etc/mosquitto/mosquitto.conf.example
写入:
#禁止匿名访问 allow_anonymous false #认证配置 password_file /etc/mosquitto/pwfile
添加用户’lwh’密码’****‘,
mosquitto_passwd -c /etc/mosquitto/pwfile lwh
敲入命令后,连续俩次输入相同的密码。
输入正确的用户名和密码:
输入正确的用户名和密码,经过Wireshark捕获tcp 1883端口 成功推送和订阅
输入错误的密码:
经过Wireshark捕获tcp 1883端口 能够发现链接mqtt server失败
对于失败的缘由总结了几点: 一、第一阿里云服务器没有打开1883的端口。而且没有进行服务器重启 二、经过ps -ef|grep mosquitto 查看进程 杀死进程后在进行启动在尝试调试。