Postfix - как защититься от подмены адреса отправителя?

Материал из support.qbpro.ru
  • Устанавливаем необходимые пакеты:
# aptitude install postfix-policyd-spf-python
  • Добавляем в /etc/postfix/main.cf
...
policy-spf_time_limit = 3600s
...
  • Далее ищем объявление smtpd_recipient_restrictions и добавляем в него (после reject_unauth_destination) строку check_policy_service unix:private/policy-spf.
...
reject_unauth_destination
check_recipient_access hash:/etc/postfix/roleaccount_exceptions
reject_non_fqdn_hostname
check_helo_access pcre:/etc/postfix/pcre_helo_checks.cf
check_sender_mx_access cidr:/etc/postfix/cidr_mx_access
check_policy_service unix:private/policy-spf
permit
  • Переходим к файлу /etc/postfix/master.cf: в него добавляем следующую строку:
policy-spf  unix  -       n       n       -       0       spawn
  user=nobody argv=/usr/bin/policyd-spf /etc/postfix-policyd-spf-python/policyd-spf.conf
  • Дополнительные настройки в файле /etc/postfix-policyd-spf-python/policyd-spf.conf и описания настроек в файле policyd-spf.conf.commented. Рабочий вариант policyd-spf.conf:
#  For a fully commented sample config file see policyd-spf.conf.commented
debugLevel = 1 
TestOnly = 1

HELO_reject = Fail
Mail_From_reject = Fail

PermError_reject = False
TempError_Defer = False

## Теперь если письмо с подменом домена и не проходит проверку SPF, то тут же режется.
Reject_Not_Pass_Domains = mail.ru,inbox.ru,list.ru,bk.ru,yahoo.com,googlemail.com,gmail.com

## mynet
skip_addresses = 127.0.0.0/8,192.168.3.0/24,192.168.77.0/24

  • Для дополнительно информации читаем справку
man policyd-spf.conf


ИСТОЧНИКИ: