centos6.9 rabbitmq设置SSL

发布时间:2020-03-26 10:31:57编辑:admin阅读(3208)


    一、概述

     由于安全团队要求,需要给rabbitmq加上SSL,java代码使用ssl秘钥进行连接。

     

    二、正式部署

    环境说明:

    操作系统ip主机名配置rabbitmq版本
    centos 6.9192.168.31.7mq_011核2g3.8.2
    centos 6.9192.168.31.216mq_021核2g3.8.2
    centos 6.9192.168.31.214mq_031核2g3.8.2

     

     

     

     

     

     

    环境是在上一篇文章基础上配置ssl,链接如下:

    https://www.cnblogs.com/xiao987334176/p/12304608.html

     

    生成证书

    网上有文章说,有一个github项目,可以一键生成证书,链接如下:

    https://github.com/Berico-Technologies/CMF-AMQP-Configuration.git

    但是生成的证书,使用代码测试不通过。

     

    因此,在github上面,找了一个rabbitmq ssl项目,里面有提供证书。直接使用里面的证书即可,代码测试也可以通过。

    链接如下:

    https://github.com/Nepitwin/RabbitSSL

     

    里面有提供Python脚本,里面有3个证书文件

    ca_certificate.pem
    client_certificate.pem
    client_key.pem

    接下来,我将这3个文件,加载到rabbitmq里面

     

    配置rabbitmq

    创建证书目录

    mkdir /etc/rabbitmq/cert

    将3个证书文件,放到此目录

     

    修改配置文件

    vi /etc/rabbitmq/rabbitmq.config

    完整内容如下:

    [
      {rabbit, [
         {ssl_listeners, [5671]},
         {ssl_options, [{cacertfile,"/etc/rabbitmq/cert/ca_certificate.pem"},
                        {certfile,"/etc/rabbitmq/cert/client_certificate.pem"},
                        {keyfile,"/etc/rabbitmq/cert/client_key.pem"},
                        {verify,verify_peer},
                        {fail_if_no_peer_cert,true}]}
       ]}
    ].

    重启rabbitmq

    /etc/init.d/rabbitmq-server restart

     

    查看5671端口

    命令行查看

    登录任意节点,使用命令行查看

    # ss -tunlp|grep 5671
    tcp    LISTEN     0      128                   :::5671                 :::*      users:(("beam.smp",27893,96))

     

    mq后台页面查看

    登录之后,点击下面的Ports and contexts,就可以看到5671

    1.png

     

      

    本文参考链接:

    https://blog.csdn.net/tiantang_1986/article/details/83996202

    https://www.cnblogs.com/wyt007/p/9086250.html


关键字