Секция [Maild]

В секции [Maild] собраны параметры работы центрального компонента Dr.Web MailDMailD core.

ProtectedNetworks = {Lookup}

Список сетей, защищаемых Dr.Web MailD. Значения записываются с использованием бесклассовой адресации (CIDR).

Этот параметр используется для определения доверенных сетей в соответствующих настройках подключаемого модуля Vaderetro, и если в параметре SessionRestrictions  в секции [Receiver] указано значение trust_protected_networks.

Обратите внимание, что значение параметра – Lookup.

На использование Lookup в данном параметре наложен ряд ограничений, указанных ниже.

Пример:

ProtectedNetworks = 10.0.0.0/24, 127.0.0.0/8, "mysql:select net from networks where net='$s'"

Значение по умолчанию:

ProtectedNetworks = 127.0.0.0/8

ProtectedDomains = {Lookup}

Задает список доменов, защищаемых Dr.Web MailD.

Этот параметр используется для определения доверенных доменов, если в параметре SessionRestrictions в секции [Receiver] указано значение trust_protected_domains.

Обратите внимание, что значение параметра – Lookup.

Пример:

ProtectedDomains = example.ru, example.com

Значение по умолчанию:

ProtectedDomains =

IncludeSubdomains = {логический}

Включение поддоменов в список защищаемых доменов.

Значение по умолчанию:

IncludeSubdomains = yes

 

InPoolOptions = {настройки пула}

Настройки пула потоков, обрабатывающих письмо до помещения в очередь.

Значение по умолчанию:

InPoolOptions = auto

 

OutPoolOptions = {настройки пула}

Настройки пула потоков, обрабатывающих письмо после помещения в очередь.

Значение по умолчанию:

OutPoolOptions = auto

Параметр может использоваться в Правилах

RedirectMail = {адрес электронной почты}

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

Значение по умолчанию:

RedirectMail = root@localhost

 

OnlyTrustedControlMails = {логический}

Возможность отправлять управляющие письма только из защищаемой сети.

Если компонент Receiver не передал информацию об IP-адресе клиента, то необходимо с помощью параметра GetIpFromReceivedHeader (см. ниже) заставить используемый MTA добавлять правильный заголовок Received ко всем письмам, передаваемым на обработку программному комплексу Dr.Web для почтовых серверов UNIX.

Для успешной работы управляющих писем весь исходящий почтовый трафик клиентов должен проверяться с помощью Dr.Web для почтовых серверов UNIX

Значение по умолчанию:

OnlyTrustedControlMails = Yes

Параметр может использоваться в Правилах

MaxScore = {числовое значение}

Максимальный счет сообщения.

Если счет сообщения превысит значение, указанное в данном параметре, то для него выполняются действия, указанные в параметре MaxScoreAction, и проверка сообщения прерывается.

Данный параметр проверяется перед передачей сообщения на проверку подключаемым модулям, а также после проверки каждым из подключаемых модулей.

Значение по умолчанию:

MaxScore = 10000

Параметр может использоваться в Правилах

MaxScoreAction = {список действий}

Действия, выполняемые, если счет письма превысит значение параметра MaxScore.

Должно быть задано одно основное действие (обязательно), и, возможно, несколько дополнительных.

К основным действиям относятся:

pass, discard, reject, tempfail.

Дополнительно могут быть заданы следующие действия:

quarantine, redirect, add-header, score.

Если указано основное действие reject и значение параметра UseCustomReply установлено в yes, то SMTP-ответ берется из параметра ReplyMaxScore (см. ниже). После выполнения всех действий проверка сообщения завершается.

Значение по умолчанию:

MaxScoreAction = reject

 

MaxMimeParts = {числовое значение}

Максимальное число MIME-частей в письме.

Если значение параметра равно 0, то проверка не производится. В случае, если число MIME-частей в письме превысит указанное в параметре значение, разбор и проверка сообщения прерываются и для него выполняются действия, указанные в параметре ProcessingError (см. ниже).

Значение по умолчанию:

MaxMimeParts = 1000

 

MaxNestedMimeParts = {числовое значение}

Максимальное число вложенных в письмо MIME-частей.

Если значение параметра равно 0, то проверка не производится. В случае, если число вложенных MIME-частей в письме превышает указанное в параметре значение, то разбор и проверка сообщения прерываются, и для него выполняются действия, указанные в значении параметра ProcessingError (см. ниже).

Значение по умолчанию:

MaxNestedMimeParts = 100

Параметр может использоваться в Правилах

LicenseLimit = {список действий}

