dovecot

warning: Creating default object from empty value in /usr/data/www/drupal6/modules/taxonomy/taxonomy.pages.inc on line 33.

nginx как прокси для почты

Захотелось немного поиграть в отказоустойчивость почтового сервера.

Одним из необходимых моментов оказалось перенаправление запросов на нужный бэкенд. Заниматься этим умеет Nginx. Статьи по этому поводу в нете присутствуют, но при реализации, как всегда, появляются подводные камни. :-(

Нужно учесть:

  • nginx с бекэндом соединяется исключительно без SSL (или я не понял как настроить подругому)
  • на smtp сервере nginx не авторизуется, соответственно, всякие ограничения на кол-во писем и прочее нужно реализовывать или средствами nginx или с привязкой не к сессии отправителя ($authenticated_id), а к его адресу $sender_address
  • если используется сетевая/кластерная файловая система для хранения почты у Dovecot, то нужно поправить настройки conf.d/10-mail.conf
    mmap_disable = yes
    mail_fsync = always
    mail_nfs_storage = no
    mail_nfs_index = no

     

Долго бился с подключеним модуля mail:

unknown directive "mail"

Оказалось, что нужно его подключать следующим образом:

load_module /usr/local/libexec/nginx/ngx_mail_module.so;

Следующий шаг был скрипт авторизации. Во всех инструкциях он был на перле и мне казался слишком сложным.

В итоге нашел на php и попроще.

0
Your rating: Нет

Учусь использовать Sieve для фильтрации почты на сервере

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

Вроде статей много, как это сделать, но все они упускают 2-а момента:

  1. У пользователся обязательно должен быть так называемый основной скрипт, который все остальные скрипты запускает. В основном, его обзывают ".dovecot.sieve"  и лежит он в корне пользовательского каталога почты. Его содержимое простое до ужаса:
    require ["include"];
    include :personal "my_file_script";

    Соответственно, все файлики со скриптами нужно перечислить, без этого ничего не запустится, сколько бы клевых скриптов не было создано.
  2. Когда пытался из ThunderBird сделать правила, то проблема встала с папочками с русскими именами, ну как обычно. Я пытался использовать не их русское имя, а брать имя из свойства папки, т.е. что-то типа "%26BBgEQQRFBD4ENARPBEkEOAQ1-", что оказалось, хоть и волне логично, но совершенно не верно. Нужно было указывать имя папки русскими буковками, разделяя папочка точками.

После этого, вроде уже нормально все зашуршало.

0
Your rating: Нет
Ленты новостей