无法将mosquitto-clients从1.4.15升级至1.6.9以使用TLS1.3,求解决方案
原因说明
Ubuntu 18.04 官方默认软件源中收录的mosquitto-clients最高版本为1.4.15,该版本原生不支持TLS 1.3,因此直接执行常规apt安装命令无法升级到满足需求的高版本。
解决方案
方案一:通过PPA源安装高版本
操作步骤如下:
- 卸载系统原有旧版本,避免文件冲突
sudo apt remove --purge mosquitto-clients -y sudo apt autoremove -y
- 导入PPA源的GPG密钥
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 8277CCB49EC5B2F2
- 添加mosquitto专用PPA源到系统源列表
sudo sh -c 'echo "deb http://ppa.launchpad.net/mosquitto-dev/mosquitto-ppa/ubuntu bionic main" >> /etc/apt/sources.list.d/mosquitto.list'
- 更新软件源缓存并安装新版本
sudo apt update sudo apt install mosquitto-clients -y
方案二:源码编译安装
如果不想添加第三方PPA源,可直接编译安装指定版本,操作步骤如下:
- 安装编译所需的依赖包
sudo apt install build-essential libssl-dev libcjson-dev cmake -y
- 下载1.6.9及以上版本的mosquitto源码压缩包,解压后进入源码目录
- 执行编译配置、编译与安装
cmake . make -j$(nproc) sudo make install sudo ldconfig
验证方法
安装完成后执行以下命令确认版本:
mosquitto_pub --version
返回版本号≥1.6.9即为安装成功,可再次执行mosquitto_pub --tls-version tlsv1.3验证TLS 1.3功能是否正常。
内容的提问来源于stack exchange,提问作者phoenix
相关产品推荐
相关产品推荐

