Это сводит меня с ума ... Linux Debian + postfix ... /etc/postfix/main.cf содержит следующие строки:
smtpd_recipient_restrictions =
check_recipient_access hash:/etc/postfix/access,
reject_invalid_hostname,
reject_non_fqdn_recipient,
reject_non_fqdn_sender,
reject_unauth_destination,
reject_unauth_pipelining,
reject_unknown_recipient_domain,
reject_rbl_client cbl.abuseat.org,
reject_rbl_client sbl-xbl.spamhaus.org,
check_policy_service unix:private/policyd-spf,
check_policy_service inet:127.0.0.1:10023,
permit_auth_destination,
reject
В наши дни postfix отклоняет входящие сообщения с одного IP:
info@domain.ext
SMTP error from remote mail server after RCPT TO:<info@domain.ext>:
host mail.server.ext [123.123.123.123]: 554 5.7.1 Service unavailable; Client host [234.234.234.234] blocked using cbl.abuseat.org; Blocked - see http://cbl.abuseat.org/lookup.cgi?ip=234.234.234.234
Хорошо… http://cbl.abuseat.org/lookup.cgi?ip=234.234.234.234 сообщает об отсутствии в черном списке 234.234.234.234 (очевидно, IP 234.234.234.234 не настоящий).
Десятки электронных писем были заблокированы по той же причине, но каждый раз, когда я вручную запрашиваю RBL, IP-адрес считается чистым.
Кэширует ли postfix запросы к RBL? Что мне не хватает?
Спасибо заранее за ваше время.
С точки зрения верхнего слоя, Postfix полагается на преобразователь libc для поиска DNS (включая RBL), поэтому поведение будет зависеть от библиотеки. Например, postfix всегда будет искать через NS-сервер, определенный в /etc/resolv.conf.
Если у NS-сервера есть механизм кеширования, то postfix тоже получит результат кеширования. Это также происходит, если у вашего провайдера есть "Перехват DNS"(перенаправленный пакет DNS на их сервер NS). В этом случае вы также попадете в их кеш (если они включат это).
Чтобы проверить, какой результат поиска DNS, вы можете использовать dig
команда. Например, проверьте, был ли IP-адрес 216.154.195.36 указан в cbl.abuseat.org.
$ dig 36.195.154.216.cbl.abuseat.org
; <<>> DiG 9.10.1-P1 <<>> 36.195.154.216.cbl.abuseat.org
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 48609
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1
Если возвращается NXDOMAIN, IP-адрес не указан.
С точки зрения нижнего слоя, каждый smtpd
обработать кэшировал собственные результаты поиска DNSBL. Эти результаты не передаются другим процессам Postfix. Каждый smtpd
процесс будет повторно использоваться до тех пор, пока max_use
или max_idle
достиг. когда smtpd
процесс умирает, кеш RBL тоже будет потерян. Когда новый smtpd
процесс был создан master
демон он подберет новую конфигурацию на main.cf
(включая max_idle
и max_use
. Таким образом, на самом деле нет необходимости перезапускать postfix.