Почему Postfix не отклоняет попытки подключения конкретного клиента?

Просматривается мой SMTP-сервер. Это похоже на грубую силовую привязку на SASL, где они просматривают словарь паролей.

Увидев тысячи этих строк в файлах журнала

Sep 18 14:09:52 xxx postfix/smtpd[7412]: connect from ca255.calcit.fastwebserver.de[146.0.42.124] Sep 18 14:09:55 xxx postfix/smtpd[7412]: warning: ca255.calcit.fastwebserver.de[146.0.42.124]: SASL LOGIN authentication failed: authentication failure Sep 18 14:09:55 xxx postfix/smtpd[7412]: lost connection after AUTH from ca255.calcit.fastwebserver.de[146.0.42.124] Sep 18 14:09:55 xxx postfix/smtpd[7412]: disconnect from ca255.calcit.fastwebserver.de[146.0.42.124] 

Я изменил свой main.cf следующим образом:

 inet_interfaces = all smtpd_sasl_auth_enable=yes smtpd_helo_required = yes smtpd_sender_restrictions = reject_unknown_address smtpd_client_restrictions = check_client_access hash:/etc/postfix/maps/access_client, permit_mynetworks, reject smtpd_recipient_restrictions = check_client_access hash:/etc/postfix/maps/access_client, permit_mynetworks, reject_non_fqdn_sender, reject_non_fqdn_recipient, reject_unknown_sender_domain, reject_unknown_recipient_domain, permit_sasl_authenticated, reject_unauth_pipelining, reject_unauth_destination, reject_rbl_client zen.spamhaus.org, reject_rbl_client list.dsbl.org permit broken_sasl_auth_clients = yes 

И мой / etc / postfix / maps / access_client имеет только следующую строку:

146.0.42.124 REJECT

Однако после перезапуска постфикса по-прежнему нет изменений в поведении, я все еще вижу ту же ошибку, поэтому SASL все еще проверяется, хотя я думал, что с этими настройками клиент будет отклонен на основе его IP-адреса до того, как SASL даже войдет в игру ?

Второй вопрос: я передаю исходящий почтовый трафик с одного компьютера на другой во внутренней сети – кроме настройки «relayhost» на машине, которая только что передает, могу ли я сохранить остальные настройки постфикса на обоих?

  • Как отправить нелокальную почту с помощью SMTP GMail (GApps)?
  • mutt SMTP TLS ошибка отправки почты
  • Как настроить команду «mail» для использования сервера ретрансляции SMTP без использования службы sendmail?
  • Невозможно отправить почту на microsoft (hotmail, live ...)
  • исходящий порт SMTP 25 заблокирован провайдером?
  • Локальная почтовая раковина
  • Приложение GUI для отправки писем через определенные SMTP-серверы
  • Самый легкий SMTP-сервер для одиночного компьютера Linux (SBC)
  • 2 Solutions collect form web for “Почему Postfix не отклоняет попытки подключения конкретного клиента?”

    Postfix не оценивает smtpd_client_restrictions до smtpd_client_restrictions пор, пока не будет smtpd_client_restrictions команда RCPT TO (или ETRN ).

    http://www.postfix.org/SMTPD_ACCESS_README.html#timing

    Текущие версии Postfix откладывают оценку списков ограничений для клиентов, helo и отправителя до команды RCPT TO или ETRN. Это поведение контролируется параметром smtpd_delay_reject. Списки ограничений по-прежнему оцениваются в правильном порядке ограничений (клиент, helo, etrn) или (клиент, helo, отправитель, ретранслятор, получатель, данные или конечные данные). Когда список ограничений (пример: клиент) оценивает REJECT или DEFER, список ограничений, которые следуют (пример: helo, sender и т. Д.), Пропускается.

    Таким образом, вы можете обойти это, установив в main.cf :

     smtpd_delay_reject = no 

    Что касается вашего второго вопроса, существует так много элементов управления для постфикса, что почти невозможно ответить, не имея полной информации о вашей сети, конфигурации постфикса и конфигурации клиента. Лучший способ – просто попробовать.

    Если вы хотите отключить SASL AUTH для определенных IP-адресов или диапазонов IP-адресов без побочных эффектов smtpd_delay_reject = no , взгляните на ключевое слово smtpd_discard_ehlo_keyword_address_maps . Пример конфигурации и объяснения:


    конфигурация

    Сначала мы установили ключевое слово в /etc/postfix/main.cf :

     smtpd_discard_ehlo_keyword_address_maps = cidr:/etc/postfix/esmtp_cidr 

    Теперь мы определяем наш черный список в /etc/postfix/esmtp_cidr (только что указанный файл):

     # /etc/postfix/esmtp_cidr 91.200.12.0/24 auth 155.133.82.77 auth 146.0.42.124 auth 

    Поскольку это файл cidr: list, запуск postmap не требуется. Но нам нужно сообщить Postfix, чтобы перезагрузить его конфигурацию:

     service postfix reload 

    объяснение

    Теперь, что это значит? Для указанных адресов (полный IP-адрес или IP-диапазон в этом примере) мы сказали Postfix отключить определенную функцию ESMTP: AUTH . Это означает, что хосты, которые больше не могут использовать SASL. Давайте проверим журнал:

     Aug 11 22:37:39 xxx postfix/smtpd[32630]: connect from unknown[91.200.12.98] Aug 11 22:37:39 xxx postfix/smtpd[32630]: discarding EHLO keywords: AUTH Aug 11 22:37:39 xxx postfix/smtpd[32630]: lost connection after AUTH from unknown[91.200.12.98] Aug 11 22:37:39 xxx postfix/smtpd[32630]: disconnect from unknown[91.200.12.98] 

    Итак, мы получили то, что хотим, без использования smtpd_delay_reject = no и, следовательно, не нужно бояться побочных эффектов последнего.

    Примечание. Точно так же вы можете запретить клиентам использовать другие функции ESMTP, такие как конвейерная обработка или запуск. Список доступных ключевых слов можно найти, например, в этой статье в Википедии . Кроме того, что с smtpd_sasl_exceptions_networks , эти ключевые слова будут не только не объявлены, но и не будут приняты вообще, как показывает журнал.

    Linux и Unix - лучшая ОС в мире.