【发布时间】:2011-08-08 07:14:10
【问题描述】:
我一直在尝试为我的 rabbitMQ 应用程序建立 ssl 支持,我已按照 rabbitmq 文档link 在我的 rabbit .net 应用程序中包含 ssl 支持,我已经能够成功地为 ssl 身份验证创建证书并为rabbit创建了一个配置文件并将其放置在rabbitMQ文件夹内的appdata文件夹中,配置文件的代码:
[
{rabbit, [
{ssl_listeners, [5671]},
{ssl_options, [{cacertfile,"C:\testca\cacert.cer"},
{certfile,"C:\server\cert.pem"},
{keyfile,"C:\server\key.pem"},
{verify,verify_peer},
{fail_if_no_peer_cert,false}]}
]}
]
我已经像这样为发布者修改了我的 rabbitMQ 的 c# 代码:
ConnectionFactory factory = new ConnectionFactory();
factory.Ssl.ServerName = System.Net.Dns.GetHostName();
factory.Ssl.CertPath = "C:\\server\\keycert.p12";
factory.Ssl.CertPassphrase = "password";
factory.Ssl.Enabled = true;
但出现错误:BrokerUnreachableException 未处理。
任何提示或帮助?有什么遗漏的可以告诉我吗?
我正在使用 RabbitMQ:2.51。 二郎:R14B01 操作系统:Windows 和 .net 客户端。
堆栈跟踪:
Exception Message: None of the specified endpoints were reachable
Source: RabbitMQ.Client
Stacktrace: at RabbitMQ.Client.ConnectionFactory.CreateConnection(Int32 maxRedirects)
at RabbitMQ.Client.ConnectionFactory.CreateConnection()
at RabbitProducer.Program.Main(String[] args) in C:\Users\pc 1\Documents\Visual Studio 2008\Projects\RabbitProducer\RabbitProducer\Program.cs:line 36
经纪人日志:
=INFO REPORT==== 9-Aug-2011::11:39:05 ===
Limiting to approx 924 file handles (829 sockets)
=INFO REPORT==== 9-Aug-2011::11:39:05 ===
Memory limit set to 804MB.
=INFO REPORT==== 9-Aug-2011::11:39:05 ===
msg_store_transient: using rabbit_msg_store_ets_index to provide index
=INFO REPORT==== 9-Aug-2011::11:39:05 ===
msg_store_persistent: using rabbit_msg_store_ets_index to provide index
=INFO REPORT==== 9-Aug-2011::11:39:05 ===
started TCP Listener on [::]:5672
=INFO REPORT==== 9-Aug-2011::11:39:05 ===
started TCP Listener on 0.0.0.0:5672
【问题讨论】: