Клиент из черного списка: почему Postfix не отклонил это письмо?
Ответ
Лучший ответ был в списке рассылки postfix-users, и он кратко изложен здесь для удобства пользователей serverfault.
- я забыл
soft_bounce = yes
, Всегда переключайте его обратно наno
после проверки конфигурации - Прося о помощи о конфигурации Postfix, всегда включает в себя полный вывод
postconf -n
- Прекратить прием почты ВСЕ от IP-адресов, которые не имеют записей PTR. добавлять
reject_unknown_reverse_client_hostname
вsmtpd_recipient_restrictions
ПОСЛЕpermit_mynetworks
а такжеpermit_sasl_authenticated
Если код ответа 4xx, он предлагает другому почтовому серверу повторить попытку. Похоже, что IP-адрес используется спамером на "снегоступах", что затрудняет обнаружение. Эти IP-адреса появляются и выходят из черного списка, так как операторы черного списка (в данном случае Spamhaus) работают против тактики снеговиков. Это продолжающаяся глобальная гонка вооружений. Отклонение почты с IP-адресов, у которых нет записей PTR, значительно уменьшает размер локального поля битвы.
Оригинальный вопрос
Это регистрируется на личном сервере Postfix с низким уровнем использования. Я полагаю, что должно быть две причины отклонять электронные письма, основанные на заголовках ниже, но результат - доставка в INBOX. Выдержки из соответствующей конфигурации Postfix следуют, и мои вопросы в конце.
Log Exercerpt
Jun 5 09:58:37 x2 postfix/smtpd[8440]: connect from unknown[157.52.162.99]
Jun 5 09:58:37 x2 postfix/smtpd[8440]: NOQUEUE: reject: RCPT from unknown[157.52.162.99]: 454 4.7.1 Service unavailable; Client host [157.52.162.99] blocked using zen.spamhaus.org; from=<newsletter@vacque.com> to=<XXX@XXX> proto=ESMTP helo=<mr99.dgnmkt.com>
Jun 5 09:58:37 x2 postfix/smtpd[8440]: disconnect from unknown[157.52.162.99]
Jun 5 10:01:57 x2 postfix/anvil[8394]: statistics: max connection rate 1/60s for (smtp:198.2.130.200) at Jun 5 09:51:57
Jun 5 10:01:57 x2 postfix/anvil[8394]: statistics: max connection count 1 for (smtp:198.2.130.200) at Jun 5 09:51:57
Jun 5 10:01:57 x2 postfix/anvil[8394]: statistics: max cache size 2 at Jun 5 09:55:18
Jun 5 10:06:39 x2 postfix/smtpd[8507]: connect from unknown[157.52.162.99]
Jun 5 10:06:40 x2 policyd-spf[8513]: None; identity=helo; client-ip=157.52.162.99; helo=mr99.dgnmkt.com; envelope-from=newsletter@vacque.com; receiver=XXX@XXX
Jun 5 10:06:40 x2 policyd-spf[8513]: Pass; identity=mailfrom; client-ip=157.52.162.99; helo=mr99.dgnmkt.com; envelope-from=newsletter@vacque.com; receiver=XXX@XXX
Jun 5 10:06:40 x2 postfix/smtpd[8507]: 49D01C1EDE: client=unknown[157.52.162.99]
Jun 5 10:06:40 x2 postfix/cleanup[8514]: 49D01C1EDE: message-id=messageid-3-M3w1NDIzfDU4fDM3ODk3OTR8eWxlYmF5Y2EwNEBzZmluYS5jb218U2F0LCAwNCBKdW4gMjAxNiAwNToxNDowNyAtMDcwMA==
Jun 5 10:06:40 x2 opendkim[1220]: 49D01C1EDE: [157.52.162.99] [157.52.162.99] not internal
Jun 5 10:06:40 x2 opendkim[1220]: 49D01C1EDE: not authenticated
Jun 5 10:06:43 x2 opendkim[1220]: 49D01C1EDE: no signature data
Jun 5 10:06:43 x2 postfix/qmgr[1337]: 49D01C1EDE: from=<newsletter@vacque.com>, size=91945, nrcpt=1 (queue active)
Jun 5 10:06:43 x2 postfix/smtpd[8507]: disconnect from unknown[157.52.162.99]
Jun 5 10:06:43 x2 dovecot: lmtp(8516): Connect from local
Jun 5 10:06:43 x2 dovecot: lmtp(8516, YYY@XXX): nhVjEfMxVFdEIQAAzX/GXw: msgid=messageid-3-M3w1NDIzfDU4fDM3ODk3OTR8eWxlYmF5Y2EwNEBzZmluYS5jb218U2F0LCAwNCBKdW4gMjAxNiAwNToxNDowNyAtMDcwMA==: saved mail to INBOX
Jun 5 10:06:43 x2 postfix/lmtp[8515]: 49D01C1EDE: to=<YYY@XXX>, orig_to=<XXX@XXX>, relay=XXX[private/dovecot-lmtp], delay=3.6, delays=3.5/0.01/0.02/0.05, dsn=2.0.0, status=sent (250 2.0.0 <YYY@XXX> nhVjEfMxVFdEIQAAzX/GXw Saved)
Jun 5 10:06:43 x2 dovecot: lmtp(8516): Disconnect from local: Successful quit
Jun 5 10:06:43 x2 postfix/qmgr[1337]: 49D01C1EDE: removed
Примечания о журнале
- @XXX это мой домен
- XXX@XXX это псевдоним
- YYY@XXX - это почтовый ящик
- Насколько я понимаю, плохой отправитель [157.52.162.99] был заблокирован в 9:58:37 на основе zen.spamhaus.org, но через 8 минут он снова подключился и успешно доставил то, что не должно было пройти.
Заголовки почты, которые должны были быть отклонены
Return-Path: <newsletter@vacque.com>
Delivered-To: <YYY@XXX>
Received: from XXX
by XXX (Dovecot) with LMTP id nhVjEfMxVFdEIQAAzX/GXw
for <YYY@XXX>; Sun, 05 Jun 2016 10:06:43 -0400
Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=157.52.162.99; helo=mr99.dgnmkt.com; envelope-from=newsletter@vacque.com; receiver=XXX@XXX
Received: from mr99.dgnmkt.com (unknown [157.52.162.99])
by XXX (Postfix) with ESMTP id 49D01C1EDE
for <XXX@XXX>; Sun, 5 Jun 2016 10:06:39 -0400 (EDT)
Received: from stormmta (unknown [157.52.162.99])
by mr99.dgnmkt.com (Postfix) with ESMTP id DD84AE61F8A
for <XXX@XXX>; Sun, 5 Jun 2016 08:16:33 -0700 (PDT)
From:=?UTF-8?B?VG1hcnQuY29t?=<newsletter@e.ailander.com>
To:XXX@XXX
Конфигурация Postfix
Соответствующие параметры main.cf
smtpd_recipient_restrictions =
permit_mynetworks
permit_sasl_authenticated
reject_unauth_destination
reject_invalid_hostname
reject_non_fqdn_hostname
reject_non_fqdn_sender
reject_non_fqdn_recipient
reject_unknown_sender_domain
reject_unknown_recipient_domain
check_recipient_access hash:/etc/postfix/recipients
# used to have Postgrey here
# check_policy_service inet:127.0.0.1:10023
reject_rbl_client zen.spamhaus.org
check_policy_service unix:private/policy-spf
permit
smtpd_restriction_classes =
ebay
ebay =
check_reverse_client_hostname_mx_access pcre:/etc/postfix/ebay.pcre
/ и т.д. / постфикс / получатели
XXX@XXX ebay
ebay.pcre
/.ebay.com$/ DUNNO
/(.*)/ REJECT Not allowed to relay from $1. Please use eBay's contact form if you have legit communication for this email address.
Мои комментарии и вопросы
Я назначаю псевдонимы для изоляции источников почты. Один такой псевдоним назначен на eBay. eBay передает адрес электронной почты покупателя продавцам. Не все продавцы уважают предпочтения покупателей в общении. Мое решение состоит в том, чтобы ограничить электронную почту, принятую на псевдониме eBay, электронной почтой от eBay и отвергнуть весь шум.
Во-первых, я подумал, что это письмо должно было быть отклонено:
check_recipient_access hash:/etc/postfix/recipients
потому что после /etc/postfix/recipients
применяется ограничение Ebay иebay.pcre
поймал бы это на второй линии.
Во-вторых, я подумал, что это письмо должно было быть отклонено:
reject_rbl_client zen.spamhaus.org
как попытка несколькими минутами ранее.
Очевидно, что я ожидал, не произошло. Зачем? И как я могу это исправить?
2 ответа
Из того, что я вижу, похоже, Спамхаус ответил по-другому во второй раз. Т.е. первый ответ был "есть спамер", но через 8 минут ответ был "ничего особенного". Почему ответили, трудно сказать.
Если у вас есть доступ к журналам запросов DNS-сервера, который настроен для разрешения DNS-запросов вашего почтового сервера, вы можете найти некоторые подсказки. Например, Spamhouse предоставляет услуги в соответствии со своими политиками, в которых указаны некоторые ограничения на количество запросов в час, в месяц и т. Д. Они даже могли оценить, кому они предоставляют услуги в этот раз, и решили не давать значимых ответов тем, кого считают спамерами.
Возможно, вы отправите этот журнал напрямую в Spamhouse, и они смогут говорить сами за себя.
Но! Трудно сказать точно, не видя подробного уровня отладки 2, где Postfix записывает информацию о запросах для каждого оператора в каждой опции XXX_restriction. Точный ответ по этому поводу также был бы записан там.
Кроме того, то, как вы представили конфигурацию Postfix, неверно. Вы должны всегда давать полный вывод из команды "postconf". Это то, что разработчики Postfix требуют в своем списке рассылки, и для этого есть причины.
Если вы хотите заблокировать IP-адрес отправляющего клиента, то вам нужно будет настроить RBL в...
smtpd_client_restrictions = permit_mynetworks,
permit_sasl_authenticated,
reject_unauth_destination,
reject_rbl_client zen.spamhaus.org,
reject_rbl_client bl.spamcop.net,
reject_rbl_client cbl.abuseat.org,
permit
Последовательность в ограничениях Postfix всегда
- smtpd_helo_restrictions
- smtpd_client_restrictions
- smtpd_sender_restrictions
- smtpd_recipient_restrictions