exim ban list
Модераторы: Trinity admin`s, Free-lance moderator`s
Hi
Подсажите, что неправильно в конфиге exim !?!?
Нужно сделать проверку по имени хоста на предмет содержащихся в нем слов "adsl|dial-up|client" и т.д. и в случае, если такие слова есть в обратном имени хоста-отправителя письма с него не принимать.
Соответственно в acl добаляю:
deny massage = Forged host
condition = ${if match{$sender_host_name}{\N(adsl|dial-up|client}{yes}{no}}
Но все равно, exim не реджектит хост, хотя в имени хоста есть dial-up
Условие почему-то = no
Подскажите, в чем затык?
Подсажите, что неправильно в конфиге exim !?!?
Нужно сделать проверку по имени хоста на предмет содержащихся в нем слов "adsl|dial-up|client" и т.д. и в случае, если такие слова есть в обратном имени хоста-отправителя письма с него не принимать.
Соответственно в acl добаляю:
deny massage = Forged host
condition = ${if match{$sender_host_name}{\N(adsl|dial-up|client}{yes}{no}}
Но все равно, exim не реджектит хост, хотя в имени хоста есть dial-up
Условие почему-то = no
Подскажите, в чем затык?
- corvax
- free-lance moderator
- Сообщения: 877
- Зарегистрирован: 06 авг 2004, 17:21
- Откуда: Kiev, Ukraine
- Контактная информация:
регексп кривойPavel NS писал(а):Hi
Подсажите, что неправильно в конфиге exim !?!?
Нужно сделать проверку по имени хоста на предмет содержащихся в нем слов "adsl|dial-up|client" и т.д. и в случае, если такие слова есть в обратном имени хоста-отправителя письма с него не принимать.
Соответственно в acl добаляю:
deny massage = Forged host
condition = ${if match{$sender_host_name}{\N(adsl|dial-up|client}{yes}{no}}
всегда условия сначала проверяйте в exim -bePavel NS писал(а):Но все равно, exim не реджектит хост, хотя в имени хоста есть dial-up
Условие почему-то = no
Подскажите, в чем затык?
--
/corvax
/corvax
- corvax
- free-lance moderator
- Сообщения: 877
- Зарегистрирован: 06 авг 2004, 17:21
- Откуда: Kiev, Ukraine
- Контактная информация:
значительно лучшеPavel NS писал(а):А так:corvax писал(а): регексп кривой
всегда условия сначала проверяйте в exim -be
condition = ${if match{$sender_host_name}{\N(dial-up|adsl)\N}{yes}{no}}
а что, вы даже не заметили, что правили в регекспе?Pavel NS писал(а):А что неправильно?
Pavel NS писал(а):А как сделать правильно?
--
/corvax
/corvax
Так, похоже, что exim выполняет 2 проверки: имя хоста по ip, а затем проверяет ip по найденному имени хоста (зачем только?). В случае, если он не может определить ip по найденному имени хоста то условие на работает!?! В случае, если вторая проверка удается то условие срабатывает.corvax писал(а):exim -bh поможет разобратьсяPavel NS писал(а):Заметил что в первый раз написал с ошибкой. Сейчас просто копи-пастил.
Так ведь не срабатывает условие!
Чего-то я не понимаю, может поможете?
Как сделать, чтобы условие проверялось и при отсутствии прямой записи в днс?
В конфиге по умолчанию: host_lookup = *
- corvax
- free-lance moderator
- Сообщения: 877
- Зарегистрирован: 06 авг 2004, 17:21
- Откуда: Kiev, Ukraine
- Контактная информация:
чтобы $sender_host_name невозможно было сфальсифицировать изменив лишь запись в реверсной зонеPavel NS писал(а):Так, похоже, что exim выполняет 2 проверки: имя хоста по ip, а затем проверяет ip по найденному имени хоста (зачем только?).corvax писал(а):exim -bh поможет разобратьсяPavel NS писал(а):Заметил что в первый раз написал с ошибкой. Сейчас просто копи-пастил.
Так ведь не срабатывает условие!
Чего-то я не понимаю, может поможете?
если нет записи в прямой зоне или она не соответствует записи в реверной зоне, то значение $sender_host_name не определено, что явно указано в документацииPavel NS писал(а): В случае, если он не может определить ip по найденному имени хоста то условие на работает!?!
получить PTR запись хоста рилея отправителя с помощью dnsdb и проверять его как угодноPavel NS писал(а): В случае, если вторая проверка удается то условие срабатывает.
Как сделать, чтобы условие проверялось и при отсутствии прямой записи в днс?
В конфиге по умолчанию: host_lookup = *
--
/corvax
/corvax
- corvax
- free-lance moderator
- Сообщения: 877
- Зарегистрирован: 06 авг 2004, 17:21
- Откуда: Kiev, Ukraine
- Контактная информация:
вот такое - это что? имелась ввиду фитрация по helo? A записи рилея? PTR записи рилеяLISTEN писал(а):Подскажите, каким образом можно отшибать почту, о которой exim "говорит" вот такое:
Received: from 59-125-97-179.hinet-ip.hinet.net ([59.125.97.179] helo=localhost)
лучше бы вместо благодарности формулировали вопрос по-человечески...Буду благодарен за пример!
--
/corvax
/corvax
Конфигурация такая: стоит exim 4.50 (stella), который всю входящую внешнюю почту "отдает" Exchange (chip), предварительно "спросив" наличие юзера в активдиректори. Сейчас подобные письма (см. заголовок ниже), проходят "на ура", но у них у всех одна отличительная особенность (helo=localhost). Насколько я понимаю, удаленный хост "отдает" свое имя, как localhost. Дак вот, как можно обрубить такие письма, при условии, что ИП-адрес !=127.0.0.1, а имя = localhost?
вот типичный заголовок такого письма:
Microsoft Mail Internet Headers Version 2.0
Received: from stella.abcd.ru ([aa.bb.cc.dd]) by chip.abcd.ru with # мой релей aa.bb.cc.dd (и никак не localhost)
Microsoft SMTPSVC(6.0.3790.1830);
Tue, 25 Jul 2006 15:10:17 +0600
Received: from [218.6.45.5] (helo=localhost)
by stella.abcd.ru with smtp (Exim 4.50)
id 1G5J3U-000FT9-PR
for admin@abcd.ru; Tue, 25 Jul 2006 15:18:27 +0600
(дальше уже не интересно)
(Вроде правильно объяснил суть проблемы)
вот типичный заголовок такого письма:
Microsoft Mail Internet Headers Version 2.0
Received: from stella.abcd.ru ([aa.bb.cc.dd]) by chip.abcd.ru with # мой релей aa.bb.cc.dd (и никак не localhost)
Microsoft SMTPSVC(6.0.3790.1830);
Tue, 25 Jul 2006 15:10:17 +0600
Received: from [218.6.45.5] (helo=localhost)
by stella.abcd.ru with smtp (Exim 4.50)
id 1G5J3U-000FT9-PR
for admin@abcd.ru; Tue, 25 Jul 2006 15:18:27 +0600
(дальше уже не интересно)
(Вроде правильно объяснил суть проблемы)
- corvax
- free-lance moderator
- Сообщения: 877
- Зарегистрирован: 06 авг 2004, 17:21
- Откуда: Kiev, Ukraine
- Контактная информация:
deny ! hosts = 127.0.0.1LISTEN писал(а):Конфигурация такая: стоит exim 4.50 (stella), который всю входящую внешнюю почту "отдает" Exchange (chip), предварительно "спросив" наличие юзера в активдиректори. Сейчас подобные письма (см. заголовок ниже), проходят "на ура", но у них у всех одна отличительная особенность (helo=localhost). Насколько я понимаю, удаленный хост "отдает" свое имя, как localhost. Дак вот, как можно обрубить такие письма, при условии, что ИП-адрес !=127.0.0.1, а имя = localhost?
вот типичный заголовок такого письма:
Microsoft Mail Internet Headers Version 2.0
Received: from stella.abcd.ru ([aa.bb.cc.dd]) by chip.abcd.ru with # мой релей aa.bb.cc.dd (и никак не localhost)
Microsoft SMTPSVC(6.0.3790.1830);
Tue, 25 Jul 2006 15:10:17 +0600
Received: from [218.6.45.5] (helo=localhost)
by stella.abcd.ru with smtp (Exim 4.50)
id 1G5J3U-000FT9-PR
for admin@abcd.ru; Tue, 25 Jul 2006 15:18:27 +0600
(дальше уже не интересно)
(Вроде правильно объяснил суть проблемы)
condition = ${if eq{$sender_helo_name}{localhost}{yes}{no}}
фильтр тривиальный, в доке на эксим все это описано
я бы еще посоветовал почитать
http://www.tldp.org/HOWTO/Spam-Filtering-for-MX/
там много теории, но в конце есть примеры для эксима
--
/corvax
/corvax
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 33 гостя