Действия над сообщениями, которые не были проверены из-за лицензионных ограничений.

Должно быть задано одно основное действие (обязательно), и, возможно, несколько дополнительных.

К основным действиям относятся:

pass, discard, reject, tempfail.

Дополнительно могут быть заданы следующие действия:

quarantine, redirect, notify, add-header, score.

Значение по умолчанию:

LicenseLimit = pass

Параметр может использоваться в Правилах

EmptyFrom = {список действий}

Реакция на пустое поле From в заголовках письма. Подобная ситуация возможна при использовании DSN (которые в соответствии с требованиями протокола должны иметь пустое поле From); также это поле обычно не заполняют спамеры.

Должно быть задано одно основное действие (обязательно), и, возможно, несколько дополнительных.

К основным действиям относятся:

continue, discard и reject.

Дополнительно могут быть заданы следующие действия:

quarantine, redirect, add-header, score.

Значение по умолчанию:

EmptyFrom = continue

Параметр может использоваться в Правилах

ProcessingErrors = {список действий}

Действие, применяемое к сообщениям, вызвавшим ошибки сканирования.

Должно быть задано одно основное действие (обязательно), и, возможно, несколько дополнительных.

К основным действиям относятся:

pass, discard, reject, tempfail.

Дополнительно могут быть заданы следующие действия:

quarantine, redirect, notify, add-header, score.

Обратите внимание на особенности обработки ошибок, приведенные ниже.

Значение по умолчанию:

ProcessingErrors = pass

 

PidFile = {путь к файлу}

Путь к PID-файлу процесса drweb-maild (исполняемого модуля центрального компонента MailD core)

Значение по умолчанию:

PidFile = %var_dir/run/drweb-maild.pid

 

RulesLogLevel = {уровень подробности}

Определяет уровень подробности журнала работы обработчика Правил.

Допустимо использование следующих уровней:

Quiet

Error

Alert

Info

Debug

Значение по умолчанию:

RulesLogLevel = Alert

В тех случаях, когда сообщение блокируется программным комплексом (т.е. для сообщения срабатывает действие reject), его SMTP-ответ состоит из кода ошибки 550 5.7.0 и текстового сообщения, содержание которого может задаваться параметрами, описанными ниже.

Параметр может использоваться в Правилах

UseCustomReply = {логический}

Использование настраиваемых сообщений в SMTP-сессии.

Данные сообщения будут отправляться в качестве SMTP-ответа в случае, если входящее сообщение отклонено.

Значение по умолчанию:

UseCustomReply = No

Параметр может использоваться в Правилах

ReplyEmptyFrom = {текст}

Ответ, отправляемый клиенту при срабатывании действия EmptyFrom, если:

EmptyFrom = reject;

UseCustomReply = Yes.

Возможно задать только текстовую часть ответа: "550 5.7.0 <Текст>".

В случае если текст содержит пробелы, он должен быть заключен в кавычки.

Значение по умолчанию:

ReplyEmptyFrom = "DrWEB maild: Messages from <> are blocked by administrator."

Параметр может использоваться в Правилах

ReplyProcessingError = {текст}

Ответ, отправляемый клиенту при срабатывании действия ProcessingError, если:

ProcessingError = reject;

UseCustomReply = Yes.

Возможно задать только текстовую часть ответа: "550 5.7.0 <Текст>".

В случае если текст содержит пробелы, он должен быть заключен в кавычки.

Значение по умолчанию:

ReplyProcessingError = "Dr.Web MailD: Message is rejected due to software error."

Параметр может использоваться в Правилах

ReplyMaxScore = {текст}

Ответ, отправляемый клиенту при срабатывании действия MaxScoreAction, если:

MaxScoreAction = reject;

UseCustomReply = yes.

Возможно задать только текстовую часть ответа: "550 5.7.0 <Текст>".

В случае если текст содержит пробелы, он должен быть заключен в кавычки.

Значение по умолчанию:

ReplyMaxScore = "Dr.Web MailD: Message is rejected due to score limit exceed."

 

GetIpFromReceivedHeader = {логический}

Предписывает MailD core использовать в качестве IP-адреса клиента значение, извлеченное компонентом Receiver из заголовка Received.

Обратите внимание, что компонент Receiver не всегда может определить IP-адрес клиента на основе анализа заголовка Received.

Значение по умолчанию:

GetIpFromReceivedHeader = Yes

 

Control = {логический}

Включение интерактивного управления для модуля drweb-maild (компонент MailD core).

Значение по умолчанию:

Control = No

 

