обнаружил сегодня эту проблему почтового сервера, и поскольку сам не написал 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
файл, который исправлен, и вам не нужно использовать строки, предоставленные отправителем, для его поиска. Или, возможно, храните псевдонимы в какой-либо базе данных и выполняйте поиск в базе данных.