Monitを実行して、Debianサーバー上のプロセスをチェックし続けます。他のすべてのサービス(Apache SSL、Postfix、SSHなど)では通常どおり機能しますが、DovecotでのMonitのチェックは繰り返し失敗します。これはいくつかのパッケージアップデートをインストールした後に始まったと思いますが、いつかはわかりません。
電子メールがまだ機能しているため、Dovecotはクライアント接続に対して正しく機能しています。 open_ssl s_clientでテストしてみましたが、SSLv3、TLS1.1、TLS1.2でも問題ないようです。
/ etc/monit/monitrcのDovecotセクション:check process dovecot with pidfile /run/dovecot/master.pid start program = "/usr/sbin/service dovecot start" stop program = "/usr/sbin/service dovecot stop" if failed port 993 type tcpssl sslauto protocol imap then unmonitor
Dovecotの監視を有効にすると、/ var/log/monitに次のメッセージが表示されます:'dovecot' failed protocol test [IMAP] at INET[localhost:993] via TCPSSL -- IMAP: error receiving data -- Success
このようなものかもしれないと思いました https://secure.kitserve.org.uk/content/ssl-tls-version-conflict-zarafa-monit しかし、「sslauto」を次のように置き換えてみましたこれらのオプションはすべて順番に実行されますが、運がありません:SSLV2 | SSLV3 | TLSV1 | TLSV11 | TLSV12
私が参照しているMonitのドキュメントはここにあります: http://mmonit.com/monit/documentation/#connection_testing
前もって感謝します
TomDoggが述べたように、問題は http://osdir.com/ml/ubuntu-security-announce/2014-05/msg00023.html によって引き起こされます。
このフォーラムの詳細: http://comments.gmane.org/gmane.comp.monitoring.monit.general/7378
参考までに、IMAPではなくPOPを使用しようとしても、問題は同じです。
考えられる解決策は次のとおりです。
これらの2つのパッチを適用するか、それらがメインストリームリリースの一部になるのを待ちます。
http://hg.dovecot.org/dovecot-2.2/rev/09d3c9c6f0ad
http://hg.dovecot.org/dovecot-2.2/rev/7129fe8bc26
Sebastian Sが回答で述べたように、SSLなしでpopまたはimapを監視します。
if failed Host localhost port 143 type tcp protocol imap then restart
Kexikが提案したように、imapまたはpopなしでのみポートを監視します
if failed port 993 for 5 cycles then restart
オプション1が唯一の実際の解決策です。他の2つでは、テストしたいと思っていたものとは異なるものをテストする必要がありますが、更新を待つ間、少なくとも簡単に同様のテストを提供します。
一般的にdovecotを監視する場合は、次の構成を使用して、SSLなしでポート143を監視することを検討してください。
if failed Host localhost port 143 type tcp protocol imap then restart
次のコマンドでバージョンを確認してください。
$ monit -V
sslauto
をTLSV11
またはTLSV12
に置き換えることは、5.8
からのみ可能です。
(たとえば、Ubuntuのリポジトリには、今日の時点で5.6
しかありません。)
問題/コミットの詳細については、こちらをご覧ください: https://bitbucket.org/tildeslash/monit/issue/14/monit-33-add-support-for-tlsv11-and-tlsv12
したがって、次のいずれかを実行できます。
a)monitをバージョン5.8
(またはそれ以上)に強制的に更新する、または
b)マシンにSSLV2
またはSSLV3
またはTLSV1
などの古いTLSバージョンを使用させ、sslauto
を監視チェックに保持するか。
c)ディストリビューションが5.8
を利用できるようになるまで、監視チェックをコメントアウトします。