Для работы по протоколу Milter

warning

Для работы в этом режиме требуется версия Postfix не ниже 2.3.3.

Поскольку по умолчанию Dr.Web для почтовых серверов UNIX и Postfix настроены для работы в режиме after-queue, то новые настройки для работы по протоколу Milter должны будут быть внесены в конфигурационные файлы Postfix вместо уже имеющихся (т.е.  вместо параметра content_filter должен быть указан параметр smtpd_milters, а описанные выше изменения в файле master.cf должны быть удалены). В случае необходимости указания ограничений (restrictions), они могут быть заданы отдельно – непосредственно в конфигурационных файлах Postfix.

Адрес транспортного соединения, через которое осуществляется взаимодействие между Postfix и модулем drweb-milter может быть задан как в формате TCP-сокета, так и в формате UNIX-сокета.

Адрес задается в параметре smtpd_milters конфигурационного файла системы Postfix main.cf. В том случае, если соединение осуществляется через TCP-сокет, значение этого параметра записывается в формате inet:host:port (например, smtpd_milters=inet:127.0.0.1:3001). Если же соединение осуществляется через UNIX-сокет, то формат параметра – unix:pathname, где pathname – абсолютный путь к UNIX-сокету.

warning

В случае если адрес задается в формате UNIX-сокета, необходимо, чтобы Postfix имел право записи в файл, указанный в качестве сокета

Адрес транспортного соединения между системой Postfix и модулем drweb-milter также должен быть задан в параметре Address секции [Milter] конфигурационного файла Dr.Web MailD. Значение и формат этого параметра должны быть идентичны формату и значению параметра smtpd_milters файла main.cf.

Кроме транспортного адреса, в конфигурационный файл main.сf необходимо добавить следующие параметры:

milter_content_timeout = 300s - это важный таймаут системы Postfix, устанавливающий в том числе и максимальное время проверки письма Dr.Web MailD в синхронном режиме. Желательно, чтобы значение этого параметра было больше, чем значение параметра ProcessingTimeout секции [Milter] конфигурационного файла Dr.Web MailD.

milter_default_action = tempfail - параметр определяет действия Postfix при ошибках взаимодействия с модулем drweb-milter;

milter_protocol = 6 - требуемая версия протокола Milter;

milter_mail_macros = _ - задание этого параметра необходимо, чтобы Dr.Web MailD мог определить IP-адрес и имя хоста, от которого принято сообщение.

milter_end_of_data_macros = i {auth_type} - задание этого параметра позволяет получить идентификатор письма и информацию об авторизации для вывода информации в журнал drweb-milter.

Также, пожалуйста, обратите внимание на особенности работы через Milter в синхронном и асинхронном режимах.