21.5. Создание белых списков

Проблема

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

Решение

В Postfix эта задача решается при помощи текстового файла с адресами и директивы smtpd_sender_restrictions в файле /etc/postfix/main.cf.

Создайте файл, содержащий адреса, которые вы хотите внести в белый список, указывая один адрес на строку:

myfriend@mypal.com ОК
myotherfriend@thatplace.com ОК
mychum@techies.net ОК

Присвойте текстовому файлу имя, например /etc/postfix/whitelist. После этого преобразуйте его в индексированную базу данных:

# postmap /etc/postfix/whitelist

Теперь добавьте следующую строку в /etc/postfix/main.cf:

smtpd_sender_restrictions = check_sender_access hash:/etc/postfix/whitelist

Postfix поддерживает три формата базы данных. Чтобы узнать, какой тип используется в вашей системе, выполните команду:

$ postconf | grep database_type
default_database_type = hash

Комментарий

Файлы баз данных Postfix могут быть в одном из трех форматов: hash, btree или dbm. Файлы hash и btree обычно имеют расширение .db. Базы данных dbm состоят из двух файлов с расширениями .pag и .dir. В большинстве систем Linux по умолчанию используется формат hash.

Настройка белых списков адресов — это важный шаг при конфигурации почтовой фильтрации, так как она позволяет избежать случайной блокировки сообщений от доверенных источников.

Формат белого списка схож с файлом /etc/postfix/access. Директива check_sender_access сравнивает содержимое белого списка с командой MAIL FROM во время транзакции SMTP (даже если команда может быть подделана, проверка всё равно полезна). В следующем примере демонстрируются различные форматы указания адресов:

Указание ОК в файле списка означает, что сообщение от этого отправителя должно быть принято без блокировки. При этом формат белого списка даёт гибкость в указании источников, от которых почта гарантированно будет доходить.

Белые списки могут использоваться для создания отдельных правил доступа для разных доменов или пользователей. Например, вы можете разрешить доступ для внутренних корпоративных отправителей, таких как intranet@mycompany.com, или для партнёрских доменов. Таким образом, вы сможете наладить надёжную доставку важных сообщений, даже если общая система фильтрации настроена строго.

Также можно комбинировать белые списки с другими методами фильтрации в Postfix, такими как проверка обратных DNS-записей или фильтрация по IP-адресам, чтобы создать более точные и безопасные условия для приёма почты.

И помните, что настройки должны периодически обновляться. Если изменится список доверенных отправителей, не забудьте обновить файл и перезапустить службу Postfix для применения изменений.

См. также

RFC 2821; раздел 21.3; файл Postfix SMTPD_ACCESS_README; access(5).