emqx 配置ssl/tls 双向认证(亲自测试有效)

这篇具有很好参考价值的文章主要介绍了emqx 配置ssl/tls 双向认证(亲自测试有效)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

  • bash脚本,生成自签名ca、服务端、客户端的key和证书
  • #/bin/sh
    rm -f ca.*
    rm -f emqx.*
    rm -f client.*
    # 生成自签名的CA key和证书
    openssl genrsa -out ca.key 2048
    openssl req -x509 -new -nodes -key ca.key -sha256 -days 3650 -out ca.pem -subj "/C=CN/ST=Jiangsu/L=Suzhou/O=XXX/CN=SelfCA"
    #openssl req -x509 -new -nodes -key ca.key -sha256 -days 3650 -out ca.pem
     
    # 生成服务器端的key和证书
    openssl genrsa -out emqx.key 2048
    openssl req -new -key ./emqx.key -config openssl.cnf -out emqx.csr
    openssl x509 -req -in ./emqx.csr -CA ca.pem -CAkey ca.key -CAcreateserial -out emqx.pem -days 3650 -sha256 -extensions v3_req -extfile openssl.cnf
     
     
    # 生成客户端key和证书
    openssl genrsa -out client.key 2048
    openssl req -new -key client.key -out client.csr -subj "/C=CN/ST=Jiangsu/L=Suzhou/O=XXX/CN=client"
    openssl x509 -req -days 3650 -in client.csr -CA ca.pem -CAkey ca.key -CAcreateserial -out client.pem
     
     
    openssl.cnf配置文件
  • [req]
    default_bits  = 2048
    distinguished_name = req_distinguished_name
    req_extensions = req_ext
    x509_extensions = v3_req
    prompt = no
    [req_distinguished_name]
    countryName = CN
    stateOrProvinceName = Jiangsu
    localityName = Suzhou
    organizationName = XXX
    commonName = Emqx
    [req_ext]
    subjectAltName = @alt_names
    [v3_req]
    subjectAltName = @alt_names
    [alt_names]
    IP.1 = 192.168.60.135
    IP.2 = 127.0.0.1
    #DNS.1 = BROKER_ADDRESS
     
    验证证书是否有效
  • openssl verify -CAfile ca.pem emqx.pem
    openssl verify -CAfile ca.pem client.pem
    将证书文件拷贝到emqx\etc\certs目录下(默认目录),并修改配置文件emqx.conf。SSL/TLS 双向连接的启用及验证
  • ## NOTE:
    ## This config file overrides data/configs/cluster.hocon,
    ## and is merged with environment variables which start with 'EMQX_' prefix.
    ##
    ## Config changes made from EMQX dashboard UI, management HTTP API, or CLI
    ## are stored in data/configs/cluster.hocon.
    ## To avoid confusion, please do not store the same configs in both files.
    ##
    ## See https://www.emqx.io/docs/en/v5.0/configuration/configuration.html for more details.
    ## Configuration full example can be found in etc/examples
    
    node {
      name = "emqx@127.0.0.1"
      cookie = "emqxsecretcookie"
      data_dir = "data"
    }
    
    cluster {
      name = emqxcl
      discovery_strategy = manual
    }
    
    dashboard {
        listeners.http {
            bind = 18083
        }
    }
    
    listeners.ssl.default {
       bind = "0.0.0.0:8883"
       ssl_options {
         cacertfile = "/opt/emqx/etc/certs/ca.pem"
    
         certfile = "/opt/emqx/etc/certs/server.pem"
         keyfile = "/opt/emqx/etc/certs/server.key"
         # 私钥文件受密码保护时需要输入密码
         #password = "123456"
    
         # 单向认证,不验证客户端证书
         #verify = verify_none
          verify = verify_peer
          fail_if_no_peer_cert = true
       }
     }
    

    mqttx连接验证

  • emqx 配置ssl/tls 双向认证(亲自测试有效),Java,ssl,网络协议,网络

出现连接成功,代表测试无问题

emqx 配置ssl/tls 双向认证(亲自测试有效),Java,ssl,网络协议,网络 文章来源地址https://www.toymoban.com/news/detail-838537.html

