Назад | Перейти на главную страницу

exim - испорченное имя файла для поиска - отправитель проверяет отсрочку для неудачного раскрытия - zen.spamhaus.org: с именем хоста не связан адрес

обнаружил сегодня эту проблему почтового сервера, и поскольку сам не написал exim, не могу отладить его X-D

также: это нормально?

host zen.spamhaus.org
ping zen.spamhaus.org
ping: zen.spamhaus.org: No address associated with hostname

spamhaus.org все еще существует,

а zen.spamhaus.org вроде удалили?

===== trying to receive mail =====

==> /var/log/exim/main.log <== 
2020-07-20 10:39:51 DNS list lookup defer (probably timeout) for 9.67.15.31.zen.spamhaus.org: assumed not in list 
2020-07-20 10:39:51 Tainted filename for search: '/etc/exim/domains/sendingDomain.com/aliases' 
2020-07-20 10:39:51 H=berlin.freifunk.net [31.15.67.9] F=<berlin-bounces@berlin.freifunk.net> temporarily rejected RCPT <user@sendingDomain.com>:
failed to expand "${extract{1}{:}{${lookup{$local_part@$domain}lsearch{/etc/exim/domains/$domain/aliases}}}}": NULL 
2020-07-20 10:39:51 Tainted filename for search: '/etc/exim/domains/sendingDomain.com/aliases' 
2020-07-20 10:39:51 H=ip-109-42-0-98.web.vodafone.de ([192.168.0.222]) [109.42.0.98] sender verify defer for <user@sendingDomain.com>: failed to expand "${extract{1}{:}{${lookup{$local_part@$domain}lsearch{/etc/exim/domains/$domain/aliases}}}}": NULL 
2020-07-20 10:39:51 H=ip-109-42-0-98.web.vodafone.de ([192.168.0.222]) [109.42.0.98] X=TLS1.2:ECDHE-RSA-AES128-GCM-SHA256:128 CV=no F=<user@sendingDomain.com> A=dovecot_plain:user@sendingDomain.com temporarily rejected RCPT <user@receiver.com>: Could not complete sender verify
   
==> /var/log/exim/panic.log <== 
2020-07-20 10:39:51 Tainted filename for search: '/etc/exim/domains/sendingDomain.com/aliases' 
2020-07-20 10:39:51 Tainted filename for search: '/etc/exim/domains/sendingDomain.com/aliases' 

==> /var/log/exim/reject.log <== 
2020-07-20 10:39:51 H=berlin.freifunk.net [31.15.67.9] F=<berlin-bounces@berlin.freifunk.net> temporarily rejected RCPT <user@sendingDomain.com>: failed to expand "${extract{1}{:}{${lookup{$local_part@$domain}lsearch{/etc/exim/domains/$domain/aliases}}}}": NULL 
2020-07-20 10:39:51 H=ip-109-42-0-98.web.vodafone.de ([192.168.0.222]) [109.42.0.98] sender verify defer for <user@sendingDomain.com>: failed to expand "${extract{1}{:}{${lookup{$local_part@$domain}lsearch{/etc/exim/domains/$domain/aliases}}}}": NULL 
2020-07-20 10:39:51 H=ip-109-42-0-98.web.vodafone.de ([192.168.0.222]) [109.42.0.98] X=TLS1.2:ECDHE-RSA-AES128-GCM-SHA256:128 CV=no F=<user@sendingDomain.com> A=dovecot_plain:user@sendingDomain.com temporarily rejected RCPT <user@receiver.com>: Could not complete sender verify
 

это конец почтового мира?

в конце концов: почта - такая важная (до сих пор наиболее используемая служба обмена сообщениями), но система, подверженная ошибкам и безопасности (множество хаков / троянских коней поставляется как вложение: word.doc)

# searching exim config dir
grep -r -i -E --color=auto /etc/exim/ "zen.spamhaus.org"

# found this
/etc/exim/dnsbl.conf

# reveals:
cat /etc/exim/dnsbl.conf
bl.spamcop.net
zen.spamhaus.org

# removed the zen.spamhaus.org
vim /etc/exim/dnsbl.conf

# reboot
# trying again

... не повезло, не удается отправить или получить почту, проблема "проверить отправителя" не исчезла.

vim /etc/exim/exim.conf

aliases:
  driver = redirect
  headers_add = X-redirected: yes
  data = ${extract{1}{:}{${lookup{$local_part@$domain}lsearch{/etc/exim/domains/$domain/aliases}}}}
  require_files = /etc/exim/domains/$domain/aliases
  redirect_router = dnslookup
  pipe_transport = address_pipe
  unseen

zen.spamhaus.org не имеет IP-адреса, и это ожидается. Чтобы проверить, внесен ли адрес в черный список, вы должны запросить (ip address).zen.spamhaus.org (с перевернутыми частями IP-адреса) и проверьте, дает ли это результат.

Журналы показывают, что время запроса истекло, что говорит о том, что вы сделали слишком много запросов для spamhaus.org. Тем не менее, этот сбой не означает, что письмо отклонено (на что указывает «предполагается, что нет в списке»).

Ваша проблема в том, что вы пытаетесь создать имя файла из частей входящей почты и используете этот файл для запроса, однако файл никогда не открывается, потому что exim думает, что он "испорчен". В exim, "испорченное" что-либо - это расширение, исходящее непосредственно от отправителя. Все, что отправляет напрямую, считается ненадежным, поэтому в маршрутизаторе запрещается открытие файла, на который указывает расширение испорченных данных.

Вы можете обойти это, используя испорченные данные для некоторого вида поиска, который дает незараженные данные, которые, в свою очередь, могут использоваться для адресации файла.

Другое решение - использовать только один aliases файл, который исправлен, и вам не нужно использовать строки, предоставленные отправителем, для его поиска. Или, возможно, храните псевдонимы в какой-либо базе данных и выполняйте поиск в базе данных.