我使用以下命令在我的 aws EC2 机器上安装了rabbitmq:
sudo apt-get update
sudo apt-get install rabbitmq-server
sudo rabbitmq-plugins enable rabbitmq_management
然后我创建了配置文件
/etc/rabbitmq/rabbitmq.conf
并添加了这些参数
listeners.ssl.1 = 5671
ssl_options.versions.1 = tlsv1.2
ssl_options.versions.2 = tlsv1.1
ssl_options.cacertfile = /usr/local/share/ca-certificates/certifile_authority.crt
ssl_options.certfile = /usr/local/share/ca-certificates/server.crt
ssl_options.keyfile = /usr/local/share/private/server.key
ssl_options.verify = verify_peer
ssl_options.fail_if_no_peer_cert = false
旁注:我相信这些
.crt
文件实际上与.pem
格式相同(但我不确定是否应该将它们重命名为.pem),因为当我尝试使用openssl命令时
sudo openssl x509 -inform DER -outform PEM -in server.crt -out server.pem
我收到了这条消息
unable to load certificate
140162927387072:error:0D0680A8:asn1 encoding routines:asn1_check_tlen:wrong tag:../crypto/asn1/tasn_dec.c:1130:
140162927387072:error:0D07803A:asn1 encoding routines:asn1_item_embed_d2i:nested asn1 error:../crypto/asn1/tasn_dec.c:290:Type=X509
然后我用
sudo service rabbitmq-server restart
重新启动了服务器
但是在查看了/var/log/rabbitmq
目录中的所有日志后,我注意到RabbitMQ甚至没有监听SSL端口5671。我很困惑,不知所措。请帮忙