comparison xml/dnsbl.in @ 268:f941563c2a95 stable-6-0-34

Add require_rdns checking
author Carl Byington <carl@five-ten-sg.com>
date Wed, 22 May 2013 11:29:44 -0700
parents e118fd2c6af0
children f92f24950bd3
comparison
equal deleted inserted replaced
267:db12f6028f8b 268:f941563c2a95
333 outgoing message. This prevents folks from sending mail to recipients 333 outgoing message. This prevents folks from sending mail to recipients
334 that are unable to reply. 334 that are unable to reply.
335 </para> 335 </para>
336 <para> 336 <para>
337 If the client has authenticated with sendmail, the rate limits are 337 If the client has authenticated with sendmail, the rate limits are
338 checked. If the authenticated user has not exceeded the hourly rate 338 checked. If the authenticated user has not exceeded the hourly or daily rate
339 limit, then the mail is accepted, the filtering contexts are not used, 339 limits, then the mail is accepted, the filtering contexts are not used,
340 the dns lists are not checked, and the body content is not scanned. If 340 the dns lists are not checked, and the body content is not scanned. If
341 the client has not authenticated with sendmail, we follow these steps 341 the client has not authenticated with sendmail, we follow these steps
342 for each recipient. 342 for each recipient.
343 </para> 343 </para>
344 <orderedlist> 344 <orderedlist>
400 <listitem><para> 400 <listitem><para>
401 If the mail has not been accepted or rejected yet, the dns black lists 401 If the mail has not been accepted or rejected yet, the dns black lists
402 specified in the filtering context are checked and the mail is rejected 402 specified in the filtering context are checked and the mail is rejected
403 if any list has an A record for the standard dns based lookup scheme 403 if any list has an A record for the standard dns based lookup scheme
404 (reversed octets of the client followed by the dns suffix). 404 (reversed octets of the client followed by the dns suffix).
405 </para></listitem>
406 <listitem><para>
407 If the mail has not been accepted or rejected yet, and the filtering
408 context (or any ancestor context) requires matching reverse dns client
409 name, the mail is rejected if the client name is empty or forged.
405 </para></listitem> 410 </para></listitem>
406 <listitem><para> 411 <listitem><para>
407 If the mail has not been accepted or rejected yet, and the filtering 412 If the mail has not been accepted or rejected yet, and the filtering
408 context (or any ancestor context) specifies a non-empty generic regular 413 context (or any ancestor context) specifies a non-empty generic regular
409 expression, then we check the fully qualified client name (obtained via 414 expression, then we check the fully qualified client name (obtained via
595 </para> 600 </para>
596 <para> 601 <para>
597 Add the ability to use the DBL for content filtering. We need to avoid 602 Add the ability to use the DBL for content filtering. We need to avoid
598 checking bare ip addresses against that list. 603 checking bare ip addresses against that list.
599 </para> 604 </para>
600 <para>
601 Add daily recipient limits based on some fixed multiple (perhaps 3?)
602 of the hourly limit.
603 </para>
604 </refsect1> 605 </refsect1>
605 606
606 <refsect1 id='copyright.1'> 607 <refsect1 id='copyright.1'>
607 <title>Copyright</title> 608 <title>Copyright</title>
608 <para> 609 <para>
670 <literallayout class="monospaced"><![CDATA[ 671 <literallayout class="monospaced"><![CDATA[
671 CONFIG = {CONTEXT ";"}+ 672 CONFIG = {CONTEXT ";"}+
672 CONTEXT = "context" NAME "{" {STATEMENT}+ "}" 673 CONTEXT = "context" NAME "{" {STATEMENT}+ "}"
673 STATEMENT = (DNSBL | DNSBLLIST | DNSWL | DNSWLLIST | CONTENT | ENV-TO 674 STATEMENT = (DNSBL | DNSBLLIST | DNSWL | DNSWLLIST | CONTENT | ENV-TO
674 | VERIFY | GENERIC | W_REGEX | AUTOWHITE | CONTEXT | ENV-FROM 675 | VERIFY | GENERIC | W_REGEX | AUTOWHITE | CONTEXT | ENV-FROM
675 | RATE-LIMIT) ";" 676 | RATE-LIMIT | REQUIRERDNS) ";"
676 677
677 DNSBL = "dnsbl" NAME DNSPREFIX ERROR-MSG1 678 DNSBL = "dnsbl" NAME DNSPREFIX ERROR-MSG1
678 DNSBLLIST = "dnsbl_list" {NAME}* 679 DNSBLLIST = "dnsbl_list" {NAME}*
679 680
680 DNSWL = "dnswl" NAME DNSPREFIX LEVEL 681 DNSWL = "dnswl" NAME DNSPREFIX LEVEL
681 DNSWLLIST = "dnswl_list" {NAME}* 682 DNSWLLIST = "dnswl_list" {NAME}*
682 LEVEL = INTEGER 683 LEVEL = INTEGER
684
685 REQUIRERDNS = "require_rdns" ("yes" | "no")
683 686
684 CONTENT = "content" ("on" | "off") "{" {CONTENT-ST}+ "}" 687 CONTENT = "content" ("on" | "off") "{" {CONTENT-ST}+ "}"
685 CONTENT-ST = (FILTER | URIBL | IGNORE | TLD | CCTLD | HTML-TAGS | 688 CONTENT-ST = (FILTER | URIBL | IGNORE | TLD | CCTLD | HTML-TAGS |
686 HTML-LIMIT | HOST-LIMIT | SPAMASS | REQUIRE | DCCGREY | 689 HTML-LIMIT | HOST-LIMIT | SPAMASS | REQUIRE | DCCGREY |
687 DCCBULK) ";" 690 DCCBULK) ";"
785 dnsbl sbl zen.spamhaus.org "Mail from %s rejected - sbl; see http://www.spamhaus.org/query/bl?ip=%s"; 788 dnsbl sbl zen.spamhaus.org "Mail from %s rejected - sbl; see http://www.spamhaus.org/query/bl?ip=%s";
786 dnsbl xbl xbl.spamhaus.org "Mail from %s rejected - xbl; see http://www.spamhaus.org/query/bl?ip=%s"; 789 dnsbl xbl xbl.spamhaus.org "Mail from %s rejected - xbl; see http://www.spamhaus.org/query/bl?ip=%s";
787 dnswl dnswl.org list.dnswl.org 2; 790 dnswl dnswl.org list.dnswl.org 2;
788 dnsbl_list local sbl; 791 dnsbl_list local sbl;
789 dnswl_list dnswl.org; 792 dnswl_list dnswl.org;
793 require_rdns yes;
790 794
791 content on { 795 content on {
792 filter sbl-xbl.spamhaus.org "Mail containing %s rejected - sbl; see http://www.spamhaus.org/query/bl?ip=%s"; 796 filter sbl-xbl.spamhaus.org "Mail containing %s rejected - sbl; see http://www.spamhaus.org/query/bl?ip=%s";
793 uribl multi.surbl.org "Mail containing %s rejected - surbl; see http://www.rulesemporium.com/cgi-bin/uribl.cgi?bl0=1&domain0=%s"; 797 uribl multi.surbl.org "Mail containing %s rejected - surbl; see http://www.rulesemporium.com/cgi-bin/uribl.cgi?bl0=1&domain0=%s";
794 #uribl multi.uribl.com "Mail containing %s rejected - uribl; see http://l.uribl.com/?d=%s"; 798 #uribl multi.uribl.com "Mail containing %s rejected - uribl; see http://l.uribl.com/?d=%s";