Автоматизация проверки своего IP по спам базам


angel2s2 аватар

angel2s2 - Posted on 18 Ноябрь 2008

Кто-то админит локальную сеть, кто - веб-сервер, а кому-то, как и мне, приходится админить почтовый сервер... Такие админы знают каково бывает не сладко, когда их компания делает рассылку своим клиентам, т.к. очень часта в таких случаях их сервер (точнее IP сервера) попадает в спам базы...
Вот нам и приходится периодически проверять свой IP по спам базам, чтобы письма ходили всегда хорошо. Но проходить вручную по десятку спам-баз и вводит везде свой IP для проверки очень даже утомляет... Поэтому я решил автоматизировать этот процесс bash-скриптом.

Работа скрипта проста:
spam-check 22.22.22.22
В результате мы увидим следующее:
[OK] - spamcop.net - 22.22.22.22 not listed in bl.spamcop.net.
[OK] - njabl.org - 22.22.22.22 not found in the list.
[OK] - www.five-ten-sg.com - 22.22.22.22 is not listed here.
[-No Lookup-] - junkemailfilter.com - ERROR - Reverse DNS Lookup Failed for [22.22.22.22]. 22.22.22.22 is NOT LISTED in any Hostkarma list.
[OK] - mail-abuse.com - The IP address entered was not found on any database managed by Trend Micro's Network Reputation Services.
[OK] - apews.org - We found no entry matching your search.
[OK] - psbl.surriel.com - The host 22.22.22.22 has never been listed in PSBL.
[OK] - psbl.surriel.com - We have no spamtrap mail on record for 22.22.22.22.
[OK] - wpbl.info - 22.22.22.22 not found in database.

Поле [-No Lookup-] - junkemailfilter.com - ERROR - Reverse DNS Lookup Failed for [22.22.22.22]. 22.22.22.22 is NOT LISTED in any Hostkarma list. говорит о том, что сервер не смог разрешить IP в доменное имя. Это единственный сервер из этого списка, который делает такую проверку, поэтому я ее включил.

Если же IP в спам базе, то мы увидим следующее:
$ spam-check 90.217.35.79
[+++SPAM+++] - spamcop.net - 90.217.35.79 listed in bl.spamcop.net (127.0.0.2).
[OK] - njabl.org - 90.217.35.79 not found in the list.
[OK] - www.five-ten-sg.com - 90.217.35.79 is not listed here.
[+++SPAM+++] - junkemailfilter.com - Your reverse DNS is correct! - 5ad9234f.bb.sky.com. 90.217.35.79 is Black listed.
[+++SPAM+++] - mail-abuse.com - The IP address 90.217.35.79 does appear on the following databases managed by Trend Micro's Network Reputation Services.
[OK] - apews.org - We found no entry matching your search.
[+++SPAM+++] - psbl.surriel.com - Currently listed in PSBL? Yes.
[+++SPAM+++] - psbl.surriel.com - Received spamtrap mail for 90.217.35.79.
[+++SPAM+++] - wpbl.info - Total spam sightings (last 90 days) - 4.

Возможно, некоторые удивлятся, что в этом списке нет довольно известной спам базы http://www.spamhaus.org/, но дело в том, что у меня не получилось сделать работу с ней через скрипт. Дело в том, что сервер http://www.spamhaus.org/, скорее всего, проверяет поле UserAgent браузера, я пробовал воспользоваться параметром -U утилиты wget, но результат это не дало. Буду очень признателен, если кто-нибудь поможет и с ним разобраться.

Ну и конечно-же сам скрипт, как же без него :)

Вот и все, чем я хотел поделиться с вами на этот раз, коллеги :)

Источник: мой блог

ЗЫ: Если кто найдет ошибки, прошу меня уведомить, в комментах или по мылу на saimon.ghost [гав-гав] Гмыл0 [тут_точка] ком (защита от спама :-Р ).

UPD: Сделал новый скрипт. Подробности на ЛинСовет или в моем блоге.

http://www.anti-abuse.org/multi-rbl-check/

Или http://www.google.com/search?client=opera&rls=en&q=check+RBL&sourceid=opera&ie=utf-8&oe=utf-8

На выбор....

------------

Почитал в блоге.... для автоматизации, разве что. Но надо тогда еще кучку grep -v правил сделать. Ибо всякие sorbs и иже с ними.


Почитал в блоге.... для автоматизации, разве что. Но надо тогда еще кучку grep -v правил сделать. Ибо всякие sorbs и иже с ними.

Не пойму о чем это вы...

Есть куча RBL в которых по экономическим, политическим или техническим причинам сидит вся Россиия.

Это уже не наша проблема, все равно мы админы ничего не сделаем с ними....
Ну разве если только DDoS дружный на них... Но это слишком :)))))))))))

Всем привет!!!
Зачем же так все усугублять и усложнять?!
Мы вот с корешем софтину замутили, которая в автоматическом режиме проверяет все блек-листы и снимает блокировку с IP )) работает на ура)))
Если кому интересно, пишите (sinys85@gmail.com))))

function get_dnsbl_list()
{
wget -q --post-data='UcWidgets1$btnInputSubmit=Check IP&target=1.1.1.1' -O - 'http://www.myiptest.com/staticpages/index.php/check-Blacklisted-IP-DNSBL' | grep "

В чем же тут по Вашему ошибка?

Спасибо за скрипт, пригодится. Нашёл ошибку: команда 'spam-check 200.61.163.218' выдала такое:

[+++SPAM+++] - psbl.surriel.com - Currently listed in PSBL? No.
[OK] - psbl.surriel.com - We have no spamtrap mail on record for 200.61.163.218.

---

Плюс я в него интегрировал резолвинг хоста:

case "$IP" in
*[!0-9.]*) IP=`host $IP | awk '{print $4}'`;;
esac

И добавил информативности:

echo "== Checking for $IP: =="

:)

Исправил, теперь вывод такой. Спасибо за инфу. :)

[OK]		- psbl.surriel.com	- Currently listed in PSBL?  No.
[OK]		- psbl.surriel.com	- We have no spamtrap mail on record for 200.61.163.218.

На счет резолвинга хоста... Чтобы можно было вместо ИП доменное имя вводить? Да, это классная идея. :) Но я не стал добавлять ее, т.к. в этом варианте, если у хоста несколько ИП, то будет косяк. Можешь проверить на mail.ru :)

Исправленный скрипт уже можно скачать по той же самой ссылке. :)

Мне просто через хост будет удобнее. Сделал проверку всех IP, в которые хост резолвится. Теперь добавление выглядит так:

case "$IP" in
*[!0-9.]*) IP=(`host -t a $IP | awk '{print $4}'`);;
esac

Перед блоком проверок открываем цикл:

for IP in ${IP[@]} ; do
echo
echo "== Checking for ${IP}: =="

И в конце файла закрываем цикл:

done

---
И просьба - нельзя ли перенести проверку в junkemailfilter.com на самое начало? Поскольку он единственный делает проверку reverse DNS, то в начале будет смотреться симпатичнее чем в середине.

Перенес junkemailfilter.com в начало, как ты и просил :)

Жди, завтра-послезавтра будет совсем новый скрипт (сделаю новый совет). На данный момент он уже готов, но хочу немного наворотов для удобства добавить сразу. Он уже 104 сервера обходит мигом и работает напрямую через dnsbl :)

Отправить комментарий

Google Friend Connect (leave a quick comment)
loading...
Содержание этого поля является приватным и не предназначено к показу.