Как я могу изменить конфигурацию EXIM4 с предупреждения об отсутствии обратного DNS на активное отклонение почты без обратного DNS

По умолчанию EXIM4 только предупреждает о письмах без обратного DNS. Мне нужно заблокировать и активно отклонить почту, которая не имеет обратного DNS. Я готов согласиться с тем, что вполне возможно, что некоторые легальные письма будут заблокированы, однако пока единственной почтой, не имеющей обратного DNS, был спам.

Ниже приведен код для обратной проверки DNS из конфигурации EXIM4. Как мне изменить это с предупреждения на блокировку.

# Warn if the sender host does not have valid reverse DNS.
  # 
  # If your system can do DNS lookups without delay or cost, you might want
  # to enable this.
  # If sender_host_address is defined, it's a remote call.  If
  # sender_host_name is not defined, then reverse lookup failed.  Use
  # this instead of !verify = reverse_host_lookup to catch deferrals
  # as well as outright failures.
  .ifdef CHECK_RCPT_REVERSE_DNS
  Reverse DNSReverse DNSwarn
    condition = ${if and{{def:sender_host_address}{!def:sender_host_name}}\
                      {yes}{no}}
    add_header = X-Host-Lookup-Failed: Reverse DNS lookup failed for $sender_host_address (${if eq{$host_lookup_failed}{1}{failed}{deferred}})
  .endif
1
задан 8 April 2013 в 22:59

2 ответа

Предыдущий ответ не работал для меня. Но я заставил этих двоих работать:

  deny message = Forged IP detected in HELO: $sender_helo_name
    log_message = Forged IP detected in HELO: $sender_helo_name
    condition = ${if eq{$sender_helo_name}{$interface_address}{yes}{no}}

  deny
    message = X-Host-Lookup-Failed: Reverse DNS lookup failed for $sender_host_address \
            (${if eq{$host_lookup_failed}{1}{failed}{deferred}})
    log_message = X-Host-Lookup-Failed: Reverse DNS lookup failed for $sender_host_address
    condition = ${if and{{def:sender_host_address}{!def:sender_host_name}}\
                      {yes}{no}}

Надеюсь, это поможет.

0
ответ дан 8 April 2013 в 22:59

Этот фрагмент должен сделать это. Если вы отказываете, вы можете сделать это в ACL получателя после того, как примете адрес администратора почты и адрес злоупотребления. Посмотрите, какие серверы вы отклоняете, так как некоторые законные отправители (авиакомпании, банки, правительства) взломали rDNS на своих автоматических отправителях.

# Verify reverse DNS lookup of the sender's host.
deny
  message Reverse DNS verification failed
  !verify = reverse_host_lookup
  !hosts = ${if exists{CONFDIR/local_broken_dns_whitelist}\
                      {CONFDIR/local_broken_dns_whitelist} {}}

Я нахожу, что многие спам-боты быстро сдаются, если они не получают баннер соединения достаточно быстро. Включение следующего в ACL-соединение может помочь. Отключение конвейерной передачи ловит много спам-ботов, которые не ведут себя хорошо. Если задержка слишком велика (более 30 с), некоторые законные серверы также сдаются.

# Verify reverse DNS lookup of the sender's host.
# Disable piplining and delay on failure.
warn
  !hosts = ${if exists{CONFDIR/local_broken_dns_whitelist}\
                      {CONFDIR/local_broken_dns_whitelist} {}}
  !verify = reverse_host_lookup
  control = no_pipelining
  delay = 10s
0
ответ дан 8 April 2013 в 22:59

Другие вопросы по тегам:

Похожие вопросы: