如何像具有 https 的网页一样设置加密的 mosquitto 代理?

2023-11-22

我正在尝试设置一个使用 ssl/tls 加密的 mosquitto 代理。我不想生成客户端证书。我只想要一个加密连接。

手册页仅描述了可用的设置,没有描述需要哪些设置以及如何使用它们。

需要哪些设置以及如何设置它们?

我用的是蚊子1.3.5


这里有一个小指南,但没有说太多:http://mosquitto.org/man/mosquitto-tls-7.html

您需要设置这些: 证书文件 密钥文件 卡菲莱

它们可以使用上面链接中的命令生成。但更简单的是使用这个脚本:https://github.com/owntracks/tools/blob/master/TLS/generate-CA.sh

运行脚本并更改配置后,它可能看起来像这样:

listener 8883
cafile /etc/mosquitto/certs/ca.crt
certfile /etc/mosquitto/certs/hostname.localdomain.crt
keyfile /etc/mosquitto/certs/hostname.localdomain.key

如果蚊子说Unable to load server key file这意味着运行 mosquitto 的用户没有读取该文件的权限。即使您以 root 身份启动它,代理也可能以其他用户身份启动,例如 mosquitto。要解决这个问题,请执行以下操作:chown mosquitto:root keyfile

要连接到代理,客户端将需要 ca.crt 文件。如果您不提供此信息,经纪人会说:

OpenSSL 错误:错误:1408F10B:SSL 例程:SSL3_GET_RECORD:版本号错误

将其提供给您使用的 mosquitto_sub 命令--cafile pathToCaCrt。 ca.crt 可以与客户端一起分发,它将确保它连接到的服务器实际上是正确的服务器。

