Создание "белых списков" адресов в Postfix

Определение "белых списков" адресов - это первый шаг при настройке любой фильтрации почты. Этим вы гарантируете, что почта от нужных вам людей, не будет отвергнута как спам или остановлена одним из антивирусных сканеров. Разберем эту возможность на примере Postfix.


Определение "белых списков" адресов в Postfix  решается при помощи файлов map и директивы smtpd_sender_restriction в конфигурационном файле /etc/postfix/main.cf.

Создадим в любимом текстовом редакторе файл с примерным содержимым:

vasya@domain.tt           OK
@trustdomain.tt           OK
.mytrustdomain.tt         OK

Далее, выйдем из редактора с сохранением  содержимого в виде файла /etc/postfix/whitelist.

Теперь преобразим наш файл whitelist в индексированную базу данных, выполнив команду:

# postmap /etc/postfix/whitelist

В результате этого будет создана база данных формата hash (используется в Linux по умолчанию), содержащая список "белых адресов" пользователей или доменов, которым мы доверяем.

Следующим действием будет добавление в конфигурационный файл Postfix (/etc/postfix/main.cf) следующей строки:

smtpd_sender_restrictions = check_sender_access  hash:/etc/postfix/whitelist

Postfix поддерживает три формата баз данных (hash, btree или dbm). Возможно, что вместо hash вам потребуется указать другой формат, который используется по умолчанию в вашей системе.

Для того, чтобы узнать  какой тип использует ваша система, выполните:

$ postconf | grep database_type

результатом может быть вывод:

default_database_type = hash

или:

default_database_type = btree

или:

default_database_type = dbm

 

В нашем примере файла /etc/postfix/whitelist мы используем следующие правила: разрешаем всю почту от одного пользователя: vasya@domain.tt разрешаем всю почту со всех адресов домена trustdomain.tt: @trustdomain.tt разрешаем всю почту с домена mytrustdomain.tt (включая его поддомены): .mytrustdomain.tt