我有两个服务器,兔子mq正在运行,并且是集群的。我有一个CA签名的证书,这是在两个服务器上配置的。其中一台服务器已启动并正在运行,但另一台服务器提供证书未知错误。
我真的很困惑为什么同一组证书在一台服务器上工作,而不是在另一台服务器上工作。
[
{rabbit, [
{ssl_listeners, [ 5671]},
{ssl_options, [{cacertfile, "/etc/rabbitmq/certificates/RootCA.crt.pem"},
{certfile, "/etc/rabbitmq/certificates/sserver_cert.pem"},
{keyfile, "/etc/rabbitmq/certificates/server_key.pem"},
{depth, 2},
{verify,verify_none},
{fail_if_no_peer_cert, false}]}
]}
].兔MQ和Erlang版本
{erlang_version,
"Erlang/OTP 17 [erts-6.3] [source] [64-bit] [smp:4:4] [async-threads:30] [kernel-poll:true]\n"},
[{rabbitmq_management,"RabbitMQ Management Console","3.5.3"},
{rabbitmq_web_dispatch,"RabbitMQ Web Dispatcher","3.5.3"},
{webmachine,"webmachine","1.10.3-rmq3.5.3-gite9359c7"},
{mochiweb,"MochiMedia Web Server","2.7.0-rmq3.5.3-git680dba8"},
{rabbitmq_management_agent,"RabbitMQ Management Agent","3.5.3"},
{rabbit,"RabbitMQ","3.5.3"},我在其中一个服务器上遇到的错误:
=ERROR REPORT==== 10-May-2016::20:21:52 ===
SSL: certify: ssl_alert.erl:92:Fatal error: certificate unknown
=ERROR REPORT==== 10-May-2016::20:21:52 ===
Error on AMQP connection <0.27744.2>:
{ssl_upgrade_error,{tls_alert,"unexpected message"}}
=ERROR REPORT==== 10-May-2016::20:21:52 ===
SSL: certify: ssl_alert.erl:92:Fatal error: unexpected message
=ERROR REPORT==== 10-May-2016::20:21:52 ===
Error on AMQP connection <0.27748.2>:
{ssl_upgrade_error,{tls_alert,"unexpected message"}}
=ERROR REPORT==== 10-May-2016::20:21:52 ===
SSL: certify: ssl_alert.erl:92:Fatal error: unexpected message
=ERROR REPORT==== 10-May-2016::20:21:53 ===
Error on AMQP connection <0.27752.2>:
{ssl_upgrade_error,{tls_alert,"certificate unknown"}}
=ERROR REPORT==== 10-May-2016::20:21:53 ===
SSL: certify: ssl_alert.erl:92:Fatal error: certificate unknown发布于 2016-05-16 23:34:58
我只想让兔子和TLS一起工作,没什么大不了的。
作为另一种选择,我们最终使用了stunnel (https://www.stunnel.org/index.html)并在客户机和服务器端创建了透明的隧道连接。
它实际上运行得相当好,因为它具有额外的开发好处,不需要更改客户端代码,只需要更改它们连接到的网络地址。
https://stackoverflow.com/questions/37147342
复制相似问题