mosquitto配置通过ssl通信

mosquitto配置通过ssl通信

摘自https://www.cnblogs.com/stin/p/9258211.html

注意项:

For openssl >= 1.0.1 the valid values are tlsv1.2 tlsv1.1 and tlsv1.

For openssl < 1.0.1 the  valid values are tlsv1.
我本机上用的openssl 1.0.2g , tls_version要配置为 tlsv1.2

ca 和client,server的common name 不能一样,如ca配置为0.0.0.0 ,client、server配置为本机IP地址则可,

否则会报错  :OpenSSL Error: error:14094418:SSL routines:SSL3_READ_BYTES:tlsv1 alert unknown ca

附:推荐windows上好用的openssl

http://slproweb.com/products/Win32OpenSSL.html

 搞了好长时间的:

1442592862: OpenSSL Error: error:14094416:SSL routines:SSL3_READ_BYTES:sslv3 alert certificate unknown 1442592862: OpenSSL Error: error:140940E5:SSL routines:SSL3_READ_BYTES:ssl handshake failure

这个报错不是因为证书错,而是因为命令行中没写 -h,-p参数!!!虽然在mosquitto.conf中配置了,但
mosquitto.conf是服务端的配置文件,不是客户端的!另外涨了个知识
在windows和linux上生成证书文件是无差别的,证书是跨平台的!!!

生成证书文件的步骤:

step1 -- 产生CA的key和证书文件

  openssl req -new -x509 -days 36500 -extensions v3_ca -keyout ca.key -out ca.crt

step2 -- 为mosquittoserver产生一个私钥文件server.key

  openssl genrsa -out server.key 2048

  openssl genrsa -des3 -out server.key 2048(加密方式)

step3 -- 为mosquitto server产生一个签发证书的请求文件“server.csr”

  openssl req -out server.csr -key server.key -new

step4 -- 为mosquitto server产生一个证书文件

  openssl x509 -req -in server.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out server.crt -days 36500

给client生成证书文件重复step2-step4

原文地址:https://www.cnblogs.com/LiuYanYGZ/p/10371635.html

时间: 2024-10-19 03:07:21

mosquitto配置通过ssl通信的相关文章

SSL 通信原理及Tomcat SSL 配置

SSL 通信原理及Tomcat SSL 双向配置 目录1 参考资料 .................................................................................................................................. 12 SSL(Server Socket Layer)简介 .......................................................

java版mosquitto客户端使用SSL功能的具体操作总结

在开发java版mosquitto客户端程序时需要使用paho库,如果开发的java客户端要用ssl功能,则需要Bouncy Castle库:在使用ssl功能时,需要证书文件进行进行身份认证,但在测试过程中,只自己制作ca并进行证书签发即可.在测试过程中首先创建一个统一的ca,该ca包括一个crt文件,一个key文件(例如ca.crt.ca.key):测试过程中,要使用该ca为每个测试的机子签发证书,例如:mosquitto服务器运行在192.168.4.223的linux机子上,java版的客

SSL通信-证书认证错误忽略

.NET的SSL通信过程中,使用的证书可能存在各种问题,某种情况下可以忽略证书的错误继续访问. 经过下面的处理服务器证书验证中不会有错误发生,证书认证一直通过,并正常通信 1.设置回调属性ServicePointManager.ServerCertificateValidationCallback 注:这个属性设置为要用于客户端的服务器证书的自定义验证方法 C#代码 1 ServicePointManager.ServerCertificateValidationCallback = 2 new

转【翻译】如何在Ubuntu 12.04上配置Apache SSL证书

关于SSL证书 SSL证书是加密站点信息和创建一个更安全的连接的一种方式.另外,证书可以向站点访问者展示VPS的身份信息.证书颁发机构颁发SSL证书,用来验证服务器的详细信息,而一个自签名的证书缺乏第三方机构的证明. 设置 以下教程,需要拥有VPS上root权限. 另外,你的虚拟服务器上需要安装并运行有apache.如果没有安装,可以通过以下命令安装: sudo apt-get install apache2 第一步--启用SSL模块 下一步启用SSL sudo a2enmod ssl 紧接着重

Nginx下配置网站SSL实现https访问本站就是用的这方法

本文出至:新太潮流网络博客 第一步:服务器环境,lnmp即Linux+Nginx+PHP+MySQL,本文中以我的博客为例,使用的是阿里云最低档的ECS+免费的Linux服务器管理系统WDCP快速搭建的lnamp环境,具体安装以及使用方法都可以在其官方论坛找到详细的操作文档. 第二步:创建你的网站,使用lnamp环境创建你的网站,已有网站的,确保你的程序在lnamp下能够正常的运行,以wordpress为例,lamp跟lnamp下的伪静态规则是不同的,有过更换的,要记得切换. 第三步:申请免费的

【C#】Socket中的ssl通信

引言    有个项目中用到了Socket ssl通信,在此记录一下. 证书 Socket ssl需要用到证书用来校验身份,而作为调试,我们只需用测试证书即可. 有个工具可以很方便地制作测试证书,下载地址为http://supersocket.codeplex.com/releases/view/59311 首先, 输入Common Name,密码和保存路径后,我们可以得到包含私钥的证书server.pfx. 然后,安装证书到电脑中,在IE选项中导出一份证书作为client.cer. 客户端 使用

Linux与云计算——第二阶段 第九章:Mail电子邮件服务器架设—配置基于SSL的邮件服务器以及虚拟域的使用

Linux与云计算--第二阶段Linux服务器架设 第九章:Mail电子邮件服务器架设-配置基于SSL的邮件服务器以及虚拟域的使用 邮件客户端配置 可以自行选择电子邮件客户端根据服务器的配置进行设置即可.推荐使用foxmail或者outlook等客户端软件. 配置SSL 配置SSL来加密连接. SMTPS使用端口465/TCP, POP3S使用端口995/TCP, IMAPS使用端口993/TCP. [1] 创建证书 [2] 给Postfix和Dovecot配置SSL. [[email prot

YS端对端之间SSL通信安全问题

1.简介:          传统的互联网,SSL通信主要基于客户端和服务器之间,在物联网时代,端和端之间的加密通信将变得很普遍,在YS业务中主要的端和端通信为: (1).客户端(移动APP,YS工作室和web)和设备之间的双向通信. (2).设备和设备之间的双向通信. 为保障用户通信安全,端和端之间的通信实施SSL通信. 注:实际上是基于客户端的hik的SDK和设备之间的通信,使用了hik SDK的客户端都可以和hik的设备进行通信. 主要的场景图如下:   2.业务需求:         

Omnibus Gitlab CentOS 7使用Let&#39;s Encrypt配置免费ssl

首先安装omnibus gitlab,参照 https://about.gitlab.com/downloads/ 参照以下两篇文章结合配置: https://certbot.eff.org/#centosrhel7-nginx https://webnugget.de/setting-up-gitlab-with-free-ssl-certs-from-lets-encrypt-on-ubuntu-14-04/ 1.安装certbot. $ sudo yum install epel-rele