CentOS Rocky Linux RabbitMQ SSL TLS配置https amqp 5671

1、使用 OpenSSL 创建必要的证书。为了签署证书,我们首先需要证书签名请求 (CSR)。
#创建一对证书签名请求(CSR)文件
openssl req -new -nodes -text -out ca.csr -keyout ca-key.pem -subj "/CN=certificate-authority"
然后我们需要 4 个文件:服务器 (RabbitMQ) 的密钥和证书以及客户端 (Xray) 的密钥和证书
#使用CSR文件创建服务器TLS服务器证书颁发机构、密钥和证书
openssl x509 -days 36500 -req -in ca.csr -text -extfile /etc/pki/tls/openssl.cnf -extensions v3_ca -signkey ca-key.pem -out ca-cert.pem
openssl req -new -nodes -text -out server.csr -keyout server-key.pem -subj "/CN=rabbitmq"
openssl x509 -days 36500 -req -in server.csr -text -CA ca-cert.pem -CAkey ca-key.pem -CAcreateserial -out server-cert.pem
#创建客户端CSR和证书
openssl req -new -nodes -text -out client.csr -keyout client-key.pem -subj "/CN=rabbitmq"
openssl x509 -days 36500 -sha256 -req -in client.csr -text -CA ca-cert.pem -CAkey ca-key.pem -CAcreateserial -out client-cert.pem
最后,您应该有以下文件:
server-cert.pem
server-key.pem
client-cert.pem
client-key.pem
ca-cert.pem

2、将这三个服务器文件复制到rabbitMQ可以到达的文件夹中:
cp ca-cert.pem server-cert.pem server-key.pem /etc/ssl/rabbitmq/

3、现在赋予用户、组和对复制文件的正确权限
chown rabbitmq /etc/ssl/rabbitmq/*
chgrp rabbitmq /etc/ssl/rabbitmq/*
chmod 644 /etc/ssl/rabbitmq/*

4、将这些 TLS 设置添加到 /etc/rabbitmq/rabbitmq.conf 文件中。请注意,我们在 ssl_options 行中传递了三个 PEM 文件的路径。
vi /etc/rabbitmq/rabbitmq.conf

//以下是amqps SSL证书配置
listeners.ssl.default = 5671
ssl_options.cacertfile = /etc/ssl/rabbitmq/ca-cert.pem
ssl_options.certfile = /etc/ssl/rabbitmq/server-cert.pem
ssl_options.keyfile = /etc/ssl/rabbitmq/server-key.pem
ssl_options.verify = verify_peer
ssl_options.fail_if_no_peer_cert = true

//ssl_options.fail_if_no_peer_cert = false 输入以下内容
ssl_options.ciphers.1 = AES256-SHA256
ssl_options.ciphers.2 = AES256-GCM-SHA384
ssl_options.honor_cipher_order = true
ssl_options.honor_ecc_order = true

//开启web 15672管理SSL访问
management.listener.port = 15672
management.listener.ssl = true