Я пытаюсь настроить почтовый сервер postfix, и у меня есть сомнения по поводу таких параметров, как smtpd_reject_unlisted_sender
и тому подобное.
Конечно, я хотел бы настроить свой сервер таким образом, чтобы клиент (например, john@mydomain.com), являющийся «mydomain.com», размещенным доменом моего сервера, использовал его MUA SMTP-клиента (например, Outlook или Thunderbird), пытается отправить электронное письмо с from
адрес отличается от john
, запрос отклоняется, а также отклоняет каждое письмо, отправленное от неизвестного «отправителя», если только этот отправитель не принадлежит другому «безопасному» / «существующему» домену.
Я знаю, как мне настроить подобные вещи, но я не знаю, каковы «возможности» этих ограничений.
Конкретный пример: если я установил smtpd_reject_unlist_sender
к on
, а alice@gmail.com отправляет письмо на адрес john@mydomain.com, письмо Алисы будет отклонено, поскольку это неизвестный отправитель? Я не хочу отклонять этот тип писем, а в конфигурации постфикса не указано, к каким классам адресов принадлежит каждый *_reject_*
параметр (по умолчанию, размещенный или канонический).
Postfix предоставляет несколько «проверок», которые можно оценивать на разных «этапах» входящего SMTP-соединения. «Чеки» - это что-то вроде «проходит ли удаленный клиент с аутентификацией SASL?»,«предоставляет ли удаленный клиент полное доменное имя HELO Hostname?»,«удаленный клиент запрашивает конвейерную обработку SMTP?", так же как "удаленный клиент занесен в черный список в некоторой RBL?" или "удаленный клиент подключается из одной из моих IP-подсетей»?
Такие проверки можно оценивать на разных этапах SMTP-транзакции:
а также на других этапах.
Вышеуказанные ограничения / директивы можно комбинировать, как в следующем примере (обратите внимание, что «... ограничения применяются в указанном порядке; первое совпадающее ограничение побеждает”):
smtpd_client_restrictions =
permit_sasl_authenticated
check_client_access hash:/etc/postfix/access
check_policy_service inet:127.0.0.1:4466
warn_if_reject reject_unknown_reverse_client_hostname
reject_non_fqdn_helo_hostname
reject_unauth_pipelining
reject_invalid_helo_hostname
reject_rbl_client bl.spamcop.net
smtpd_sender_restrictions =
reject_non_fqdn_sender,
reject_unknown_sender_domain,
check_sender_access hash:/etc/postfix/sender_access
smtpd_recipient_restrictions =
check_policy_service inet:127.0.0.1:10045,
permit_sasl_authenticated,
reject_invalid_helo_hostname,
reject_non_fqdn_recipient,
reject_unknown_recipient_domain,
check_recipient_access hash:/etc/postfix/access_recipient
permit_mynetworks,
warn_if_reject reject_unverified_recipient,
reject_unauth_destination,
check_policy_service inet:127.0.0.1:2501`
Для правильного ЗАПИСИ полезной информации, которая может быть неизвестна в «smtpd_client_restrictions»(Или другой), параметр« smtpd_delay_reject = yes »может быть полезен, так как он задерживает« время отказа », чтобы собирать другую информацию (например, получатель очень полезен для правильного устранения проблем с жалобами конечных пользователей за недостающую полученную почту).
Postfix - очень сложная система и, как таковая, чрезвычайно гибкая и мощная. Вы можете найти много информации на официальных веб-страницах (например: http://www.postfix.org/postconf.5.html), который, кстати, включает в себя также некоторые полезные конфигурации, которые можно использовать в качестве отправной точки для вашей собственной настройки (http://www.postfix.org/STANDARD_CONFIGURATION_README.html)
P.S .: пожалуйста, будьте «любезны» с этим ответом, поскольку ... это мой первый POST на арене ServerFault / StackExchange ;-)
smtpd_reject_unlisted_sender
используется для управления почтой от ваших локальных отправлений или от пользователей, прошедших проверку подлинности sasl, через порт отправки. Проверяет наличие конверта от ака SMTP FROM
адреса в исходящих электронных письмах ваших пользователей против адресов в виртуальных доменах или канонических.