Roundcube、php 5.6 和自簽名證書

Roundcube、php 5.6 和自簽名證書

我目前正在將我的一台伺服器移植到另一台伺服器。該伺服器正在使用自簽名憑證執行 Postfix + Dovecot。我的網路前端曾經是圓形立方體。現在的問題是,新伺服器安裝了 PHP 5.6,它在使用自簽名憑證時有已知問題。

首先,roundcube的誤差為:

error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed in /var/www/roundcube/program/lib/Roundcube/rcube_imap_generic.php on line 915
[05-May-2015 13:11:11 +0200]: <8h4tkjbn> IMAP Error: Login failed for XXXXXXXXXXX from XXXXXXXXXXX. Unable to negotiate TLS in /var/www/roundcube/program/lib/Roundcube/rcube_imap.php on line 198 (POST /?_task=login?_task=login&_action=login)

我發現,您可以將其放入config.inc.php

$config['imap_conn_options'] = array( 
  'ssl'         => array( 
     'verify_peer'  => true, 
     'allow_self_signed' => true,
     'verify_depth' => 3, 
     'cafile'       => '/etc/postfix/sslcert/mailserver.crt', 
   ), 
 );

 $config['smtp_conn_options'] = array( 
   'ssl'         => array( 
     'verify_peer'  => true,
     'allow_self_signed' => true,
     'verify_depth' => 3, 
     'cafile'       => '/etc/postfix/sslcert/mailserver.crt', 
   ), 
 );

(.crt 和 .key 檔案的位置是/etc/postfix/sslcert/mailserver.*

當將其放入配置中時,錯誤是:

[05-May-2015 13:13:48 Europe/Berlin] PHP Warning:  stream_socket_enable_crypto(): Unable to locate peer certificate CN in /var/www/roundcube/program/lib/Roundcube/rcube_imap_generic.php on line 915

我嘗試過此配置行的各種變體,但我被困在這裡。也許這裡有人可以幫助我!

如果您需要任何進一步的信息,請發表評論,我將編輯第一篇文章!

答案1

看來您的問題是您指定了郵件伺服器證書,而不是提供證書的 CA 的證書(鏈證書)

相關內容