到了这里,关于emqx 配置ssl/tls 双向认证(亲自测试有效)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • MySQL安全性:用户认证、防范SQL注入和SSL/TLS配置详解

    MySQL作为广泛使用的关系型数据库管理系统,安全性至关重要。在本篇技术博客中,我们将深入探讨MySQL的用户认证方式、防范SQL注入攻击的方法以及SSL/TLS加密的配置。 MySQL支持多种用户认证方式,其中两种常见方式是caching_sha2_password和mysql_native_password。 1.1 caching_sha2_passwor

    2024年02月02日
    浏览(32)
  • PostgreSQL安装和开启SSL加密连接【配置单/双向认证】

    SSL单向认证和双向认证: SSL单向认证 :只有一端校验对端的证书合法性,通常都是客户端来校验服务器的合法性。即在一般的单向认证中,只要求服务器端部署了ssl证书就行,客户端可以无证书,任何用户都可以去访问服务端,服务端只是提供了身份认证。 client: 无证书

    2024年02月06日
    浏览(36)
  • JAVA使用RestTemplate类实现SSL双向/单向认证(国际)

    以管理员身份打开Windows PowerShel,通过cd(与linux系统类似)命令进入到JDK的bin目录:如C:Program FilesJavajdk1.8.0_221jrebin,找到目录下有keytool.exe就是正确进入目录了 参数说明: genkey 表示要创建一个新的密钥 alias 表示 keystore 的别名、 keyalg 表示使用的加密算法是 RSA ,一种非

    2024年02月15日
    浏览(27)
  • Elastic stack8.10.4搭建、启用安全认证,启用https,TLS,SSL 安全配置详解

    ELK大家应该很了解了,废话不多说开始部署 kafka在其中作为消息队列解耦和让logstash高可用 kafka和zk 的安装可以参考这篇文章 深入理解Kafka3.6.0的核心概念,搭建与使用-CSDN博客 需要 elasticsearch-8.10.4 logstash-8.10.4 kibana-8.10.4 kafka_2.13-3.6.0 apache-zookeeper-3.9.1-bin.tar filebeat-8.10.4-linux-

    2024年02月04日
    浏览(32)
  • [grpc]双向tls加密认证

    假设gRPC服务端的主机名为 qw.er.com ,需要为gRPC服务端和客户端之间的通信配置tls双向认证加密。 生成ca根证书。生成过程会要求填写密码、CN、ON、OU等信息,记住密码。 新建并编辑文件 openssl.cnf 文件。req_distinguished_name中内容按需填写,DNS.1要替换成实际域名。 生成服务端证

    2024年02月14日
    浏览(33)
  • 双向SSL认证证书 生成 jks 步骤, java用jks 发送http请求 方法

    ) 1.证书的 cert.pem 文件 2.key文件 3.key的密钥 这里只显示 liunx 命令 ,windows 的同学可自查 这个命令会提示输入3次密码 ,第一次输入xxx.key的密码 , 第二次提示输入导出密码 自己设就行 ,这里用 changeit 注意: 第一次 不是自己设的 需要用 key文件的密钥 这里会用 上一步骤的导

    2024年02月06日
    浏览(32)
  • SSL双向认证与单向认证

    参考:https://www.cnblogs.com/bluestorm/p/10571989.html整理 双向认证 SSL 协议要求服务器和用户双方都有证书。单向认证 SSL 协议不需要客户拥有CA证书 流程图: ①客户端–服务器 客户端SSL协议的版本号,加密算法的种类,产生的随机数,以及其他服务器和客户端之间通讯所需要的各

    2024年02月08日
    浏览(30)
  • SSL单向认证和双向认证分析

    SSL单向认证和双向认证 【ssl认证、证书】SSL双向认证和SSL单向认证的区别(示意图)

    2024年02月14日
    浏览(36)
  • SSL单双向认证

    HTTPS协议是在HTTP+TLS/SSL协议组成的可进行加密传输、身份认证的网络协议,旨在保证数据传输过程中的保密性、完整性和安全性。 HTTPS在HTTP和TCP之间,增加了TLS/SSL协议 正是通过TLS协议,才能保证HTTP通信是安全的。 TLS主要通过信息加密、校验机制和身份证书来保证数据安全,

    2024年02月11日
    浏览(26)
  • python tcp socket中实现SSL/TLS认证

    官话说SSL是安全套接层(secure sockets layer),TLS是SSL的继任者,叫传输层安全(transport layer security)。 说白点,就是在明文的上层和TCP层之间加上一层加密,这样就保证上层信息传输的安全。如HTTP协议是明文传输,加上SSL层之后,就有了雅称 HTTPS 。它存在的唯一目的就是 保证上层

    2024年01月23日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包