Существует ли утилита командной строки, которая проверяет, находится ли указанный почтовый сервер на каком-то известномчерный список?
Я знаюамиспаммерно он доступен только на Debian, похоже, он не поддерживается, и в последний раз, когда я проверял, он потреблял очень много памяти.
решение1
Так как я не нашел замену амиспамеруя создалcheck-dnsbl.py
, небольшой скрипт Python, который проверяет некоторые известные черные списки. Он используетdnspythonдля всех необходимых DNS-запросов.
Пример:
$ ./check-dnsbl.py 117.246.201.146
2016-11-05 19:01:13 - ERROR - There is no reverse DNS record for 117.246.201.146
2016-11-05 19:01:13 - ERROR - OMG, 117.246.201.146 is listed in DNSBL zen.spamhaus.org: 127.0.0.11 ("https://www.spamhaus.org/query/ip/117.246.201.146")
2016-11-05 19:01:19 - ERROR - OMG, 117.246.201.146 is listed in DNSBL virbl.dnsbl.bit.nl: 127.0.0.2 ("See: http://virbl.bit.nl/lookup/index.php?ip=117.246.201.146")
2016-11-05 19:01:19 - ERROR - 117.246.201.146 is listed in 2 blacklists
Переключатель --debug
увеличивает многословность, например:
2016-11-05 20:19:21 - DEBUG - Checking 26 DNS blacklists
(набор черных списков можно изменить с помощью опций - 2 из списков по умолчанию являются агрегированными)
Также можно просто указать доменные имена:
$ ./check-dnsbl.py mailout1.example.org mailout2.example.org
решение2
Одним из самых простых способов проверки наличия IP-адреса в известном черном списке является выполнение DNS-запроса либо с помощью dig
, host
либо nslookup
к списку RBL/DNS; в конце концов, именно так это и делают почтовые серверы.
А именно, несколько из них все еще очень активны, в том числе:
- zen.spamhaus.org
- bl.spamcop.net
- cbl.abuseat.org
Например, чтобы проверить, находится ли IP-адрес 116.103.227.39 в черном списке, вы инвертируете его и добавляете инвертированный IP-адрес в один из приведенных выше списков.
$ host 39.227.103.116.zen.spamhaus.org.
39.227.103.116.zen.spamhaus.org has address 127.0.0.4
39.227.103.116.zen.spamhaus.org has address 127.0.0.11
ОтПлагин DNS Blacklist (DNSBL / RBL)
Если поиск DNS возвращает значение (обычно фиктивный IP-адрес 127.0.0.2), это означает, что IP-адрес отправителя находится в черном списке.