Назад | Перейти на главную страницу

Monit не может подключиться к Dovecot через SSL IMAP

Я запускаю Monit, чтобы постоянно проверять процессы на сервере Debian. Он работает как обычно для всех других служб (Apache SSL, Postfix, SSH и т. Д.), Но проверки Monit на Dovecot неоднократно терпят неудачу. Я думаю, что это могло начаться после установки некоторых обновлений пакета, но я не уверен, когда.

Dovecot правильно работает для клиентских подключений, поскольку электронная почта все еще работает. Я пробовал тестировать с open_ssl s_client, и оттуда все выглядит нормально для SSLv3, TLS1.1 и TLS1.2.

Раздел Dovecot из / etc / monit / monitrc: 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

заранее спасибо

Проблема вызвана http://osdir.com/ml/ubuntu-security-announce/2014-05/msg00023.html как сказал ТомДогг.

На этом форуме есть более подробная информация: http://comments.gmane.org/gmane.comp.monitoring.monit.general/7378

К вашему сведению, проблема такая же, даже если вы попытаетесь использовать POP вместо IMAP.

Вот возможные решения:

  1. Примените эти 2 патча или дождитесь, пока они станут частью основного выпуска:

    http://hg.dovecot.org/dovecot-2.2/rev/09d3c9c6f0ad
    http://hg.dovecot.org/dovecot-2.2/rev/7129fe8bc260

  2. Отслеживайте либо pop, либо imap без SSL, как сказал Себастьян С.

    if failed host localhost port 143 type tcp protocol imap then restart
    
  3. Следите за портом только без imap или pop, как предложил kexik

    if failed port 993 for 5 cycles then restart
    

Вариант 1 - единственное реальное решение, так как два других заставляют вас протестировать что-то другое, что вы надеялись протестировать, но они, по крайней мере, легко предоставляют аналогичный тест, пока вы ждете обновления.

Если вы хотите контролировать dovecot в целом, вы можете рассмотреть возможность мониторинга порта 143 без SSL, используя следующую конфигурацию:

  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

Итак, вы можете:

а) принудительно обновить monit до версии 5.8 (или выше), или

б) заставить ваш компьютер использовать старую версию TLS, например SSLV2 или SSLV3 или TLSV1 и хранить sslauto в вашем контрольном чеке, или

в) закомментируйте проверку монитора, пока ваш дистрибутив 5.8 доступный.