Настройка списков доступа (Access Control) в Policyd

После того как установили Policyd пришло время заняться его настройкой, в данной статье речь пойдет о запрете доступа на основании списков доступа (Access Control).

По умолчанию создаются 2 группы (Policies\Groups) в которые предлагается заносить внутренние домены (internal_domains) и внутренние ip-адреса (internal_ips).

Кроме групп, создаются политики, которые применяются в порядке очереди. Политики с меньшим приоритетом применяются раньше.

  • Default - в данную политики попадают все;
  • Default Outbound - исходящая почта, применяется к письмам, источник которых внутренний (%internal_ips, %internal_domains), а назначение внешнее (!%internal_domains);
  • Default Inbound - входящая почта, источник не внутренний (!%internal_ips, !%internal_domains), назначение внутренние домены (%internal_domains);
  • Default Internal - внутренняя почта, источник и назначение - внутренние домены.
Знак процента (%) перед именем означает принадлежность к группе, восклицательный знак (!) - отрицание.

Настройка модуля Access Control

Исходные данные: имеем почтовый сервер mail.example.com, обслуживающий зону example.com.

Требуется запретить прием писем от домена itzx.ru на все ящики домена example.com, кроме ящика vip@example.com, письма на его должны приходить без ограничений.

Создадим группы (Policies - Groups):

Группа bad_senders в которую будут входить те кто не может присылать к нам почту:

group_bad

Группа users_without_restrictions, письма для членов этой группы будут приходить без ограничений, даже от bad_senders:

group_vip

Создаем политики (Policies - Main):

Политики применяются в зависимости от приоритета, сначала выполнится политика с приоритетом 10, затем 20.

policy_list

Политика Accept all mail for VIP для почты, которая предназначается членам группы users_without_restrictions (щелкните на политику и выберете Action - Members):

policy_accept

Политика Reject mail from bad_domains для почты исходящей из доменов в группе bad_senders:

policy_reject

Обязательно убедитесь, что везде Disabled: no (группы, политики, правила и т.д.)

Проверка результата

При таких настройках контроля доступа, письма на ящик vip@example.com будут приходить без ограничений Policyd. На все другие ящики письма с домена itzx.ru будут отклоняться. Пользователь отправитель получит:

<test@example.com>: host mail.example.com[62.220.58.71] said: 554 5.7.1
<info@itzx.ru>: Sender address rejected: Sorry, you are bad_senders (in
reply to RCPT TO command)

На сервере получателе в логах почты будет примерно следующие:

# cat /var/log/maillog | grep "Sorry"
Jan 23 14:38:02 ns4 postfix/smtpd[13266]: NOQUEUE: reject: RCPT from mail.itzx.ru[87.250.241.193]:
554 5.7.1 <info@itzx.ru>: Sender address rejected: Sorry, you are bad_senders; from=<info@itzx.ru> 
to=<test@example.com> proto=ESMTP helo=<mail.itzx.ru>

Добавить комментарий


Защитный код
Обновить