RabbitMQ+;TLS:ssl\u升级\u错误
按照说明,我已经建立了一个证书颁发机构,并使用适当的字段创建了RabbitMQ+;TLS:ssl\u升级\u错误,ssl,rabbitmq,rabbitmqctl,Ssl,Rabbitmq,Rabbitmqctl,按照说明,我已经建立了一个证书颁发机构,并使用适当的字段创建了rabbitmq.config。但是,当我尝试使用连接到RabbitMQ服务器时 openssl s_client -connect 127.0.0.1:5671 -tls1 我在标准输出中得到以下结果: CONNECTED(00000003) write:errno=104 --- no peer certificate available --- No client certificate CA names sent --- S
rabbitmq.config
。但是,当我尝试使用连接到RabbitMQ服务器时
openssl s_client -connect 127.0.0.1:5671 -tls1
我在标准输出中得到以下结果:
CONNECTED(00000003)
write:errno=104
---
no peer certificate available
---
No client certificate CA names sent
---
SSL handshake has read 0 bytes and written 0 bytes
---
New, (NONE), Cipher is (NONE)
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
SSL-Session:
Protocol : TLSv1
Cipher : 0000
Session-ID:
Session-ID-ctx:
Master-Key:
Key-Arg : None
PSK identity: None
PSK identity hint: None
SRP username: None
Start Time: 1449612785
Timeout : 7200 (sec)
Verify return code: 0 (ok)
---
我在日志中看到以下错误:
=ERROR REPORT==== 8-Dec-2015::16:13:10 ===
Error on AMQP connection <0.257.0>:
{ssl_upgrade_error,
{options,
{cacertfile,"/home/nthompson/learn_celery/testca/cacert.pem",
{error,eacces}}}}
rabbitmq.config
中的所有路径,并通过设置{verify,verify\u none}
和{fail\u if\u no\u peer\u cert,false}
放松了证书交换策略rabbitmq\u auth\u机制\u ssl
插件
$ sudo rabbitmq-plugins enable rabbitmq_auth_mechanism_ssl
并验证它是由rabbitmq服务器
拾取的。此外,我将{auth_机制,['PLAIN',AMQPLAIN',EXTERNAL']}
添加到rabbitmq.config
中经过一番周折和搜索,我终于找到了它 在我的例子中,问题是由证书文件的所有权和权限引起的
我编辑了我的
/etc/rabbitmq/rabbitmq.config
,以便证书、密钥和CAfile指向/etc/rabbitmq/conf/.pem
,复制了/etc/rabbitmq/conf/
中的原始.pem
文件,然后我chown-R rabbitmq:rabbitmq/etc/rabbitmq/conf
重新启动了服务服务rabbitmq服务器重新启动
,它成功了。您尝试过这里列出的方法吗?你设法解决了这个问题吗?我有完全相同的一个,rabbitMQ的疑难解答页面完全没有用处。
$ sudo rabbitmq-plugins enable rabbitmq_auth_mechanism_ssl