Image

База знаний → Защита от спама средствами Postfix

[Виртуальные сервера]
Дата публикации: 14.06.2023

Конфигурационный файл службы Postfix позволяет произвести более тонкую настройку и собственными средствами сократить кол-во спама на уровне самой службы. В данном руководстве мы будем блокировать почту от отправителей без PTR записи, с некорректным приветствием, а также по спискам DNSBL.

1. Внесем данные настройки в конфигурационный файл (закомментируем строку):

nano /etc/postfix/main.cf

#smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination

Добавим следующую конфигурацию:

nano /etc/postfix/main.cf

smtpd_client_restrictions = permit_mynetworks permit_sasl_authenticated reject_unauth_pipelining permit

smtpd_helo_restrictions = permit

smtpd_sender_restrictions = permit_mynetworks permit_sasl_authenticated reject_non_fqdn_sender reject_unknown_sender_domain permit

smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination

smtpd_recipient_restrictions = permit_mynetworks permit_sasl_authenticated reject_non_fqdn_recipient reject_unauth_destination reject_unknown_recipient_domain reject_unverified_recipient reject_unknown_client_hostname reject_invalid_helo_hostname reject_non_fqdn_helo_hostname reject_unknown_helo_hostname reject_rbl_client b.barracudacentral.org reject_rbl_client dnsbl.abuse.ch reject_rbl_client bl.spamcop.net reject_rbl_client dul.ru permit

smtpd_data_restrictions = permit

smtpd_end_of_data_restrictions = permit

Для применения настроек перезапустим postfix:

systemctl restart postfix

Убирая или добавляя правила мы можем регулировать уровень требовательности к отправителю, например популярные почтовые сервисы в своем большинстве принимают почту с некорректным приветствием сервера и без сопоставления PTR записи к MX. Ниже приведено описание настроек:

  • permit_mynetworks — разрешает все адреса, перечисленные в настройках mynetworks. 
  • allow_sasl_authenticated - Разрешает запросы от всех клиентов, успешно прошедших проверку подлинности.
  • reject_unauth_pipelining — отклоняет предварительно отправленные электронные письма (пропуская правильную цепочку сеансов SMTP). 
  • reject_non_fqdn_sender — отклонить соединение, если адрес отправителя неверен. 
  • reject_unknown_sender_domain — отклоняет запрос, если Postfix не является конечным пунктом назначения для адреса отправителя, в то время как заголовок MAIL FROM не имеет: записи DNS MX и записи DNS A. 
  • reject_non_fqdn_recipient — отказать в соединении, если адрес получателя неверный. 
  • reject_unauth_destination — запрещает подключение к службе без авторизации.
  • reject_unknown_recipient_domain — отклонить запрос, если домен отправителя не имеет в DNS записей: MX и A. 
  • reject_unverified_recipient — отклонить запрос, если известно, что почта на адрес RCPT TO была отклонена или когда адрес получателя недоступен. 
  • reject_unknown_client_hostname — проверяет наличие PRT-записи отправителя и наличие рабочей А-записи в соответствие PTR. 
  • reject_invalid_helo_hostname — проверяет синтаксис HELO-приветствия. 
  • reject_non_fqdn_helo_hostname — требует правильного FQDN-имени во время HELO-приветствия.
  • reject_unknown_helo_hostname — запрещает представляться именами, для которых нет А-записи или MX. 
  • reject_rbl_client — проверяет наличие отправителя в черных списках.
  • permit - Разрешить подключение. Присутствует в конце каждого блока (если письмо не попало не под одно правило запрета - доставляем).




Юрий
23.11.2023 05:24
reject_rbl_client 1 и 3 домены "Сервер не найден", 2 не ггрузит, 4 домен продаётся. Мне кажется с проверкой в чёрных списках толку нет
Support Synay
25.11.2023 01:13
1 точно рабочий, свежий отчет (https://synay.net/support/kb/postfix-log-parser-with-pdf-report-on-mail)

message reject detail
---------------------
RCPT
blocked using b.barracudacentral.org (total: 99)
74 192.xxx.216.130
14 91.122.xxx.94
2 157.xx.204.210
2 94.139.xxx.39