mosquitto mqtt 安裝 配置指南

2021-08-18 04:56:56 字數 2582 閱讀 1304

1.安裝外部依賴

1.1 yum 安裝依賴

yum install openssl-devel

yum install c-ares-devel

yum install libuuid-devel

yum install gcc*

2.安裝mosquitto例項:

wget

2.2 解壓

tar -zxvf mosquitto-1.4.9.tar.gz

2.3 進入安裝目錄

cd mosquitto-1.4.9

2.4 編譯

sudo make

sudo make install

2.5 載入.so.1檔案

vim /etc/ld.so.conf.d/user.conf

加入內容:

/usr/local/lib

載入以上配置

ldconfig

2.6 更新動態鏈結庫

sudo ldconfig

2.7 增加mosquitto使用者

adduser mosquitto

2.8 測試mosquitto安裝

啟動mosquitto

mosquitto -c mosquitto.conf

3.安裝第三方認證外掛程式

wget

3.2 解壓,修改配置

tar -zxvf 0.1.2.tar.gz

cd mosquitto-auth-plug-0.1.2

cp config.mk.in config.mk

3.3 編輯config.mk指定開啟redis,mosquitto原始碼目錄

vim config.mk

修改如下配置項:

注:此處需要依賴http 相關的庫 需要新增

mosquitto_src = /usr/local/mosquitto-env/mosquitto-1.4.9/src

3.4 編譯

make

3.5 mosquitto目錄下建立plugin目錄

mkdir plugin

3.6 將外掛程式中的.so檔案複製到plugin目錄下

cp auth-plug.so mosquitto/plugin

3.7 修改mosquitto的配置檔案

vim mosquitto.conf

修改如下配置項

allow_anonymous false

在這一行下新增

auth_plugin /usr/local/mqtt/mosquitto-1.4.9/plugin/auth-plug.so

#redis 使用這個配置

#auth_opt_backends redis

#auth_opt_redis_host 192.168.120.203

#auth_opt_redis_port 6379

#auth_opt_redis_userquery get %s

#http 驗證使用這個

三個uri 返回的資料均為

/*** 使用者名稱 */

private string username ;

/*** 密碼 */

private string password ;

/*** 主題 */

private string topic;

/***1 == sub, 2 == pub */

private string acc;

/***客戶端id

**/private string clientid;

請求方式為post

詳細案例參考

## 相關注意事項

## 功能驗證建議

2. 新建連線

輸入使用者名稱密碼 admin admin 該使用者名稱密碼在 http服務中校驗

連線,連線成功即完成搭建

或者使用mosquitto訂閱命令:

mosquitto_sub -h 192.168.212.177 -p 1884 -t test -u admin -p admin

安裝Docker(yum安裝)

確定你是centos7及以上版本 root 192 desktop cat etc redhat release centos linux release 7.2.1511 core 3.yum安裝gcc相關 yum y install gcc yum y install gcc c 4.解除安裝舊...

安裝 python python安裝

pyenv 多版本管理工具 1.linux安裝pyenv方式 git 安裝 1 安裝git yum install git y 2 安裝python編譯依賴 yum y install gcc make patch gdbm devel openssl devel sqlite devel read...

mysql安裝(安裝包安裝)

2 使用命令列 cmd 進入mysql的bin目錄下,初始化資料庫,執行mysqld initialize console console 表示在控制台輸出,不新增則不展示下面那些資訊 最後一行root localhost 後的hd ed4j s 就是臨時密碼,登入時會使用 注意 1 data目錄要...