The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Блокирование unresolved IP и фильтрация по Received в sendmail (spam sendmail mail)


<< Предыдущая ИНДЕКС Поиск в статьях src Установить закладку Перейти на закладку Следующая >>
Ключевые слова: spam, sendmail, mail,  (найти похожие документы)
From: Максим Захаров <maxime at sochi.net.ru> Date: Mon, 11 Apr 2004 14:31:37 +0000 (UTC) Subject: Блокирование unresolved IP и фильтрация по Received в sendmail Оригинал: http://www.maxime.net.ru/doc/sendmailFEATURES.ru.shtml Антиспамовские фичи к sendmail (http://www.sendmail.org/) Максим Захаров ДатаПарк (http://www.datapark.ru/) _________________________________________________________________ Описание фич Sendmail (http://www.sendmail.org/m4/features.html). datapark_unresolved Отказывает в приёме почты с адресов, не имеющих обратной DNS зоны. Если задан необязательный параметр, он использется для замены стандартного сообщения об ошибке. Стандартное сообщение об ошибке: Rejected unresolved: IP-ADDRESS где вместо IP-ADDRESS подставляется адрес удалёной машины. По умолчанию, ошибки поиска в DNS игнорируются. Чтобы изменить это поведение, используется второй необязательный параметр, который может быть либо `t', либо целиком новым сообщением об ошибке. datapark_dnsbl Аналогична стандартной фичи dnsbl (http://www.sendmail.org/m4/features.html#dnsbl). За исключением, что в блэк листе проверяются адреса, полученые из Received: заголовков сообщений. И стандартное сообщение об ошибке выглядит следующим образом: Rejected: IP-ADDRESS Received header HEADER-IP-ADDRESS listed at SERVER где вместо IP-ADDRESS, HEADER-IP-ADDRESS и SERVER подставляются реальные данные. Принимает теже параметры, что и стандартная фича dnsbl.
datapark_dnsbl.m4 divert(-1) # # Copyright (c) 2004 Datapark corp. # All rights reserved. # # By using this file, you agree to the terms and conditions set # forth in the LICENSE file which can be found at the top level of # the sendmail distribution. # # dnl 8.13: ifdef(`DP_DNSBL_MAP', `', `define(`DP_DNSBL_MAP', `dns -R A')') ifdef(`DP_DNSBL_MAP', `', `define(`DP_DNSBL_MAP', `host')') divert(0) ifdef(`_DP_DNSBL_R_',`dnl',`dnl VERSIONID(`$Id: datapark_dnsbl.m4,v 8.28 2004/04/08 21:22:40 maxime Exp $') define(`_DP_DNSBL_R_',`') LOCAL_CONFIG Kdp_storage macro HReceived: $>+dpCheckReceived # map for DNS based blacklist lookups to check Received: headers Kdp_dnsbl DP_DNSBL_MAP -T<TMP>ifdef(`DP_DNSBL_MAP_OPT',` DP_DNSBL_MAP_OPT')') divert(-1) define(`_DP_DNSBL_SRV_', `ifelse(len(X`'_ARG_),`1',`blackholes.mail-abuse.org',_ARG_)')dnl define(`_DP_DNSBL_MSG_', `ifelse(len(X`'_ARG2_),`1',`"550 Rejected: " $`'&{client_addr} " Received header " $`'&{dpHeaderIP} " listed at '_DP_DNSBL_SRV_`"',`_ARG2_')')dnl define(`_DP_DNSBL_MSG_TMP_', `ifelse(_ARG3_,`t',`"451 Temporary lookup failure of " $`'&{dpHeaderIP} " at '_DP_DNSBL_SRV_`"',`_ARG3_')')dnl divert(0) LOCAL_RULESETS SdpCheckReceived # DNS based IP address spam list _DP_DNSBL_SRV_ R$*[$-.$-.$-.$-]$* $: $2.$3.$4.$5 R$* $: $(dp_storage {dpHeaderIP} $@ $1 $) $1 R$-.$-.$-.$- $: <?> $(dp_dnsbl $4.$3.$2.$1._DP_DNSBL_SRV_. $: OK $) R<?>OK $: OKSOFAR ifelse(len(X`'_ARG3_),`1', `R<?>$+<TMP> $: TMPOK', `R<?>$+<TMP> $#error $@ 4.7.1 $: _DP_DNSBL_MSG_TMP_') R<?>$+ $#error $@ 5.7.1 $: _DP_DNSBL_MSG_ divert(-1)
datapark_unresolved.m4 divert(-1) # # Copyright (c) 2004 Datapark corp. # All rights reserved. # # By using this file, you agree to the terms and conditions set # forth in the LICENSE file which can be found at the top level of # the sendmail distribution. # # dnl 8.13: ifdef(`DPURB_MAP', `', `define(`DPURB_MAP', `dns -R A')') ifdef(`DPURB_MAP', `', `define(`DPURB_MAP', `dns -R PTR -a<OK>')') divert(0) ifdef(`_DPURB_R_',`dnl',`dnl VERSIONID(`$Id: datapark_unresolved.m4,v 1.00 2004/04/07 21:22:40 maxime Exp $') define(`_DPURB_R_',`') LOCAL_CONFIG # map for DNS lookups for unresolved clients Kdpurb DPURB_MAP -T<TMP>ifdef(`DPURB_MAP_OPT',` DPURB_MAP_OPT')') divert(-1) define(`_DPURB_MSG_', `ifelse(len(X`'_ARG_),`1',`"550 Rejected unresolved: " $`'&{client_addr} ',`_ARG_')')dnl define(`_DPURB_MSG_TMP_', `ifelse(_ARG2_,`t',`"451 Temporary lookup failure of " $`'&{client_addr} ',`_ARG2_')')dnl divert(8) # DNS based IP address lookups R$* $: $&{client_addr} R$-.$-.$-.$- $: <?> $(dpurb $4.$3.$2.$1.IN-ADDR.ARPA. $: UNR $) R<?>UNR $#error $@ 4.7.1 $: _DPURB_MSG_ ifelse(len(X`'_ARG2_),`1', `R<?>$+<TMP> $: TMPOK', `R<?>$+<TMP> $#error $@ 4.7.1 $: _DPURB_MSG_TMP_') R<?>$+ $: OKSOFAR divert(-1)

<< Предыдущая ИНДЕКС Поиск в статьях src Установить закладку Перейти на закладку Следующая >>

 Добавить комментарий
Имя:
E-Mail:
Заголовок:
Текст:




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру