Я установил postfix + SPF на нашем почтовом сервере. Вот мой
/etc/postfix-policyd-spf-python/policyd-spf.conf
.
debugLevel = 3
defaultSeedOnly = 1
HELO_reject = SPF_Not_Pass
Mail_From_reject = Fail
PermError_reject = False
TempError_Defer = False
Reject_Not_Pass_Domains = aol.com,hotmail.com, gmail.com, yahoo.com
skip_addresses = 127.0.0.0/8,::ffff:127.0.0.0/104,::1
Я установил reject_unverified_sender
для различных клиентов и доменов отправителя, используя check_client_access
и check_sender_access
.
Однако я получаю следующее сообщение, которое не было отклонено. (Я отредактировал адреса отправителя и получателя.)
Sep 30 19:36:40 server2 policyd-spf[21248]: None; identity=helo; client-ip=202.212.75.207; helo=mail.saketoba.net; envelope-from=non_existent_address@gmail.com; receiver=me@mydomain.tld
Sep 30 19:36:40 server2 policyd-spf[21248]: Softfail; identity=mailfrom; client-ip=202.212.75.207; helo=mail.saketoba.net; envelope-from=non_existent_address@gmail.com; receiver=me@mydomain.tld
Sep 30 19:36:40 server2 policyd-spf[21248]: Action: prepend: Text: Received-SPF: Softfail (domain owner discourages use of this host) identity=mailfrom; client-ip=202.212.75.207; helo=mail.saketoba.net; envelope-from=non_existent_address@gmail.com; receiver=me@mydomain.tld
Sep 30 19:36:40 server2 postfix/smtpd[20716]: NOQUEUE: reject: RCPT from st2383.nas811.p-tokyo.nttpc.ne.jp[202.212.75.207]: 450 4.1.7 <non_existent_address@gmail.com>: Sender address rejected: unverified address: host gmail-smtp-in.l.google.com[74.125.200.27] said: 550-5.1.1 The email account that you tried to reach does not exist. Please try 550-5.1.1 double-checking the recipient's email address for typos or 550-5.1.1 unnecessary spaces. Learn more at 550 5; from=<non_existent_address@gmail.com> to=<me@mydomain.tld> proto=ESMTP helo=<mail.saketoba.net>
Из того, что я понял из справочных страниц и онлайн-справки, Softfail
возникает из gmail.com
, говоря, что это мешает использование клиента на хосте 202.212.75.207
. Это правильно? Если да, то почему сообщение не было отклонено сразу?
Спасибо.
Кажется, я нашел причину: пробел до gmail.com
и до yahoo.com
в строке Reject_Not_Pass_Domains
в policyd-spf.conf
. После того, как я удалил пробелы, я получаю отказ на Softfail с gmail.com. На странице man
в policyd-spf.conf
это не упоминается, но для "SPF IP Whitelist" (Whitelist
) и "SPF Domain Whitelist" (Domain_Whitelist
) упоминается, что в списке, разделенном запятыми, не должно быть пробелов.