The --insecuremosquitto_sub 标志并不使客户端接受所有证书(如 wget 或类似证书),它只是允许证书不具有您要连接到的通用名称的主机。因此,您应该确保您的证书将您的代理主机作为通用名称。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何像具有 https 的网页一样设置加密的 mosquitto 代理? 的相关文章

  • 如何使用 net/http 验证 ruby​​ 中的 SSL 证书链

    我如何验证网站的证书 例如https processing ukash com https processing ukash com 在 ruby 中使用 net http https Net HTTP new processing uka
  • 如何在 Ruby 2.2 上删除不安全密码来强化 Rails+webrick+https

    更新 首先 我的测试代码没有充分显示 ruby 2 4 看到 SSLCiphers 选项 而 ruby 2 2 没有 我编辑了下面的示例代码以清楚地表明这一点 更新 由于我的问题未能得到社区的任何帮助 我继续前进 两天后找到了解决方案 我将
  • Google Chrome 中的 ERR_SSL_CLIENT_AUTH_SIGNATURE_FAILED

    我有一个使用 SSL 客户端证书授权的网站 所有客户端证书都是使用 OpenSSL 生成的并且是自签名的 一切都适用于所有网络浏览器 但推荐的是 Google Chrome 因为它使用与 IE 相同的 SSL 仓库 因此证书安装非常简单 点
  • Facebook JavaScript SDK 通过 HTTPS 加载非安全项目

    我有一个 Facebook 应用程序 使用Facebook Connect js https connect facebook net en US all js 我正在通过 HTTPS 运行我的应用程序 网站上的所有内容均来自https 但
  • 无法使用 OpenSSL 验证服务器证书

    我已经使用 OpenSSL 编写了一个 SOAP 客户端 在 Ubuntu 12 04 上用 C 编写 但它目前无需检查服务器安全证书即可运行 这是我用来设置连接和检查证书的函数 bool bInitialiseSSL SSL CTX ct
  • 出站连接的 SSL 配置在 websphere-liberty 17.0.0.2 中不起作用

    我正在尝试将 websphere liberty 服务器配置为对所有出站连接 实际上是 REST 调用 使用默认密钥库和 trustore 对于入站连接使用自定义密钥和信任库 但当尝试调用外部 REST 服务时 它会失败并出现 SSLHan
  • 在linux上安装python ssl模块,无需重新编译

    是否可以在已经安装了 OpenSSL 的 Linux 机器上安装 python 的 SSL 模块 而无需重新编译 python 我希望它就像复制几个文件并将它们包含在库路径中一样简单 Python版本是2 4 3 谢谢 是否可以在已经安装了
  • Azure 共享计划上的 SSL?

    我有 1 个网站 1 个数据库和 1 个 SSL 托管在 azure 上 我曾经拥有 基本 托管套餐 但每个月要支付 70 美元才能获得基本设置 并且所有内容都具有最小的缩放比例 我意识到我的低流量站点不需要专用计算机 因此我尝试转向共享计
  • 使用 CryptoJS 更改密钥 [重复]

    这个问题在这里已经有答案了 我正在使用 CryptoJS 来加密和解密文本 在这里 我只是获取消息并显示加密和解密消息 我使用DES算法进行加密和解密 这是我的 HTML 文件
  • 直接使用从密钥库加载的 SecretKey 时,密钥用户未经过身份验证

    我正在尝试使用 Cipher 和在 KeyStore 中加载的 SecretKey 来加密数据 但总是收到此错误 导致 android security KeyStoreException 关键用户未经过身份验证 我尝试自己创建 Secre
  • 如何在 Perl 脚本中加密或隐藏密码?

    我正在研究 Perl 脚本 它使用Expect http search cpan org dist Expect通过 telnet 登录到远程计算机 不要问 必须使用 telnet 我还根据需要执行 perforce p4 登录操作 并使用
  • 如何使用httplib2进行相互证书认证

    我正在使用 httplib2 从我的服务器向另一个 Web 服务发出请求 我们想要使用相互证书身份验证 我了解如何使用证书进行传出连接 h set certificate 但是如何检查应答服务器使用的证书 这张票 http code goo
  • 从 SSLv3 迁移到 TLSv1

    对于 POODLE SSLv3 现已在服务器上禁用 客户端软件是在 NET 2 0 中开发的 并提供 TLSv1 作为唯一的替代方案 我有权并有能力更改客户端应用程序和服务器配置 ServicePointManager SecurityPr
  • 应用程序网关中的 SSL 证书到期日期

    我们有一个带有 SSL 证书的 Azure 应用程序网关 我们知道我们的证书即将过期 我们需要更新它 我们的问题是 我们无法获取网关信息中的实际到期日期 至少无法从门户获取 有人知道我们可以在哪里检索此信息吗 可能没有直接从 Azure 门
  • CryptoJS 使用密码加密 AES,但 PHP 解密需要密钥

    我在用CryptoJS https code google com p crypto js AES加密字符串 function doHash msg msg String msg var passphrase aggourakia var
  • Ruby openssl 文档 [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 有没有 Ruby 的在线文档openssl图书馆 我能找到的只是博客文章和第三方文章 而 rdoc 本
  • 启用 TLSv1.2 和 TLS_RSA_WITH_AES_256_CBC_SHA256 密码套件

    Server TLS Version v1 2 Cipher Suite TLS RSA WITH AES 256 CBC SHA256 Client JRE 1 7 当我尝试直接通过 SSL 从客户端连接到服务器时 收到以下错误 Caus
  • 填充错误 - 在 Java 中使用 AES 加密并在 C 中使用解密时

    我在用 rijndael c 代码解密 xl 文件时遇到问题 该文件通过 JCE 在 Java 中加密 并且此问题仅发生在具有公式的 excel 文件类型中 其余所有文件类型加密 解密均正常进行 如果我在 java 中解密同一个文件 输出就
  • 忽略控制台应用程序中的 Web 浏览器 SSL 安全警报

    我正在创建一个能够远程捕获网站屏幕截图的控制台应用程序 除了我无法避免证书错误之外 一切都正常 每次我收到无法通过的弹出消息 我尝试使用 ServicePointManager ServerCertificateValidationCall
  • 合法管理员如何获取 Active Directory 中的用户密码?

    如果密码以可逆加密方式存储在 Active Directory 中 管理员 开发人员如何提取和解密该密码 具体来说 我指的是this http technet microsoft com en us library cc784581 WS

随机推荐

  • MATLAB 中的矩阵乘法时间复杂度

    有谁知道MATLAB使用哪种算法进行矩阵乘法以及它的时间复杂度是多少 为了完整起见 如中所述这个线程 Matlab 使用DGEMM 双通用矩阵乘法 例程来自BLAS 基本线性代数子程序 请注意 BLAS 不存在单一的实现 它针对特定的处理器
  • newtonsoft json序列化时间跨度格式

    是否可以指定自定义格式TimeSpan序列化 使用Newtonsoft Json 我想要格式为 HH mm 的序列化字符串 例如 TimeSpan FromHours 5 gt 05 00 TimeSpan FromHours 5 gt 0
  • 更好的 git add -p 吗?

    有时我在没有安装 X Window 的系统上工作 并且无法使用 Git GUI 现有的控制台替代品是什么git add p 我几乎喜欢它所做的一切 实际上比 Git GUI 更喜欢 但我讨厌它不允许我查看整个图片并选择我想要查看块的顺序 这
  • .forEach 中 thisArg 的用途是什么?

    JavaScript 的对于每个文档指出 forEach语法是 arr forEach callback thisArg 有什么用thisArg The thisArg可以提供改变inner this的回调函数 未指定thisArg结果是t
  • 导入 theano 时出错“无法导入名称 gof”

    我目前收到错误 导入错误 无法导入名称 gof 导入 theano 时 gt gt gt import theano Traceback most recent call last File
  • 延迟生成 powerset

    我想计算一个集合的幂集 因为我不需要一次需要整个 powerset 所以最好延迟生成它 例如 powerset set a b c seq set set a set b set c set a b set a c set b c set
  • 组合 R + awk + ​​bash 命令

    我想结合awk和R语言 问题是我在指定目录中有一组 txt 文件 并且我不知道文件头的长度 在某些情况下 我必须跳过 25 行 而在其他情况下 我必须跳过 27 行等 所以我想输入一些 awk 命令来获取要跳过的行数 一旦获得该值 我就可以
  • 当初始化固定大小的 char 数组时没有足够的空间容纳 null 终止符时,不会出现编译器错误

    假设我有以下 c char 数组 char okaysize4 5 four line 5 char toosmall4 4 four line 6 char toosmall3 3 four line 7 当我使用 gcc 4 4 7 编
  • ES6 模板文字 - 从字符串中删除 \n

    我正在将多行变量更改为Template Literals太神奇了 但后来我注意到我所做的缩进被转换 缩小 为 n与我在原始代码上所做的缩进 我怎样才能避免这种情况 Ex var div div class proj div class bo
  • 如何在 Windows 窗体中模仿 JavaScript 的 onBlur 事件?

    我在 Windows 窗体上有电话和电子邮件文本框 我想在用户离开字段时对其进行验证 当我双击 Visual Studio 表单设计器中的文本框时 它会创建一个textchanged事件 这不太合适 因为仅当用户输入完整条目时才调用验证方法
  • 如何检查 perl 中是否声明了变量?

    我在用use strict 在 perl 中 我使用以下语句 unless defined x print Not defined 其中 x 没有在任何地方声明 所以我希望它打印 Not defined 但它返回一个错误 Global sy
  • 创建 JSONObject 时 org.json 未报告异常

    谁能帮助我理解出了什么问题 unreported exception org json JSONException must be caught or declared to be thrown jsonObj new JSONObject
  • 将浮点数组转换为字符串的最快方法是什么? [复制]

    这个问题在这里已经有答案了 在 C 中将浮点数组转换为字符串的最快方法是什么 如果我的数组包含这个 0 1 1 1 1 0 0 2 然后我希望每个条目转换为一个字符串 其值由空格分隔 即 0 1 1 1 1 0 0 2 我会选择最具可读性的
  • 在数据框上使用 If/Else

    我有一个数据集 看起来像 data lt c 0 1 2 3 4 2 3 1 4 3 2 4 0 1 2 0 2 1 2 0 4 frame lt as data frame data 我现在想在此数据框中创建一个新变量 如果 数据 列报告
  • Laravel 5 - 查找模型的分页页面

    我正在努力建立一个基本论坛 灵感来自laracasts com 讨论 当用户发布对主题的回复时 我想引导他们到列表的末尾分页回复及其回复的锚点 与 Laracasts 的行为相同 我还想在用户编辑回复之一时将其返回到正确的页面 我怎样才能知
  • LinkedList 上的 LINQ - 迭代 LinkedListNode,而不是 T

    我在理解如何在 LINQ 中执行某些操作时遇到问题 我有一个链表 对象的类型并不重要 重要的是我想做一些事情Where 基于当前对象之间的关系以及列表中的下一个 为什么我不能做类似的事情 linkedlist Where n gt a fu
  • 什么会导致算法具有 O(log n) 复杂度?

    我对大 O 的了解是有限的 当对数项出现在方程中时 它让我更加困惑 有人可以用简单的语言向我解释一下什么是O log n 算法是 对数从何而来 当我试图解决这个期中练习题时 特别出现了这个问题 令 X 1 n 和 Y 1 n 包含两个整数列
  • 如何修复此跨域 ActionScript 3 错误?

    我将尽可能具体和详细 并包含一些我正在使用的代码 我已经进行了搜索并发现这个问题 这看起来很相似 然而 作者使用的是 ActionScript 2 而不是 3 我似乎无法有效地将给出的任何答案应用于我自己的情况 我试图通过 Flash Ac
  • Nix 的“callPackage”如何调用没有省略号定义的函数?

    要调用使用集合解构的 Nix 函数 您需要向其传递一个集合exactly它需要的键不多也不少 nix repl gt a a a 4 b 5 error anonymous function at string 1 2 called wit
  • 如何像具有 https 的网页一样设置加密的 mosquitto 代理?

    我正在尝试设置一个使用 ssl tls 加密的 mosquitto 代理 我不想生成客户端证书 我只想要一个加密连接 手册页仅描述了可用的设置 没有描述需要哪些设置以及如何使用它们 需要哪些设置以及如何设置它们 我用的是蚊子1 3 5 这里