Rabbitmq

RabbitMQ CRL 配置

  • April 12, 2016

我一直在嘗試尋找在 RabbitMQ 中配置 CRL 檢查的可用選項。RabbitMQ 反過來似乎依賴於 Erlang 的 SSL 庫。不幸的是,我對 Erlang 知之甚少,所以我一直很難理解:

  • 基於 HTTP 超時的 CRL 方法的確切語法(如果這是從證書的 CRL 資訊中自動提取的)
  • 如果有現成可用的基於本地文件的 CRL 方法

crl_cache 配置選項的範例很難找到。有沒有人有這方面的進一步資訊?

RabbitMQ TLS 支持頁面中的配置範例開始,添加crl_checkcrl_cache選項,如下所示:

[
 {rabbit, [
    {ssl_listeners, [5671]},
    {ssl_options, [{cacertfile,"/path/to/testca/cacert.pem"},
                   {certfile,"/path/to/server/cert.pem"},
                   {keyfile,"/path/to/server/key.pem"},
                   {verify,verify_peer},
                   {fail_if_no_peer_cert,false}]},
                   {crl_check, true},
                   {crl_cache, {ssl_crl_cache, {internal, [{http, 5000}]}}}
  ]}
].

設置crl_checktrue意味著將檢查整個證書鏈的 CRL,如果缺少任何 CRL,驗證將失敗。您可以將其設置為peerbest_effort改為;有關詳細資訊,請參閱Erlangssl模組文件

在上面的範例中,我通過 HTTP 啟動了 CRL 下載,超時時間為 5 秒(5000 毫秒)。URL 取自cRLDistributionPoints證書中的副檔名。


目前沒有現成可用的基於本地文件的 CRL 方法,但我送出了一個拉取請求,讓您可以像 Apache 一樣從本地目錄獲取 CRL。

引用自:https://serverfault.com/questions/752233