LINUX.ORG.RU
ФорумAdmin

Exim и несуществующий удаленный хост

 


0

1

Добрый день.

Если пользователь задаст несуществующий почтовый адрес (aa@bb.cc), то exim начинает каждые пол-часа стучаться до него и пытаться отослать письмо, получая в ответ

01:27:13 1a1M3N-0002IS-KL == aa@bb.cc R=dnslookup T=remote_smtp defer (111): Connection refused
01:34:27 1a1M3N-0002IS-KL == aa@bb.cc R=dnslookup T=remote_smtp defer (-53): retry time not reached for any host

Происходить это может в течении многих часов. Вопрос в том, как ограничить это поведение, например одиним часом, по истечении которого, exim прекращал бы попытки отправить письмо по этому адресу?

begin retry
* * F,1h,30m;

bass ★★★★★
()

Я использую callout verification и таких проблем нет в принципе, т.к. я даже не приму письмо к отправке, если не смогу проверить, среди многого другого, адрес получателя.

Но это некорректно с точки зрения RFC. Но в общем, в текущей ситуации со спамом - пофиг.

MumiyTroll ★★★
()

Не делай так.

anc ★★★★★
()
Ответ на: комментарий от MumiyTroll

Я использую callout verification и таких проблем нет в принципе,
т.к. я даже не приму письмо к отправке, если не смогу проверить, среди
многого другого, адрес получателя.

Есть куча писем, идущих с обратным адресом noreply@ и прочее. И все они будут отброшены.

vlb ★★★
()
Ответ на: комментарий от vlb

если адрес отправителя — noreply@..., то он не об подпадает под «не смогу проверить, среди многого другого, адрес получателя». почему тогда «все они будут отброшены»?

t184256 ★★★★★
()
Последнее исправление: t184256 (всего исправлений: 1)
Ответ на: комментарий от t184256

Если адрес отправителя noreply@, то при включении проверки адреса отправителя будет получен ответ, что такого адреса нет и следовательно, почта, идущая с таким обратным адресом будет отброшена.

vlb ★★★
()
Ответ на: комментарий от vlb

Я спрашивал MumiyTroll. А по каким причинам вы ее отключили?

magentawb
() автор топика
Ответ на: комментарий от magentawb
acl_check_rcpt:
...
  accept  hosts         = +skip_callout

  # Verify sender by callout
  deny   !verify        = sender/callout=30s,defer_ok
          delay         = 30s

  # Verify recipient by callout
  deny   !verify        = recipient/callout=30s,defer_ok,use_sender
          delay         = 30s

  accept
MumiyTroll ★★★
()
Ответ на: комментарий от vlb

Для noreply можно придумать правило и вставить повыше callout'ов, но мне не было нужно. Для чужих noreply, отброшенных моим почтовиком, по просьбе пользователей можно и исключение прописать. Не так и много действительно нужных «генераторов» уведомлений с noreply.

А для моих noreply у меня так:

acl_check_rcpt:
...
  # Accept mail for noreply adresses for verification purposes
  accept  local_parts    = no-reply : noreply
          set acl_c1     = NR
...

acl_check_predata:

  # Reject mail to no-reply address(-es)
  drop    message        = Don't send any mail to this mailbox!
          condition      = ${if eq{$acl_c1}{NR}}

И, кстати, для callout'ов же почти аналогично сделан postmaster:

  # Postmaster mailbox must exist but we don't want read it
  defer   message        = 4.2.2 Mailbox full
          condition      = ${if eq{$acl_c1}{PM}}

Знаю-знаю, по RFC почтовый домен должен иметь postmaster - так он есть у меня! Но собирать в него спам я не хочу. А реальные живые человеки для обратной связи пусть используют адреса с сайтов или whois.

MumiyTroll ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.