ControlAddress = {адрес}

Адреса, используемые подсистемой интерактивного управления модуля drweb-maild (компонент MailD core).

Значение по умолчанию:

ControlAddress = inet:3009@127.0.0.1

 

ControlPoolOption = {настройки пула}

Настройки пула потоков для сокета интерактивного управления drweb-maild.

Значение по умолчанию:

ControlPoolOption = auto

 

SkipDSNOnBlock = {логический}

Отказ от отправления DSN, если при выполнении действий Reject или Tempfail код возврата невозможно вернуть компоненту Receiver.

Значение по умолчанию:

SkipDSNOnBlock = No

Особенности использования Lookup в параметре ProtectedNetworks

Нельзя использовать в качестве значений этого параметра Lookup, использующие извлечение из источника данных IP-адреса сети по имени домена или имени пользователя (т.е. использующие макросы $d, $u), покольку на том этапе сессии, когда производится обращение к этому параметру для проверки ограничения SessionRestrictions = trust_protected_network, имеется только информация об IP-адресе, с которого произведено подключение клиента и нет возможности разрешения его в FQDN.

Например, попытка использования Lookup с SQL-запросом

select net from networks where domain='$d'

приведет к тому, что адрес net не будет выбран из БД, и поэтому не будет помечен как доверенный.

Однако вы можете использовать Lookup, использующие извлечение из источника данных IP-адреса сети по полному адресу (т.е. использующие макрос $s), но помните, что на данном этапе он будет указывать на IP-адрес клиента, поэтому его можно использовать только в запросах к источникам данных, содержащим перечни IP-адресов, или имеющим возможность выполнить самостоятельное разрешение FQDN по известному IP-адресу. Например, такой запрос будет корректным:

select net from networks where net='$s'

И если в поле net присутствует IP-адрес клиента, подставленный в запрос через макрос $s, то он будет помечен как доверенный.

Также обратите внимание, что в Lookup для этого параметра не имеет смысла использование настройки SkipDomains (она никогда не сработает, поскольку имя домена на этапе сессии, когда используется этот параметр, не известно).

Подробнее об ограничениях на использование имени домена и пользователя см. в описании типа Lookup.

Особенности обработки ошибок

Пожалуйста, обратите внимание, что если в процессе обработки сообщений происходит событие, подпадающее под любое из указанных ограничений (MaxScore, MaxMimeParts, LicenseLimit) или произойдет ошибка обработки, то выполняется действие, указанное в соответствующем параметре:

EmptyFrom

MaxScoreAction

LicenseLimit

ProcessingErrors

Крайне внимательно относитесь к действию, заданному в этих параметрах. Помните, что:

1.Если задано действие discard, reject или tempfail, то обработка сообщения останавливается, оно удаляется и не доставляется получателю. В случае discard oтправитель письма также не получает никакого уведомления о том, что письмо было отвергнуто. Действия reject и tempfail отличаются от discard тем, что в этом случае производится уведомление отправителя о том, что его сообщение было отклонено. В зависимости от режима работы, уведомление отправителя осуществляется либо SMTP-ответом (в синхронном режиме, через Receiver), либо отправкой ему соответствующего DSN (в асинхронном режиме, через Sender).

2.Если выбрано действие pass, то обработка письма прерывается и оно сразу же поступает на доставку, минуя всю незаконченную обработку (например, подключаемые модули, которые тоже должны были проверить это письмо, но еще не успели это сделать, вызваны не будут). При этом если событие возникло до сохранения письма на диск (т.е. в момент обработки письма подключаемыми модулями из очереди BeforeQueue), то письмо будет посылаться синхронно, а если после сохранения (при обработке подключаемыми модулями из очереди AfterQueue) – асинхронно.

3.В действии EmptyFrom действие pass не может быть указано. Вместо него можно использовать действие continue, которое приводит к тому, что письмо поступает на проверку подключаемыми модулями (т.к. событие EmptyFrom может наступить только до обработки письма подключаемыми модулями).

warning

Пожалуйста, обратите внимание, что если в качестве основного действия в параметре ProcessingErrors задано действие discard, reject или tempfail, то не следует задавать значение параметра IpcTimeout (секция [General]) малым, поскольку проверка содержимого писем подключаемыми модулями может продолжаться долго. В этом случае истечение заданного тайм-аута до окончания проверки расценивается как ошибка, и поэтому, в соответствии с действием, заданным в ProcessingErrors, письмо будет удалено прямо в процессе проверки, что может привести к его потере и недоставке получателю без отправки соответствующего уведомления отправителю.