Я просто обновил свой Debian 7, Nginx 1.6.2, PHP 5.4.39 к Debian 8, Nginx 1.6.2, PHP 5.6.9.
Существует CRM, работающая на том сервере, где мы раньше посылали электронные письма через PHP, EspoCRM, и это использует электронную почту ZendFramwork2 (отправляющий через сервер 2 - отправляющий через Thunderbird, работает просто великолепно).
Это работало просто великолепно до окончания обновления. Теперь у меня есть ошибка при высказывании:
500 unable to connect via tls
Таким образом, немного поиска ничего не подняло с CRM, а скорее указывает на сам подписанный сертификат и/или что-то в стеке выше (NGinx/PHP?).
Какая-либо идея, где начать рыть? В моем сервере CRM у меня ничего нет в журналах ошибок (угадайте, что это глотает CRM).
Я ничего не вижу в системном журнале или authlog maiml сервера также.
Править: Добавьте информацию:
phpinfo ()
Registered Stream Socket Transports tcp, udp, unix, udg, ssl, sslv3, tls, tlsv1.0, tlsv1.1, tlsv1.2
curl
SSL Yes
SSL Version OpenSSL/1.0.1k
imap
SSL Support enabled
openssl
OpenSSL support enabled OpenSSL
Library Version OpenSSL 1.0.1k 8 Jan 2015 OpenSSL Header Version
OpenSSL 1.0.1k 8 Jan 2015 Directive Local Value Master Value
openssl.cafile no value no value openssl.capath no value no value
Phar
OpenSSL support enabled
Я использовал старый файл конфигурации от Debian 7 (NGinx является той же версией - я использовал бэкпорт на D7).
Серверы и программное обеспечение:
Сервер A: Mailserver, Debian 6, Постфикс, самоподписал сертификаты
Сервер B: Debian 8, Nginx, PHP, EspoCRM - я выбрал TLS, так как он работает в моем Thunderbird над моим локальным ПК, и он работал перед обновлением Debian 7 to 8.
Локальный ПК: Kubuntu, Thunderbird, Письма могут быть отправлены и получены через TLS.
500 ayikwazi ukunxibelelana nge-tls
Ayiloncedo kakhulu ekuchongeni ukuba ingxaki ikuphi- kodwa kufuneka ibekhona kwenye ikhowudi ekungaqinisekwanga ukuba uyayigcina, yiyo loo nto ulungisa ikhowudi ukuyenza isebenze kufuneka ibe licebo lokugqibela.
Iya kuba luncedo ukwazi ukuba yeyiphi inyathelo elibangela lempazamo.
Ukusukela ekuphela kwendawo kwindawo yakho ekhankanya isatifikethi esityikitywe nguwe ngumncedisi weposi, ke ndiyakucinga ukuba yile nto ibangela ingxaki apha.
Konke okufuneka ukwenze kukudibanisa isatifikethi esityikitywe nguwe kwabasemagunyeni kwindawo yesicelo. Ukuthatha (kwakhona) ukuba i-MTA isebenzisa i-SMTPS:
openssl s_client -showcerts -connect servera.example.com:465 </dev/null
Iya kukunika ikhonkco lesatifikethi. Khuphela imveliso kwi (yithi) /etc/ssl/certs/lbutlr_local.crt
emva koko usebenzise uhlaziyo-lwezatifikethi
Njengoko ndiyiqonda, i-PHP 5.6 ayikuvumeli ukwamkela okanye ukuqhuba ii-cert ezityikityiwe.
http://php.net/manual/en/migration56.openssl.php
Kuya kufuneka ukhubaze ukungqinisisa amagama oontanga kunye namaqabane
$streamContext = stream_context_create([
'ssl' => [
'verify_peer' => false,
'verify_peer_name' => false
]
]);
Ayisiyonto ilula ukuba uzama ukuyenza ngaphakathi kwephakheji (ebonakala ngathi iyilwe), awunakuseta ezinye iiflegi php.ini okanye Nantoni na elula enjalo.