]> source.dussan.org Git - rspamd.git/commitdiff
Config tidying 278/head
authorAndrew Lewis <nerf@judo.za.org>
Wed, 6 May 2015 12:10:20 +0000 (14:10 +0200)
committerAndrew Lewis <nerf@judo.za.org>
Wed, 6 May 2015 12:10:20 +0000 (14:10 +0200)
conf/common.conf
conf/metrics.conf
conf/modules.conf

index 7155eddfc84ec50e8668a05db704a673b60514cf..a298ac1d722a13375aed7d8fad321e2c5b13710d 100644 (file)
@@ -14,5 +14,5 @@ lua = "$CONFDIR/lua/rspamd.lua"
 .include(try=true,priority=10) "$CONFDIR/rspamd.conf.local.override"
 
 modules {
-       path = "$PLUGINSDIR/lua/"
+    path = "$PLUGINSDIR/lua/"
 }
index 49f179e9f19fb47bfe5bb4b9850f6fb4fb4e821d..e439ba99fcab9cade9de7bf1859ea17c46d00fe0 100644 (file)
 
 metric {
     name = "default";
-    # If this param is set to non-zero 
+    # If this param is set to non-zero
     # then a metric would accept all symbols
     # unknown_weight = 1.0
 
-       actions {
-               reject = 15;
-               add_header = 6;
-               greylist = 4;
-       };
-       
-       group {
-               name = "header";
-           symbol {
-               weight = 2.0;
-               description = "Subject is missing inside message";
-               name = "MISSING_SUBJECT";
-           }
-           symbol {
-               weight = 2.100000;
-               description = "Message pretends to be send from Outlook but has 'strange' tags ";
-               name = "FORGED_OUTLOOK_TAGS";
-           }
-           symbol {
-               weight = 0.30;
-               description = "Sender is forged (different From: header and smtp MAIL FROM: addresses)";
-               name = "FORGED_SENDER";
-           }
-           symbol {
-               weight = 3.500000;
-               description = "Recipients seems to be autogenerated (works if recipients count is more than 5)";
-               name = "SUSPICIOUS_RECIPS";
-           }
-           symbol {
-               weight = 6.0;
-               description = "Fake reply (has RE in subject, but has not References header)";
-               name = "FAKE_REPLY_C";
-           }
-           symbol {
-               weight = 1.0;
-               description = "Messages that have only HTML part";
-               name = "MIME_HTML_ONLY";
-           }
-           symbol {
-               weight = 2.0;
-               description = "Forged yahoo msgid";
-               name = "FORGED_MSGID_YAHOO";
-           }
-           symbol {
-               weight = 2.0;
-               description = "Forged The Bat! MUA headers";
-               name = "FORGED_MUA_THEBAT_BOUN";
-           }
-           symbol {
-               weight = 5.0;
-               description = "Charset is missing in a message";
-               name = "R_MISSING_CHARSET";
-           }
-           symbol {
-               weight = 2.0;
-               description = "Two received headers with ip addresses";
-               name = "RCVD_DOUBLE_IP_SPAM";
-           }
-           symbol {
-               weight = 5.0;
-               description = "Forged outlook HTML signature";
-               name = "FORGED_OUTLOOK_HTML";
-           }
-           symbol {
-               weight = 5.0;
-               description = "Recipients are absent or undisclosed";
-               name = "R_UNDISC_RCPT";
-           }
-           symbol {
-               weight = 2.0;
-               description = "Fake helo for verizon provider";
-               name = "FM_FAKE_HELO_VERIZON";
-           }
-           symbol {
-               weight = 2.0;
-               description = "Quoted reply-to from yahoo (seems to be forged)";
-               name = "REPTO_QUOTE_YAHOO";
-           }
-           symbol {
-               weight = 5.0;
-               description = "Mime-OLE is needed but absent (e.g. fake Outlook or fake Exchange)";
-               name = "MISSING_MIMEOLE";
-           }
-           symbol {
-               weight = 2.0;
-               description = "To header is missing";
-               name = "MISSING_TO";
-           }
-           symbol {
-               weight = 1.500000;
-               description = "From that contains encoded characters while base 64 is not needed as all symbols are 7bit";
-               name = "FROM_EXCESS_BASE64";
-           }
-           symbol {
-               weight = 1.200000;
-               description = "From that contains encoded characters while quoted-printable is not needed as all symbols are 7bit";
-               name = "FROM_EXCESS_QP";
-           }
-           symbol {
-               weight = 1.500000;
-               description = "To that contains encoded characters while base 64 is not needed as all symbols are 7bit";
-               name = "TO_EXCESS_BASE64";
-           }
-           symbol {
-               weight = 1.200000;
-               description = "To that contains encoded characters while quoted-printable is not needed as all symbols are 7bit";
-               name = "TO_EXCESS_QP";
-           }
-           symbol {
-               weight = 1.500000;
-               description = "Reply-To that contains encoded characters while base 64 is not needed as all symbols are 7bit";
-               name = "REPLYTO_EXCESS_BASE64";
-           }
-           symbol {
-               weight = 1.200000;
-               description = "Reply-To that contains encoded characters while quoted-printable is not needed as all symbols are 7bit";
-               name = "REPLYTO_EXCESS_QP";
-           }
-           symbol {
-               weight = 1.500000;
-               description = "Cc that contains encoded characters while base 64 is not needed as all symbols are 7bit";
-               name = "CC_EXCESS_BASE64";
-           }
-           symbol {
-               weight = 1.200000;
-               description = "Cc that contains encoded characters while quoted-printable is not needed as all symbols are 7bit";
-               name = "CC_EXCESS_QP";
-           }
-           symbol {
-               weight = 5.0;
-               description = "Mixed characters in a message";
-               name = "R_MIXED_CHARSET";
-           }
-           symbol {
-               weight = 3.500000;
-               description = "Recipients list seems to be sorted";
-               name = "SORTED_RECIPS";
-           }
-           symbol {
-               weight = 3.0;
-               description = "Spambots signatures in received headers";
-               name = "R_RCVD_SPAMBOTS";
-           }
-           symbol {
-               weight = 2.0;
-               description = "To header seems to be autogenerated";
-               name = "R_TO_SEEMS_AUTO";
-           }
-           symbol {
-               weight = 1.0;
-               description = "Subject needs encoding";
-               name = "SUBJECT_NEEDS_ENCODING";
-           }
-           symbol {
-               weight = 3.840000;
-               description = "Spam string at the end of message to make statistics faults 0";
-               name = "TRACKER_ID";
-           }
-           symbol {
-               weight = 1.0;
-               description = "No space in from header";
-               name = "R_NO_SPACE_IN_FROM";
-           }
-           symbol {
-               weight = 8.0;
-               description = "Subject seems to be spam";
-               name = "R_SAJDING";
-           }
-           symbol {
-               weight = 3.0;
-               description = "Detects bad content-transfer-encoding for text parts";
-               name = "R_BAD_CTE_7BIT";
-           }
-           symbol {
-               weight = 10.0;
-               description = "Flash redirect on imageshack.us";
-               name = "R_FLASH_REDIR_IMGSHACK";
-           }
-           symbol {
-               weight = 5.0;
-               description = "Message id is incorrect";
-               name = "INVALID_MSGID";
-           }
-           symbol {
-               weight = 3.0;
-               description = "Message id is missing ";
-               name = "MISSING_MID";
-           }
-           symbol {
-               weight = 1.0;
-               description = "Recipients are not the same as RCPT TO: mail command";
-               name = "FORGED_RECIPIENTS";
-           }
-           symbol {
-               weight = 0.0;
-               description = "Recipients are not the same as RCPT TO: mail command, but a message from a maillist";
-               name = "FORGED_RECIPIENTS_MAILLIST";
-           }
-           symbol {
-               weight = 0.0;
-               description = "Sender is not the same as MAIL FROM: envelope, but a message is from a maillist";
-               name = "FORGED_SENDER_MAILLIST";
-           }
-           symbol {
-               weight = 2.0;
-               description = "Forged Exchange messages ";
-               name = "RATWARE_MS_HASH";
-           }
-           symbol {
-               weight = 1.0;
-               description = "Reply-type in content-type";
-               name = "STOX_REPLY_TYPE";
-           }
-           symbol {
-               weight = 1.0;
-               description = "One received header in a message ";
-               name = "ONCE_RECEIVED";
-           }
-           symbol {
-               weight = 4.0;
-               description = "One received header with 'bad' patterns inside";
-               name = "ONCE_RECEIVED_STRICT";
-           }
-           symbol {
-               weight = 2.0;
-               description = "Only Content-Type header without other MIME headers";
-               name = "MIME_HEADER_CTYPE_ONLY";
-       }
-       symbol {
-               weight = -1.0;
-               description = "Message seems to be from maillist";
-               name = "MAILLIST";
-       }
-       symbol {
-               weight = 1.0;
-               description = "Header From begins with tab";
-               name = "HEADER_FROM_DELIMITER_TAB";
-           }
-           symbol {
-               weight = 1.0;
-               description = "Header To begins with tab";
-               name = "HEADER_TO_DELIMITER_TAB";
-           }
-           symbol {
-               weight = 1.0;
-               description = "Header Cc begins with tab";
-               name = "HEADER_CC_DELIMITER_TAB";
-           }
-           symbol {
-               weight = 1.0;
-               description = "Header Reply-To begins with tab";
-               name = "HEADER_REPLYTO_DELIMITER_TAB";
-           }
-           symbol {
-               weight = 1.0;
-               description = "Header Date begins with tab";
-               name = "HEADER_DATE_DELIMITER_TAB";
-           }
-           symbol {
-               weight = 1.0;
-               description = "Header From has no delimiter between header name and header value";
-               name = "HEADER_FROM_EMPTY_DELIMITER";
-           }
-           symbol {
-               weight = 1.0;
-               description = "Header To has no delimiter between header name and header value";
-               name = "HEADER_TO_EMPTY_DELIMITER";
-           }
-           symbol {
-               weight = 1.0;
-               description = "Header Cc has no delimiter between header name and header value";
-               name = "HEADER_CC_EMPTY_DELIMITER";
-           }
-           symbol {
-               weight = 1.0;
-               description = "Header Reply-To has no delimiter between header name and header value";
-               name = "HEADER_REPLYTO_EMPTY_DELIMITER";
-           }
-           symbol {
-               weight = 1.0;
-               description = "Header Date has no delimiter between header name and header value";
-               name = "HEADER_DATE_EMPTY_DELIMITER";
-           }
-           symbol {
-               weight = 4.0;
-               description = "Header Received has raw illegal character";
-               name = "RCVD_ILLEGAL_CHARS";
-           }
-           symbol {
-               weight = 4.0;
-               description = "Fake helo mail.ru in header Received from non mail.ru sender address";
-               name = "FAKE_RECEIVED_mail_ru";
-           }
-           symbol {
-               weight = 4.0;
-               description = "Fake smtp.yandex.ru Received";
-               name = "FAKE_RECEIVED_smtp_yandex_ru";
-           }
-           symbol {
-               weight = 3.600000;
-               description = "Forged generic Received";
-               name = "FORGED_GENERIC_RECEIVED";
-           }
-           symbol {
-               weight = 3.600000;
-               description = "Forged generic Received";
-               name = "FORGED_GENERIC_RECEIVED2";
-           }
-           symbol {
-               weight = 3.600000;
-               description = "Forged generic Received";
-               name = "FORGED_GENERIC_RECEIVED3";
-           }
-           symbol {
-               weight = 3.600000;
-               description = "Forged generic Received";
-               name = "FORGED_GENERIC_RECEIVED4";
-           }
-           symbol {
-               weight = 4.600000;
-               description = "Forged generic Received";
-               name = "FORGED_GENERIC_RECEIVED5";
-           }
-           symbol {
-               weight = 3.0;
-               description = "Invalid Postfix Received";
-               name = "INVALID_POSTFIX_RECEIVED";
-           }
-           symbol {
-               weight = 5.0;
-               description = "Invalid Exim Received";
-               name = "INVALID_EXIM_RECEIVED";
-           }
-           symbol {
-               weight = 3.0;
-               description = "Invalid Exim Received";
-               name = "INVALID_EXIM_RECEIVED2";
-           }
+    actions {
+       reject = 15;
+       add_header = 6;
+       greylist = 4;
+    };
+
+    group {
+       name = "header";
+       symbol {
+           weight = 2.0;
+           description = "Subject is missing inside message";
+           name = "MISSING_SUBJECT";
+       }
+       symbol {
+           weight = 2.100000;
+           description = "Message pretends to be send from Outlook but has 'strange' tags ";
+           name = "FORGED_OUTLOOK_TAGS";
+       }
+       symbol {
+           weight = 0.30;
+           description = "Sender is forged (different From: header and smtp MAIL FROM: addresses)";
+           name = "FORGED_SENDER";
+       }
+       symbol {
+           weight = 3.500000;
+           description = "Recipients seems to be autogenerated (works if recipients count is more than 5)";
+           name = "SUSPICIOUS_RECIPS";
+       }
+       symbol {
+           weight = 6.0;
+           description = "Fake reply (has RE in subject, but has not References header)";
+           name = "FAKE_REPLY_C";
+       }
+       symbol {
+           weight = 1.0;
+           description = "Messages that have only HTML part";
+           name = "MIME_HTML_ONLY";
+       }
+       symbol {
+           weight = 2.0;
+           description = "Forged yahoo msgid";
+           name = "FORGED_MSGID_YAHOO";
+       }
+       symbol {
+           weight = 2.0;
+           description = "Forged The Bat! MUA headers";
+           name = "FORGED_MUA_THEBAT_BOUN";
+       }
+       symbol {
+           weight = 5.0;
+           description = "Charset is missing in a message";
+           name = "R_MISSING_CHARSET";
+       }
+       symbol {
+           weight = 2.0;
+           description = "Two received headers with ip addresses";
+           name = "RCVD_DOUBLE_IP_SPAM";
+       }
+       symbol {
+           weight = 5.0;
+           description = "Forged outlook HTML signature";
+           name = "FORGED_OUTLOOK_HTML";
+       }
+       symbol {
+           weight = 5.0;
+           description = "Recipients are absent or undisclosed";
+           name = "R_UNDISC_RCPT";
+       }
+       symbol {
+           weight = 2.0;
+           description = "Fake helo for verizon provider";
+           name = "FM_FAKE_HELO_VERIZON";
+       }
+       symbol {
+           weight = 2.0;
+           description = "Quoted reply-to from yahoo (seems to be forged)";
+           name = "REPTO_QUOTE_YAHOO";
+       }
+       symbol {
+           weight = 5.0;
+           description = "Mime-OLE is needed but absent (e.g. fake Outlook or fake Exchange)";
+           name = "MISSING_MIMEOLE";
+       }
+       symbol {
+           weight = 2.0;
+           description = "To header is missing";
+           name = "MISSING_TO";
+       }
+       symbol {
+           weight = 1.500000;
+           description = "From that contains encoded characters while base 64 is not needed as all symbols are 7bit";
+           name = "FROM_EXCESS_BASE64";
+       }
+       symbol {
+           weight = 1.200000;
+           description = "From that contains encoded characters while quoted-printable is not needed as all symbols are 7bit";
+           name = "FROM_EXCESS_QP";
+       }
+       symbol {
+           weight = 1.500000;
+           description = "To that contains encoded characters while base 64 is not needed as all symbols are 7bit";
+           name = "TO_EXCESS_BASE64";
+       }
+       symbol {
+           weight = 1.200000;
+           description = "To that contains encoded characters while quoted-printable is not needed as all symbols are 7bit";
+           name = "TO_EXCESS_QP";
+       }
+       symbol {
+           weight = 1.500000;
+           description = "Reply-To that contains encoded characters while base 64 is not needed as all symbols are 7bit";
+           name = "REPLYTO_EXCESS_BASE64";
+       }
+       symbol {
+           weight = 1.200000;
+           description = "Reply-To that contains encoded characters while quoted-printable is not needed as all symbols are 7bit";
+           name = "REPLYTO_EXCESS_QP";
+       }
+       symbol {
+           weight = 1.500000;
+           description = "Cc that contains encoded characters while base 64 is not needed as all symbols are 7bit";
+           name = "CC_EXCESS_BASE64";
+       }
+       symbol {
+           weight = 1.200000;
+           description = "Cc that contains encoded characters while quoted-printable is not needed as all symbols are 7bit";
+           name = "CC_EXCESS_QP";
+       }
+       symbol {
+           weight = 5.0;
+           description = "Mixed characters in a message";
+           name = "R_MIXED_CHARSET";
+       }
+       symbol {
+           weight = 3.500000;
+           description = "Recipients list seems to be sorted";
+           name = "SORTED_RECIPS";
+       }
+       symbol {
+           weight = 3.0;
+           description = "Spambots signatures in received headers";
+           name = "R_RCVD_SPAMBOTS";
+       }
+       symbol {
+           weight = 2.0;
+           description = "To header seems to be autogenerated";
+           name = "R_TO_SEEMS_AUTO";
+       }
+       symbol {
+           weight = 1.0;
+           description = "Subject needs encoding";
+           name = "SUBJECT_NEEDS_ENCODING";
+       }
+       symbol {
+           weight = 3.840000;
+           description = "Spam string at the end of message to make statistics faults 0";
+           name = "TRACKER_ID";
+       }
+       symbol {
+           weight = 1.0;
+           description = "No space in from header";
+           name = "R_NO_SPACE_IN_FROM";
+       }
+       symbol {
+           weight = 8.0;
+           description = "Subject seems to be spam";
+           name = "R_SAJDING";
+       }
+       symbol {
+           weight = 3.0;
+           description = "Detects bad content-transfer-encoding for text parts";
+           name = "R_BAD_CTE_7BIT";
+       }
+       symbol {
+           weight = 10.0;
+           description = "Flash redirect on imageshack.us";
+           name = "R_FLASH_REDIR_IMGSHACK";
+       }
+       symbol {
+           weight = 5.0;
+           description = "Message id is incorrect";
+           name = "INVALID_MSGID";
+       }
+       symbol {
+           weight = 3.0;
+           description = "Message id is missing ";
+           name = "MISSING_MID";
+       }
+       symbol {
+           weight = 1.0;
+           description = "Recipients are not the same as RCPT TO: mail command";
+           name = "FORGED_RECIPIENTS";
+       }
+       symbol {
+           weight = 0.0;
+           description = "Recipients are not the same as RCPT TO: mail command, but a message from a maillist";
+           name = "FORGED_RECIPIENTS_MAILLIST";
+       }
+       symbol {
+           weight = 0.0;
+           description = "Sender is not the same as MAIL FROM: envelope, but a message is from a maillist";
+           name = "FORGED_SENDER_MAILLIST";
+       }
+       symbol {
+           weight = 2.0;
+           description = "Forged Exchange messages ";
+           name = "RATWARE_MS_HASH";
+       }
+       symbol {
+           weight = 1.0;
+           description = "Reply-type in content-type";
+           name = "STOX_REPLY_TYPE";
+       }
+       symbol {
+           weight = 1.0;
+           description = "One received header in a message ";
+           name = "ONCE_RECEIVED";
+       }
+       symbol {
+           weight = 4.0;
+           description = "One received header with 'bad' patterns inside";
+           name = "ONCE_RECEIVED_STRICT";
+       }
+       symbol {
+           weight = 2.0;
+           description = "Only Content-Type header without other MIME headers";
+           name = "MIME_HEADER_CTYPE_ONLY";
+       }
+       symbol {
+           weight = -1.0;
+           description = "Message seems to be from maillist";
+           name = "MAILLIST";
+       }
+       symbol {
+           weight = 1.0;
+           description = "Header From begins with tab";
+           name = "HEADER_FROM_DELIMITER_TAB";
+       }
+       symbol {
+           weight = 1.0;
+           description = "Header To begins with tab";
+           name = "HEADER_TO_DELIMITER_TAB";
+       }
+       symbol {
+           weight = 1.0;
+           description = "Header Cc begins with tab";
+           name = "HEADER_CC_DELIMITER_TAB";
+       }
+       symbol {
+           weight = 1.0;
+           description = "Header Reply-To begins with tab";
+           name = "HEADER_REPLYTO_DELIMITER_TAB";
+       }
+       symbol {
+           weight = 1.0;
+           description = "Header Date begins with tab";
+           name = "HEADER_DATE_DELIMITER_TAB";
+       }
+       symbol {
+           weight = 1.0;
+           description = "Header From has no delimiter between header name and header value";
+           name = "HEADER_FROM_EMPTY_DELIMITER";
+       }
+       symbol {
+           weight = 1.0;
+           description = "Header To has no delimiter between header name and header value";
+           name = "HEADER_TO_EMPTY_DELIMITER";
+       }
+       symbol {
+           weight = 1.0;
+           description = "Header Cc has no delimiter between header name and header value";
+           name = "HEADER_CC_EMPTY_DELIMITER";
+       }
+       symbol {
+           weight = 1.0;
+           description = "Header Reply-To has no delimiter between header name and header value";
+           name = "HEADER_REPLYTO_EMPTY_DELIMITER";
+       }
+       symbol {
+           weight = 1.0;
+           description = "Header Date has no delimiter between header name and header value";
+           name = "HEADER_DATE_EMPTY_DELIMITER";
+       }
+       symbol {
+           weight = 4.0;
+           description = "Header Received has raw illegal character";
+           name = "RCVD_ILLEGAL_CHARS";
+       }
+       symbol {
+           weight = 4.0;
+           description = "Fake helo mail.ru in header Received from non mail.ru sender address";
+           name = "FAKE_RECEIVED_mail_ru";
+       }
+       symbol {
+           weight = 4.0;
+           description = "Fake smtp.yandex.ru Received";
+           name = "FAKE_RECEIVED_smtp_yandex_ru";
+       }
+       symbol {
+           weight = 3.600000;
+           description = "Forged generic Received";
+           name = "FORGED_GENERIC_RECEIVED";
+       }
+       symbol {
+           weight = 3.600000;
+           description = "Forged generic Received";
+           name = "FORGED_GENERIC_RECEIVED2";
+       }
+       symbol {
+           weight = 3.600000;
+           description = "Forged generic Received";
+           name = "FORGED_GENERIC_RECEIVED3";
+       }
+       symbol {
+           weight = 3.600000;
+           description = "Forged generic Received";
+           name = "FORGED_GENERIC_RECEIVED4";
+       }
+       symbol {
+           weight = 4.600000;
+           description = "Forged generic Received";
+           name = "FORGED_GENERIC_RECEIVED5";
+       }
+       symbol {
+           weight = 3.0;
+           description = "Invalid Postfix Received";
+           name = "INVALID_POSTFIX_RECEIVED";
+       }
+       symbol {
+           weight = 5.0;
+           description = "Invalid Exim Received";
+           name = "INVALID_EXIM_RECEIVED";
+       }
+       symbol {
+           weight = 3.0;
+           description = "Invalid Exim Received";
+           name = "INVALID_EXIM_RECEIVED2";
+       }
+    }
+
+    group {
+       name = "mua";
+       symbol {
+           weight = 4.0;
+           description = "Message pretends to be send from The Bat! but has forged Message-ID";
+           name = "FORGED_MUA_THEBAT_MSGID";
+       }
+       symbol {
+           weight = 3.0;
+           description = "Message pretends to be send from The Bat! but has forged Message-ID";
+           name = "FORGED_MUA_THEBAT_MSGID_UNKNOWN";
+       }
+       symbol {
+           weight = 3.0;
+           description = "Message pretends to be send from KMail but has forged Message-ID";
+           name = "FORGED_MUA_KMAIL_MSGID";
+       }
+       symbol {
+           weight = 2.500000;
+           description = "Message pretends to be send from KMail but has forged Message-ID";
+           name = "FORGED_MUA_KMAIL_MSGID_UNKNOWN";
+       }
+       symbol {
+           weight = 4.0;
+           description = "Message pretends to be send from Opera Mail but has forged Message-ID";
+           name = "FORGED_MUA_OPERA_MSGID";
+       }
+       symbol {
+           weight = 4.0;
+           description = "Message pretends to be send from suspicious Opera Mail/10.x (Windows) but has forged Message-ID, apparently from KMail";
+           name = "SUSPICIOUS_OPERA_10W_MSGID";
+       }
+       symbol {
+           weight = 4.0;
+           description = "Message pretends to be send from Mozilla Mail but has forged Message-ID";
+           name = "FORGED_MUA_MOZILLA_MAIL_MSGID";
+       }
+       symbol {
+           weight = 2.500000;
+           description = "Message pretends to be send from Mozilla Mail but has forged Message-ID";
+           name = "FORGED_MUA_MOZILLA_MAIL_MSGID_UNKNOWN";
+       }
+       symbol {
+           weight = 4.0;
+           description = "Forged mail pretending to be from Mozilla Thunderbird but has forged Message-ID";
+           name = "FORGED_MUA_THUNDERBIRD_MSGID";
+       }
+       symbol {
+           weight = 2.500000;
+           description = "Forged mail pretending to be from Mozilla Thunderbird but has forged Message-ID";
+           name = "FORGED_MUA_THUNDERBIRD_MSGID_UNKNOWN";
+       }
+       symbol {
+           weight = 4.0;
+           description = "Forged mail pretending to be from Mozilla Seamonkey but has forged Message-ID";
+           name = "FORGED_MUA_SEAMONKEY_MSGID";
+       }
+       symbol {
+           weight = 2.500000;
+           description = "Forged mail pretending to be from Mozilla Seamonkey but has forged Message-ID";
+           name = "FORGED_MUA_SEAMONKEY_MSGID_UNKNOWN";
+       }
+       symbol {
+           weight = 3.0;
+           description = "Forged outlook MUA";
+           name = "FORGED_MUA_OUTLOOK";
+       }
+    }
+    symbol {
+       weight = 0.0;
+       description = "Avoid false positives for FORGED_MUA_* in maillist";
+       name = "FORGED_MUA_MAILLIST";
+    }
+
+    group {
+       name = "body";
+       symbol {
+           weight = 9.0;
+           description = "White color on white background in HTML messages";
+           name = "R_WHITE_ON_WHITE";
+       }
+       symbol {
+           weight = 3.0;
+           description = "Short html part with a link to an image";
+           name = "HTML_SHORT_LINK_IMG_2";
+       }
+       symbol {
+           weight = 5.0;
+           description = "Suspicious boundary in header Content-Type";
+           name = "SUSPICIOUS_BOUNDARY";
+       }
+       symbol {
+           weight = 4.0;
+           description = "Suspicious boundary in header Content-Type";
+           name = "SUSPICIOUS_BOUNDARY2";
+       }
+       symbol {
+           weight = 3.0;
+           description = "Suspicious boundary in header Content-Type";
+           name = "SUSPICIOUS_BOUNDARY3";
+       }
+       symbol {
+           weight = 4.0;
+           description = "Suspicious boundary in header Content-Type";
+           name = "SUSPICIOUS_BOUNDARY4";
+       }
+       symbol {
+           weight = 3.0;
+           description = "Text and HTML parts differ";
+           name = "R_PARTS_DIFFER";
+       }
+
+       symbol {
+           weight = 2.0;
+           description = "Message contains empty parts and image ";
+           name = "R_EMPTY_IMAGE";
+       }
+       symbol {
+           weight = 2.0;
+           description = "Drugs patterns inside message";
+           name = "DRUGS_MANYKINDS";
+       }
+       symbol {
+           weight = 2.0;
+           description = "";
+           name = "DRUGS_ANXIETY";
+       }
+       symbol {
+           weight = 2.0;
+           description = "";
+           name = "DRUGS_MUSCLE";
+       }
+       symbol {
+           weight = 2.0;
+           description = "";
+           name = "DRUGS_ANXIETY_EREC";
+       }
+       symbol {
+           weight = 2.0;
+           description = "";
+           name = "DRUGS_DIET";
+       }
+       symbol {
+           weight = 2.0;
+           description = "";
+           name = "DRUGS_ERECTILE";
+       }
+       symbol {
+           weight = 3.300000;
+           description = "2 'advance fee' patterns in a message";
+           name = "ADVANCE_FEE_2";
+       }
+       symbol {
+           weight = 2.120000;
+           description = "3 'advance fee' patterns in a message";
+           name = "ADVANCE_FEE_3";
+       }
+       symbol {
+           weight = 8.0;
+           description = "Lotto signatures";
+           name = "R_LOTTO";
+       }
+    }
+
+    group {
+       name = "rbl";
+       symbol {
+           name = "DNSWL_BLOCKED";
+           weight = 0.0;
+           description = "Resolver blocked due to excessive queries";
+       }
+       symbol {
+           name = "RCVD_IN_DNSWL";
+           weight = 0.0;
+           description = "Sender listed at http://www.dnswl.org";
+       }
+       symbol {
+           name = "RCVD_IN_DNSWL_NONE";
+           weight = -0.05;
+           description = "Sender listed at http://www.dnswl.org, low none";
+       }
+       symbol {
+           name = "RCVD_IN_DNSWL_LOW";
+           weight = -0.1;
+           description = "Sender listed at http://www.dnswl.org, low trust";
+       }
+       symbol {
+           name = "RCVD_IN_DNSWL_MED";
+           weight = -1.0;
+           description = "Sender listed at http://www.dnswl.org, medium trust";
+       }
+       symbol {
+           name = "RCVD_IN_DNSWL_HI";
+           weight = -5.0;
+           description = "Sender listed at http://www.dnswl.org, high trust";
+       }
+
+       symbol {
+           name = "RBL_SPAMHAUS";
+           weight = 0.0;
+           description = "From address is listed in zen";
+       }
+       symbol {
+           name = "RBL_SPAMHAUS_SBL";
+           weight = 2.0;
+           description = "From address is listed in zen sbl";
+       }
+       symbol {
+           name = "RBL_SPAMHAUS_CSS";
+           weight = 2.0;
+           description = "From address is listed in zen css";
+       }
+       symbol {
+           name = "RBL_SPAMHAUS_XBL";
+           weight = 4.0;
+           description = "From address is listed in zen xbl";
+       }
+       symbol {
+           name = "RBL_SPAMHAUS_PBL";
+           weight = 2.0;
+           description = "From address is listed in zen pbl";
+       }
+       symbol {
+           name = "RECEIVED_SPAMHAUS_XBL";
+           weight = 3.0;
+           description = "Received address is listed in zen pbl";
+           one_shot = true;
+       }
+
+       symbol {
+           name = "RWL_SPAMHAUS_WL";
+           weight = 0.0;
+           description = "Sender listed at Spamhaus whitelist";
+       }
+       symbol {
+           name = "RWL_SPAMHAUS_WL_IND";
+           weight = 0.0;
+           description = "Sender listed at Spamhaus whitelist";
+       }
+       symbol {
+           name = "RWL_SPAMHAUS_WL_TRANS";
+           weight = 0.0;
+           description = "Sender listed at Spamhaus whitelist";
+       }
+       symbol {
+           name = "RWL_SPAMHAUS_WL_IND_EXP";
+           weight = 0.0;
+           description = "Sender listed at Spamhaus whitelist";
+       }
+       symbol {
+           name = "RWL_SPAMHAUS_WL_TRANS_EXP";
+           weight = 0.0;
+           description = "Sender listed at Spamhaus whitelist";
+       }
+
+       symbol {
+           weight = 2.0;
+           description = "From address is listed in senderscore.com BL";
+           name = "RBL_SENDERSCORE";
+       }
+       symbol {
+           weight = 1.0;
+           description = "From address is listed in ABUSE.CH BL";
+           name = "RBL_ABUSECH";
+       }
+       symbol {
+           weight = 1.0;
+           description = "From address is listed in UCEPROTECT LEVEL1 BL";
+           name = "RBL_UCEPROTECT_LEVEL1";
+       }
+
+       symbol {
+           name = "RBL_MAILSPIKE_ZOMBIE";
+           weight = 2.0;
+           description = "From address is listed in RBL";
+       }
+       symbol {
+           name = "RBL_MAILSPIKE_WORST";
+           weight = 2.0;
+           description = "From address is listed in RBL";
+       }
+       symbol {
+           name = "RBL_MAILSPIKE_VERYBAD";
+           weight = 1.5;
+           description = "From address is listed in RBL";
+       }
+       symbol {
+           name = "RBL_MAILSPIKE_BAD";
+           weight = 1.0;
+           description = "From address is listed in RBL";
+       }
+       symbol {
+           name = "RWL_MAILSPIKE_POSSIBLE";
+           weight = 0.0;
+           description = "From address is listed in RWL";
+       }
+       symbol {
+           name = "RWL_MAILSPIKE_GOOD";
+           weight = 0.0;
+           description = "From address is listed in RWL";
+       }
+       symbol {
+           name = "RWL_MAILSPIKE_VERYGOOD";
+           weight = 0.0;
+           description = "From address is listed in RWL";
+       }
+       symbol {
+           name = "RWL_MAILSPIKE_EXCELLENT";
+           weight = 0.0;
+           description = "From address is listed in RWL";
+       }
+
+       symbol {
+           weight = 1.0;
+           name = "RBL_SORBS";
+           description = "From address is listed in SORBS RBL";
+       }
+       symbol {
+           weight = 2.5;
+           name = "RBL_SORBS_HTTP";
+           description = "List of Open HTTP Proxy Servers.";
+       }
+       symbol {
+           weight = 2.5;
+           name = "RBL_SORBS_SOCKS";
+           description = "List of Open SOCKS Proxy Servers.";
+       }
+       symbol {
+           weight = 1.0;
+           name = "RBL_SORBS_MISC";
+           description = "List of open Proxy Servers not listed in the SOCKS or HTTP lists.";
+       }
+       symbol {
+           weight = 3.0;
+           name = "RBL_SORBS_SMTP";
+           description = "List of Open SMTP relay servers.";
+       }
+       symbol {
+           weight = 1.5;
+           name = "RBL_SORBS_RECENT";
+           description = "List of hosts that have been noted as sending spam/UCE/UBE to the admins of SORBS within the last 28 days (includes new.spam.dnsbl.sorbs.net).";
+       }
+       symbol {
+           weight = 0.4;
+           name = "RBL_SORBS_WEB";
+           description = "List of web (WWW) servers which have spammer abusable vulnerabilities (e.g. FormMail scripts)";
+       }
+       symbol {
+           weight = 2.0;
+           name = "RBL_SORBS_DUL";
+           description = "Dynamic IP Address ranges (NOT a Dial Up list!)";
+       }
+       symbol {
+           weight = 1.0;
+           name = "RBL_SORBS_BLOCK";
+           description = "List of hosts demanding that they never be tested by SORBS.";
+       }
+       symbol {
+           weight = 1.0;
+           name = "RBL_SORBS_ZOMBIE";
+           description = "List of networks hijacked from their original owners, some of which have already used for spamming.";
+       }
+
+       symbol {
+           weight = 1.0;
+           name = "RBL_SEM";
+           description = "Address is listed in Spameatingmonkey RBL";
+       }
+
+       symbol {
+           weight = 1.0;
+           name = "RBL_SEM_IPV6";
+           description = "Address is listed in Spameatingmonkey RBL (ipv6)";
+       }
     }
-    
+
     group {
-       name = "mua";
-           symbol {
-               weight = 4.0;
-               description = "Message pretends to be send from The Bat! but has forged Message-ID";
-               name = "FORGED_MUA_THEBAT_MSGID";
-           }
-           symbol {
-               weight = 3.0;
-               description = "Message pretends to be send from The Bat! but has forged Message-ID";
-               name = "FORGED_MUA_THEBAT_MSGID_UNKNOWN";
-           }
-           symbol {
-               weight = 3.0;
-               description = "Message pretends to be send from KMail but has forged Message-ID";
-               name = "FORGED_MUA_KMAIL_MSGID";
-           }
-           symbol {
-               weight = 2.500000;
-               description = "Message pretends to be send from KMail but has forged Message-ID";
-               name = "FORGED_MUA_KMAIL_MSGID_UNKNOWN";
-           }
-           symbol {
-               weight = 4.0;
-               description = "Message pretends to be send from Opera Mail but has forged Message-ID";
-               name = "FORGED_MUA_OPERA_MSGID";
-           }
-           symbol {
-               weight = 4.0;
-               description = "Message pretends to be send from suspicious Opera Mail/10.x (Windows) but has forged Message-ID, apparently from KMail";
-               name = "SUSPICIOUS_OPERA_10W_MSGID";
-           }
-           symbol {
-               weight = 4.0;
-               description = "Message pretends to be send from Mozilla Mail but has forged Message-ID";
-               name = "FORGED_MUA_MOZILLA_MAIL_MSGID";
-           }
-           symbol {
-               weight = 2.500000;
-               description = "Message pretends to be send from Mozilla Mail but has forged Message-ID";
-               name = "FORGED_MUA_MOZILLA_MAIL_MSGID_UNKNOWN";
-           }
-           symbol {
-               weight = 4.0;
-               description = "Forged mail pretending to be from Mozilla Thunderbird but has forged Message-ID";
-               name = "FORGED_MUA_THUNDERBIRD_MSGID";
-           }
-           symbol {
-               weight = 2.500000;
-               description = "Forged mail pretending to be from Mozilla Thunderbird but has forged Message-ID";
-               name = "FORGED_MUA_THUNDERBIRD_MSGID_UNKNOWN";
-           }
-           symbol {
-               weight = 4.0;
-               description = "Forged mail pretending to be from Mozilla Seamonkey but has forged Message-ID";
-               name = "FORGED_MUA_SEAMONKEY_MSGID";
-           }
-           symbol {
-               weight = 2.500000;
-               description = "Forged mail pretending to be from Mozilla Seamonkey but has forged Message-ID";
-               name = "FORGED_MUA_SEAMONKEY_MSGID_UNKNOWN";
-           }
-           symbol {
-               weight = 3.0;
-               description = "Forged outlook MUA";
-               name = "FORGED_MUA_OUTLOOK";
-           }
+       name = "bayes";
+
+       symbol {
+           weight = 3.0;
+           description = "Message probably spam, probability: ";
+           name = "BAYES_SPAM";
+       }
+       symbol {
+           weight = -3.0;
+           description = "Message probably ham, probability: ";
+           name = "BAYES_HAM";
+       }
     }
+
+    group {
+       name = "fuzzy";
+       symbol {
+           weight = 5.0;
+           description = "Generic fuzzy hash match";
+           name = "FUZZY_UNKNOWN";
+       }
+       symbol {
+           weight = 10.0;
+           description = "Denied fuzzy hash";
+           name = "FUZZY_DENIED";
+       }
+       symbol {
+           weight = 5.0;
+           description = "Probable fuzzy hash";
+           name = "FUZZY_PROB";
+       }
        symbol {
-               weight = 0.0;
-               description = "Avoid false positives for FORGED_MUA_* in maillist";
-               name = "FORGED_MUA_MAILLIST";
-       }
-    
-       group {
-               name = "body";
-           symbol {
-               weight = 9.0;
-               description = "White color on white background in HTML messages";
-               name = "R_WHITE_ON_WHITE";
-           }
-           symbol {
-               weight = 3.0;
-               description = "Short html part with a link to an image";
-               name = "HTML_SHORT_LINK_IMG_2";
-           }
-           symbol {
-               weight = 5.0;
-               description = "Suspicious boundary in header Content-Type";
-               name = "SUSPICIOUS_BOUNDARY";
-           }
-           symbol {
-               weight = 4.0;
-               description = "Suspicious boundary in header Content-Type";
-               name = "SUSPICIOUS_BOUNDARY2";
-           }
-           symbol {
-               weight = 3.0;
-               description = "Suspicious boundary in header Content-Type";
-               name = "SUSPICIOUS_BOUNDARY3";
-           }
-           symbol {
-               weight = 4.0;
-               description = "Suspicious boundary in header Content-Type";
-               name = "SUSPICIOUS_BOUNDARY4";
-           }
-           symbol {
-               weight = 3.0;
-               description = "Text and HTML parts differ";
-               name = "R_PARTS_DIFFER";
-           }
-           
-           symbol {
-               weight = 2.0;
-               description = "Message contains empty parts and image ";
-               name = "R_EMPTY_IMAGE";
-           }
-           symbol {
-               weight = 2.0;
-               description = "Drugs patterns inside message";
-               name = "DRUGS_MANYKINDS";
-           }
-           symbol {
-               weight = 2.0;
-               description = "";
-               name = "DRUGS_ANXIETY";
-           }
-           symbol {
-               weight = 2.0;
-               description = "";
-               name = "DRUGS_MUSCLE";
-           }
-           symbol {
-               weight = 2.0;
-               description = "";
-               name = "DRUGS_ANXIETY_EREC";
-           }
-           symbol {
-               weight = 2.0;
-               description = "";
-               name = "DRUGS_DIET";
-           }
-           symbol {
-               weight = 2.0;
-               description = "";
-               name = "DRUGS_ERECTILE";
-           }
-           symbol {
-               weight = 3.300000;
-               description = "2 'advance fee' patterns in a message";
-               name = "ADVANCE_FEE_2";
-           }
-           symbol {
-               weight = 2.120000;
-               description = "3 'advance fee' patterns in a message";
-               name = "ADVANCE_FEE_3";
-           }
-           symbol {
-               weight = 8.0;
-               description = "Lotto signatures";
-               name = "R_LOTTO";
-       }
+           weight = -2.1;
+           description = "Whitelisted fuzzy hash";
+           name = "FUZZY_WHITE";
+       }
     }
-    
+
     group {
-       name = "rbl";
-           symbol { name = "DNSWL_BLOCKED"; weight = 0.0; description = "Resolver blocked due to excessive queries"; }
-           symbol { name = "RCVD_IN_DNSWL"; weight = 0.0; description = "Sender listed at http://www.dnswl.org"; }
-           symbol { name = "RCVD_IN_DNSWL_NONE"; weight = -0.05; description = "Sender listed at http://www.dnswl.org, low none"; }
-           symbol { name = "RCVD_IN_DNSWL_LOW"; weight = -0.1; description = "Sender listed at http://www.dnswl.org, low trust"; }
-           symbol { name = "RCVD_IN_DNSWL_MED"; weight = -1.0; description = "Sender listed at http://www.dnswl.org, medium trust"; }
-           symbol { name = "RCVD_IN_DNSWL_HI"; weight = -5.0; description = "Sender listed at http://www.dnswl.org, high trust"; }
-       
-           symbol { name = "RBL_SPAMHAUS"; weight = 0.0; description = "From address is listed in zen"; }
-           symbol { name = "RBL_SPAMHAUS_SBL"; weight = 2.0; description = "From address is listed in zen sbl"; }
-           symbol { name = "RBL_SPAMHAUS_CSS"; weight = 2.0; description = "From address is listed in zen css"; }
-           symbol { name = "RBL_SPAMHAUS_XBL"; weight = 4.0; description = "From address is listed in zen xbl"; }
-           symbol { name = "RBL_SPAMHAUS_PBL"; weight = 2.0; description = "From address is listed in zen pbl"; }
-           symbol { name = "RECEIVED_SPAMHAUS_XBL"; weight = 3.0; description = "Received address is listed in zen pbl"; one_shot = true; }
-           
-           symbol { name = "RWL_SPAMHAUS_WL"; weight = 0.0; description = "Sender listed at Spamhaus whitelist"; }
-           symbol { name = "RWL_SPAMHAUS_WL_IND"; weight = 0.0; description = "Sender listed at Spamhaus whitelist"; }
-           symbol { name = "RWL_SPAMHAUS_WL_TRANS"; weight = 0.0; description = "Sender listed at Spamhaus whitelist"; }
-           symbol { name = "RWL_SPAMHAUS_WL_IND_EXP"; weight = 0.0; description = "Sender listed at Spamhaus whitelist"; }
-           symbol { name = "RWL_SPAMHAUS_WL_TRANS_EXP"; weight = 0.0; description = "Sender listed at Spamhaus whitelist"; }
-           
-           symbol {
-               weight = 2.0;
-               description = "From address is listed in senderscore.com BL";
-               name = "RBL_SENDERSCORE";
-           }
-           symbol {
-               weight = 1.0;
-               description = "From address is listed in ABUSE.CH BL";
-               name = "RBL_ABUSECH";
-           }
-           symbol {
-               weight = 1.0;
-               description = "From address is listed in UCEPROTECT LEVEL1 BL";
-               name = "RBL_UCEPROTECT_LEVEL1";
-           }
-           
-           symbol { name = "RBL_MAILSPIKE_ZOMBIE"; weight = 2.0; description = "From address is listed in RBL"; }
-           symbol { name = "RBL_MAILSPIKE_WORST"; weight = 2.0; description = "From address is listed in RBL"; }
-           symbol { name = "RBL_MAILSPIKE_VERYBAD"; weight = 1.5; description = "From address is listed in RBL"; }
-           symbol { name = "RBL_MAILSPIKE_BAD"; weight = 1.0; description = "From address is listed in RBL"; }
-           symbol { name = "RWL_MAILSPIKE_POSSIBLE"; weight = 0.0; description = "From address is listed in RWL"; }
-           symbol { name = "RWL_MAILSPIKE_GOOD"; weight = 0.0; description = "From address is listed in RWL"; }
-           symbol { name = "RWL_MAILSPIKE_VERYGOOD"; weight = 0.0; description = "From address is listed in RWL"; }
-           symbol { name = "RWL_MAILSPIKE_EXCELLENT"; weight = 0.0; description = "From address is listed in RWL"; }
-               
-           symbol {
-               weight = 1.0;
-               name = "RBL_SORBS";
-               description = "From address is listed in SORBS RBL";
-           }
-           symbol {
-               weight = 2.5; 
-               name = "RBL_SORBS_HTTP";
-               description = "List of Open HTTP Proxy Servers.";
-           }
-           symbol {
-               weight = 2.5;
-               name = "RBL_SORBS_SOCKS";
-               description = "List of Open SOCKS Proxy Servers.";
-           }
-           symbol {
-               weight = 1.0;
-               name = "RBL_SORBS_MISC";
-               description = "List of open Proxy Servers not listed in the SOCKS or HTTP lists.";
-           }
-           symbol {
-               weight = 3.0;
-               name = "RBL_SORBS_SMTP";
-               description = "List of Open SMTP relay servers.";
-           }
-           symbol {
-               weight = 1.5;
-               name = "RBL_SORBS_RECENT";
-               description = "List of hosts that have been noted as sending spam/UCE/UBE to the admins of SORBS within the last 28 days (includes new.spam.dnsbl.sorbs.net).";
-           }
-           symbol {
-               weight = 0.4;
-               name = "RBL_SORBS_WEB";
-               description = "List of web (WWW) servers which have spammer abusable vulnerabilities (e.g. FormMail scripts)";
-           }
-           symbol {
-               weight = 2.0;
-               name = "RBL_SORBS_DUL";
-               description = "Dynamic IP Address ranges (NOT a Dial Up list!)";
-           }
-           symbol {
-               weight = 1.0;
-               name = "RBL_SORBS_BLOCK";
-               description = "List of hosts demanding that they never be tested by SORBS.";
-           }
-           symbol {
-               weight = 1.0;
-               name = "RBL_SORBS_ZOMBIE";
-               description = "List of networks hijacked from their original owners, some of which have already used for spamming.";
-           }
-           
-           symbol {
-               weight = 1.0; 
-               name = "RBL_SEM";
-               description = "Address is listed in Spameatingmonkey RBL";
-           }
-           
-           symbol {
-               weight = 1.0; 
-               name = "RBL_SEM_IPV6";
-               description = "Address is listed in Spameatingmonkey RBL (ipv6)";
-           }
-       }
-       
-       group {
-               name = "bayes";
-               
-           symbol {
-               weight = 3.0;
-               description = "Message probably spam, probability: ";
-               name = "BAYES_SPAM";
-           }
-           symbol {
-               weight = -3.0;
-               description = "Message probably ham, probability: ";
-               name = "BAYES_HAM";
-           }
-       }
-       
-       group {
-               name = "fuzzy";
-           symbol {
-               weight = 5.0;
-               description = "Generic fuzzy hash match";
-               name = "FUZZY_UNKNOWN";
-           }
-           symbol {
-               weight = 10.0;
-               description = "Denied fuzzy hash";
-               name = "FUZZY_DENIED";
-           }
-           symbol {
-               weight = 5.0;
-               description = "Probable fuzzy hash";
-               name = "FUZZY_PROB";
-           }
-           symbol {
-               weight = -2.1;
-               description = "Whitelisted fuzzy hash";
-               name = "FUZZY_WHITE";
-           }
-       }
-       
-       group {
-               name = "spf";
-           symbol {
-               weight = 1.0;
-               description = "SPF verification failed";
-               name = "R_SPF_FAIL";
-           }
-           symbol {
-               weight = 0.0;
-               description = "SPF verification soft-failed";
-               name = "R_SPF_SOFTFAIL";
-           }
-           symbol {
-               weight = 0.0;
-               description = "SPF policy is neutral";
-               name = "R_SPF_NEUTRAL";
-           }
-           symbol {
-               weight = -1.1;
-               description = "SPF verification alowed";
-               name = "R_SPF_ALLOW";
-           }
-       }
-       
-       group {
-               name = "dkim";
-           symbol {
-               weight = 1.0;
-               description = "DKIM verification failed";
-               name = "R_DKIM_REJECT";
-           }
-           symbol {
-               weight = 0.0;
-               description = "DKIM verification soft-failed";
-               name = "R_DKIM_TEMPFAIL";
-           }
-           symbol {
-               weight = -1.1;
-               description = "DKIM verification succeed";
-               name = "R_DKIM_ALLOW";
-           }
-       }
-    
+       name = "spf";
+       symbol {
+           weight = 1.0;
+           description = "SPF verification failed";
+           name = "R_SPF_FAIL";
+       }
+       symbol {
+           weight = 0.0;
+           description = "SPF verification soft-failed";
+           name = "R_SPF_SOFTFAIL";
+       }
+       symbol {
+           weight = 0.0;
+           description = "SPF policy is neutral";
+           name = "R_SPF_NEUTRAL";
+       }
+       symbol {
+           weight = -1.1;
+           description = "SPF verification alowed";
+           name = "R_SPF_ALLOW";
+       }
+    }
+
     group {
-       name = "surbl";
-           symbol {
-               weight = 5.500000;
-               description = "SURBL: Phishing sites";
-               name = "PH_SURBL_MULTI";
-           }
-           symbol {
-               weight = 5.500000;
-               description = "SURBL: Malware sites";
-               name = "MW_SURBL_MULTI";
-           }
-           symbol {
-               weight = 5.500000;
-               description = "SURBL: AbuseButler web sites";
-               name = "AB_SURBL_MULTI";
-           }
-           symbol {
-               weight = 5.500000;
-               description = "SURBL: SpamCop web sites";
-               name = "SC_SURBL_MULTI";
-           }
-           symbol {
-               weight = 5.500000;
-               description = "SURBL: jwSpamSpy + Prolocation sites";
-               name = "JP_SURBL_MULTI";
-           }
-           symbol {
-               weight = 5.500000;
-               description = "SURBL: sa-blacklist web sites ";
-               name = "WS_SURBL_MULTI";
-           }
-           symbol {
-               weight = 4.500000;
-               description = "rambler.ru uribl";
-               name = "RAMBLER_URIBL";
-           }
-           
-           symbol { weight = 0.0; name = "SEM_URIBL_UNKNOWN"; description = "Spameatingmonkey uribl unknown"; }
-           symbol { weight = 3.5; name = "SEM_URIBL"; description = "Spameatingmonkey uribl"; }
-       
-           symbol { weight = 0.0; name = "SEM_URIBL_FRESH15_UNKNOWN"; description = "Spameatingmonkey uribl unknown"; }
-           symbol { weight = 3.0; name = "SEM_URIBL_FRESH15"; description = "Spameatingmonkey uribl. Domains registered in the last 15 days (.AERO,.BIZ,.COM,.INFO,.NAME,.NET,.PRO,.SK,.TEL,.US)"; }
-           
-           symbol {
-               weight = 0.000000;
-               description = "DBL uribl unknown symbol (error)";
-               name = "DBL";
-           }
-           symbol {
-               weight = 6.500000;
-               description = "DBL uribl spam";
-               name = "DBL_SPAM";
-           }
-           symbol {
-               weight = 6.500000;
-               description = "DBL uribl phishing";
-               name = "DBL_PHISH";
-           }
-           symbol {
-               weight = 6.500000;
-               description = "DBL uribl malware";
-               name = "DBL_MALWARE";
-           }
-           symbol {
-               weight = 5.500000;
-               description = "DBL uribl botnet C&C domain";
-               name = "DBL_BOTNET";
-           }
-           symbol {
-               weight = 6.500000;
-               description = "DBL uribl abused legit spam";
-               name = "DBL_ABUSE";
-           }
-           symbol {
-               weight = 7.500000;
-               description = "DBL uribl abused spammed redirector domain";
-               name = "DBL_ABUSE_REDIR";
-           }
-           symbol {
-               weight = 7.500000;
-               description = "DBL uribl abused legit phish";
-               name = "DBL_ABUSE_PHISH";
-           }
-           symbol {
-               weight = 7.500000;
-               description = "DBL uribl abused legit malware";
-               name = "DBL_ABUSE_MALWARE";
-           }
-           symbol {
-               weight = 5.500000;
-               description = "DBL uribl abused legit botnet C&C";
-               name = "DBL_ABUSE_BOTNET";
-           }
-           symbol {
-               weight = 0.00000;
-               description = "DBL uribl IP queries prohibited!";
-               name = "DBL_PROHIBIT";
-           }
-           symbol {
-               weight = 7.5;
-               description = "uribl.com black url";
-               name = "URIBL_BLACK";
-           }
-           symbol {
-               weight = 3.5;
-               description = "uribl.com red url";
-               name = "URIBL_RED";
-           }
-           symbol {
-               weight = 1.5;
-               description = "uribl.com grey url";
-               name = "URIBL_GREY";
-           }
-           symbol {
-               weight = 9.500000;
-               description = "rambler.ru emailbl";
-               name = "RAMBLER_EMAILBL";
-           }
+       name = "dkim";
+       symbol {
+           weight = 1.0;
+           description = "DKIM verification failed";
+           name = "R_DKIM_REJECT";
+       }
+       symbol {
+           weight = 0.0;
+           description = "DKIM verification soft-failed";
+           name = "R_DKIM_TEMPFAIL";
+       }
+       symbol {
+           weight = -1.1;
+           description = "DKIM verification succeed";
+           name = "R_DKIM_ALLOW";
+       }
     }
-    
+
     group {
-       name = "phishing";
-       
-       symbol {
-               weight = 5.0;
-               description = "Phished mail";
-               name = "PHISHING";
-       }
+       name = "surbl";
+       symbol {
+           weight = 5.500000;
+           description = "SURBL: Phishing sites";
+           name = "PH_SURBL_MULTI";
+       }
+       symbol {
+           weight = 5.500000;
+           description = "SURBL: Malware sites";
+           name = "MW_SURBL_MULTI";
+       }
+       symbol {
+           weight = 5.500000;
+           description = "SURBL: AbuseButler web sites";
+           name = "AB_SURBL_MULTI";
+       }
+       symbol {
+           weight = 5.500000;
+           description = "SURBL: SpamCop web sites";
+           name = "SC_SURBL_MULTI";
+       }
+       symbol {
+           weight = 5.500000;
+           description = "SURBL: jwSpamSpy + Prolocation sites";
+           name = "JP_SURBL_MULTI";
+       }
+       symbol {
+           weight = 5.500000;
+           description = "SURBL: sa-blacklist web sites ";
+           name = "WS_SURBL_MULTI";
+       }
+       symbol {
+           weight = 4.500000;
+           description = "rambler.ru uribl";
+           name = "RAMBLER_URIBL";
+       }
+
+       symbol {
+           weight = 0.0;
+           name = "SEM_URIBL_UNKNOWN";
+           description = "Spameatingmonkey uribl unknown";
+       }
+       symbol {
+           weight = 3.5;
+           name = "SEM_URIBL";
+           description = "Spameatingmonkey uribl";
+       }
+
+       symbol {
+           weight = 0.0;
+           name = "SEM_URIBL_FRESH15_UNKNOWN";
+           description = "Spameatingmonkey uribl unknown";
+       }
+       symbol {
+           weight = 3.0;
+           name = "SEM_URIBL_FRESH15";
+           description = "Spameatingmonkey uribl. Domains registered in the last 15 days (.AERO,.BIZ,.COM,.INFO,.NAME,.NET,.PRO,.SK,.TEL,.US)";
+       }
+
+       symbol {
+           weight = 0.000000;
+           description = "DBL uribl unknown symbol (error)";
+           name = "DBL";
+       }
+       symbol {
+           weight = 6.500000;
+           description = "DBL uribl spam";
+           name = "DBL_SPAM";
+       }
+       symbol {
+           weight = 6.500000;
+           description = "DBL uribl phishing";
+           name = "DBL_PHISH";
+       }
+       symbol {
+           weight = 6.500000;
+           description = "DBL uribl malware";
+           name = "DBL_MALWARE";
+       }
+       symbol {
+           weight = 5.500000;
+           description = "DBL uribl botnet C&C domain";
+           name = "DBL_BOTNET";
+       }
+       symbol {
+           weight = 6.500000;
+           description = "DBL uribl abused legit spam";
+           name = "DBL_ABUSE";
+       }
+       symbol {
+           weight = 7.500000;
+           description = "DBL uribl abused spammed redirector domain";
+           name = "DBL_ABUSE_REDIR";
+       }
+       symbol {
+           weight = 7.500000;
+           description = "DBL uribl abused legit phish";
+           name = "DBL_ABUSE_PHISH";
+       }
+       symbol {
+           weight = 7.500000;
+           description = "DBL uribl abused legit malware";
+           name = "DBL_ABUSE_MALWARE";
+       }
+       symbol {
+           weight = 5.500000;
+           description = "DBL uribl abused legit botnet C&C";
+           name = "DBL_ABUSE_BOTNET";
+       }
+       symbol {
+           weight = 0.00000;
+           description = "DBL uribl IP queries prohibited!";
+           name = "DBL_PROHIBIT";
+       }
+       symbol {
+           weight = 7.5;
+           description = "uribl.com black url";
+           name = "URIBL_BLACK";
+       }
+       symbol {
+           weight = 3.5;
+           description = "uribl.com red url";
+           name = "URIBL_RED";
+       }
+       symbol {
+           weight = 1.5;
+           description = "uribl.com grey url";
+           name = "URIBL_GREY";
+       }
+       symbol {
+           weight = 9.500000;
+           description = "rambler.ru emailbl";
+           name = "RAMBLER_EMAILBL";
+       }
     }
-       
-       group {
-               name = "date";
-               
-           symbol {
-               weight = 4.0;
-               description = "Message date is in future";
-               name = "DATE_IN_FUTURE";
-           }
-           symbol {
-               weight = 1.0;
-               description = "Message date is in past";
-               name = "DATE_IN_PAST";
-           }
-           symbol {
-               weight = 1.0;
-               description = "Message date is missing";
-               name = "MISSING_DATE";
-           }
+
+    group {
+       name = "phishing";
+
+       symbol {
+           weight = 5.0;
+           description = "Phished mail";
+           name = "PHISHING";
+       }
     }
-       
-       group {
-               name = "hfilter";
-               
-           symbol { weight = 4.00; name = "HFILTER_HELO_BAREIP"; description = "Helo host is bare ip"; }
-           symbol { weight = 4.50; name = "HFILTER_HELO_BADIP"; description = "Helo host is very bad ip"; }
-           symbol { weight = 4.00; name = "HFILTER_HELO_UNKNOWN"; description = "Helo host empty or unknown"; }
-           symbol { weight = 1.00; name = "HFILTER_HELO_1"; description = "Helo host checks (very low)"; }
-           symbol { weight = 2.00; name = "HFILTER_HELO_2"; description = "Helo host checks (low)"; }
-           symbol { weight = 3.00; name = "HFILTER_HELO_3"; description = "Helo host checks (medium)"; }
-           symbol { weight = 3.50; name = "HFILTER_HELO_4"; description = "Helo host checks (hard)"; }
-           symbol { weight = 4.00; name = "HFILTER_HELO_5"; description = "Helo host checks (very hard)"; }
-           symbol { weight = 1.00; name = "HFILTER_HOSTNAME_1"; description = "Hostname checks (very low)"; }
-           symbol { weight = 2.00; name = "HFILTER_HOSTNAME_2"; description = "Hostname checks (low)"; }
-           symbol { weight = 3.00; name = "HFILTER_HOSTNAME_3"; description = "Hostname checks (medium)"; }
-           symbol { weight = 3.50; name = "HFILTER_HOSTNAME_4"; description = "Hostname checks (hard)"; }
-           symbol { weight = 4.00; name = "HFILTER_HOSTNAME_5"; description = "Hostname checks (very hard)"; }
-           symbol { weight = 1.50; name = "HFILTER_HELO_NORESOLVE_MX"; description = "MX found in Helo and no resolve"; }
-           symbol { weight = 2.00; name = "HFILTER_HELO_NORES_A_OR_MX"; description = "Helo no resolve to A or MX"; }
-           symbol { weight = 1.00; name = "HFILTER_HELO_IP_A"; description = "Helo A IP != hostname IP"; }
-           symbol { weight = 3.00; name = "HFILTER_HELO_NOT_FQDN"; description = "Helo not FQDN"; }
-           symbol { weight = 1.50; name = "HFILTER_FROMHOST_NORESOLVE_MX"; description = "MX found in FROM host and no resolve"; }
-           symbol { weight = 3.50; name = "HFILTER_FROMHOST_NORES_A_OR_MX"; description = "FROM host no resolve to A or MX"; }
-           symbol { weight = 4.00; name = "HFILTER_FROMHOST_NOT_FQDN"; description = "FROM host not FQDN"; }
-           symbol { weight = 0.00; name = "HFILTER_FROM_BOUNCE"; description = "Bounce message"; }
-           symbol { weight = 0.50; name = "HFILTER_MID_NORESOLVE_MX"; description = "MX found in Message-id host and no resolve"; }
-           symbol { weight = 0.50; name = "HFILTER_MID_NORES_A_OR_MX"; description = "Message-id host no resolve to A or MX"; }
-           symbol { weight = 0.50; name = "HFILTER_MID_NOT_FQDN"; description = "Message-id host not FQDN"; }
-           symbol { weight = 4.00; name = "HFILTER_HOSTNAME_UNKNOWN"; description = "Unknown hostname (no PTR or no resolve PTR to hostname)"; }
-           symbol { weight = 1.50; name = "HFILTER_RCPT_BOUNCEMOREONE"; description = "Message from bounce and over 1 recepient"; }
-           symbol { weight = 3.50; name = "HFILTER_URL_ONLY"; description = "URL only in body"; }
-           symbol { weight = 2.20; name = "HFILTER_URL_ONELINE"; description = "One line URL and text in body"; }
+
+    group {
+       name = "date";
+
+       symbol {
+           weight = 4.0;
+           description = "Message date is in future";
+           name = "DATE_IN_FUTURE";
+       }
+       symbol {
+           weight = 1.0;
+           description = "Message date is in past";
+           name = "DATE_IN_PAST";
        }
+       symbol {
+           weight = 1.0;
+           description = "Message date is missing";
+           name = "MISSING_DATE";
+       }
+    }
+
+    group {
+       name = "hfilter";
+
+       symbol {
+           weight = 4.00;
+           name = "HFILTER_HELO_BAREIP";
+           description = "Helo host is bare ip";
+       }
+       symbol {
+           weight = 4.50;
+           name = "HFILTER_HELO_BADIP";
+           description = "Helo host is very bad ip";
+       }
+       symbol {
+           weight = 4.00;
+           name = "HFILTER_HELO_UNKNOWN";
+           description = "Helo host empty or unknown";
+       }
+       symbol {
+           weight = 1.00;
+           name = "HFILTER_HELO_1";
+           description = "Helo host checks (very low)";
+       }
+       symbol {
+           weight = 2.00;
+           name = "HFILTER_HELO_2";
+           description = "Helo host checks (low)";
+       }
+       symbol {
+           weight = 3.00;
+           name = "HFILTER_HELO_3";
+           description = "Helo host checks (medium)";
+       }
+       symbol {
+           weight = 3.50;
+           name = "HFILTER_HELO_4";
+           description = "Helo host checks (hard)";
+       }
+       symbol {
+           weight = 4.00;
+           name = "HFILTER_HELO_5";
+           description = "Helo host checks (very hard)";
+       }
+       symbol {
+           weight = 1.00;
+           name = "HFILTER_HOSTNAME_1";
+           description = "Hostname checks (very low)";
+       }
+       symbol {
+           weight = 2.00;
+           name = "HFILTER_HOSTNAME_2";
+           description = "Hostname checks (low)";
+       }
+       symbol {
+           weight = 3.00;
+           name = "HFILTER_HOSTNAME_3";
+           description = "Hostname checks (medium)";
+       }
+       symbol {
+           weight = 3.50;
+           name = "HFILTER_HOSTNAME_4";
+           description = "Hostname checks (hard)";
+       }
+       symbol {
+           weight = 4.00;
+           name = "HFILTER_HOSTNAME_5";
+           description = "Hostname checks (very hard)";
+       }
+       symbol {
+           weight = 1.50;
+           name = "HFILTER_HELO_NORESOLVE_MX";
+           description = "MX found in Helo and no resolve";
+       }
+       symbol {
+           weight = 2.00;
+           name = "HFILTER_HELO_NORES_A_OR_MX";
+           description = "Helo no resolve to A or MX";
+       }
+       symbol {
+           weight = 1.00;
+           name = "HFILTER_HELO_IP_A";
+           description = "Helo A IP != hostname IP";
+       }
+       symbol {
+           weight = 3.00;
+           name = "HFILTER_HELO_NOT_FQDN";
+           description = "Helo not FQDN";
+       }
+       symbol {
+           weight = 1.50;
+           name = "HFILTER_FROMHOST_NORESOLVE_MX";
+           description = "MX found in FROM host and no resolve";
+       }
+       symbol {
+           weight = 3.50;
+           name = "HFILTER_FROMHOST_NORES_A_OR_MX";
+           description = "FROM host no resolve to A or MX";
+       }
+       symbol {
+           weight = 4.00;
+           name = "HFILTER_FROMHOST_NOT_FQDN";
+           description = "FROM host not FQDN";
+       }
+       symbol {
+           weight = 0.00;
+           name = "HFILTER_FROM_BOUNCE";
+           description = "Bounce message";
+       }
+       symbol {
+           weight = 0.50;
+           name = "HFILTER_MID_NORESOLVE_MX";
+           description = "MX found in Message-id host and no resolve";
+       }
+       symbol {
+           weight = 0.50;
+           name = "HFILTER_MID_NORES_A_OR_MX";
+           description = "Message-id host no resolve to A or MX";
+       }
+       symbol {
+           weight = 0.50;
+           name = "HFILTER_MID_NOT_FQDN";
+           description = "Message-id host not FQDN";
+       }
+       symbol {
+           weight = 4.00;
+           name = "HFILTER_HOSTNAME_UNKNOWN";
+           description = "Unknown hostname (no PTR or no resolve PTR to hostname)";
+       }
+       symbol {
+           weight = 1.50;
+           name = "HFILTER_RCPT_BOUNCEMOREONE";
+           description = "Message from bounce and over 1 recepient";
+       }
+       symbol {
+           weight = 3.50;
+           name = "HFILTER_URL_ONLY";
+           description = "URL only in body";
+       }
+       symbol {
+           weight = 2.20;
+           name = "HFILTER_URL_ONELINE";
+           description = "One line URL and text in body";
+       }
+    }
 }
index 3bd62c67299f0327b375da9a917a719fe314158b..ad875ece30678976a47c5b435540ecd9d6a97ff6 100644 (file)
@@ -1,36 +1,40 @@
 # Rspamd modules configuration
+
 fuzzy_check {
     min_bytes = 300;
-       rule {
-               servers = "highsecure.ru:11335";
-               symbol = "FUZZY_UNKNOWN";
-               mime_types = "application/pdf";
-               max_score = 20.0;
-               read_only = yes;
-               skip_unknown = yes;
-               fuzzy_map = {
-                       FUZZY_DENIED {
-                               max_score = 20.0;
-                               flag = 1
-                       }
-                       FUZZY_PROB {
-                               max_score = 10.0;
-                               flag = 2
-                       }
-                       FUZZY_WHITE {
-                               max_score = 2.0;
-                               flag = 3
-                       }
-               }
-       }
+    rule {
+        servers = "highsecure.ru:11335";
+        symbol = "FUZZY_UNKNOWN";
+        mime_types = "application/pdf";
+        max_score = 20.0;
+        read_only = yes;
+        skip_unknown = yes;
+        fuzzy_map = {
+            FUZZY_DENIED {
+                max_score = 20.0;
+                flag = 1;
+            }
+            FUZZY_PROB {
+                max_score = 10.0;
+                flag = 2;
+            }
+            FUZZY_WHITE {
+                max_score = 2.0;
+                flag = 3;
+            }
+        }
+    }
 }
+
 forged_recipients {
     symbol_sender = "FORGED_SENDER";
     symbol_rcpt = "FORGED_RECIPIENTS";
 }
+
 maillist {
     symbol = "MAILLIST";
 }
+
 surbl {
     whitelist = "file://$CONFDIR/surbl-whitelist.inc";
     exceptions = "file://$CONFDIR/2tld.inc";
@@ -65,16 +69,26 @@ surbl {
         symbol = "DBL";
         options = "noip";
         ips = {
-            DBL_SPAM = "127.0.1.2";    # spam domain
-            DBL_PHISH = "127.0.1.4";   # phish domain
-            DBL_MALWARE = "127.0.1.5";         # malware domain
-            DBL_BOTNET = "127.0.1.6";  # botnet C&C domain
-            DBL_ABUSE = "127.0.1.102";         # abused legit spam
-            DBL_ABUSE_REDIR = "127.0.1.103";   # abused spammed redirector domain
-            DBL_ABUSE_PHISH = "127.0.1.104";   # abused legit phish
-            DBL_ABUSE_MALWARE = "127.0.1.105";         # abused legit malware
-            DBL_ABUSE_BOTNET = "127.0.1.106";  # abused legit botnet C&C
-            DBL_PROHIBIT = "127.0.1.255";      # IP queries prohibited!
+            # spam domain
+            DBL_SPAM = "127.0.1.2";
+            # phish domain
+            DBL_PHISH = "127.0.1.4";
+            # malware domain
+            DBL_MALWARE = "127.0.1.5";
+            # botnet C&C domain
+            DBL_BOTNET = "127.0.1.6";
+            # abused legit spam
+            DBL_ABUSE = "127.0.1.102";
+            # abused spammed redirector domain
+            DBL_ABUSE_REDIR = "127.0.1.103";
+            # abused legit phish
+            DBL_ABUSE_PHISH = "127.0.1.104";
+            # abused legit malware
+            DBL_ABUSE_MALWARE = "127.0.1.105";
+            # abused legit botnet C&C
+            DBL_ABUSE_BOTNET = "127.0.1.106";
+            # error - IP queries prohibited!
+            DBL_PROHIBIT = "127.0.1.255";
         }
     }
     rule {
@@ -94,150 +108,152 @@ surbl {
         options = "noip";
     }
 }
+
 rbl {
 
- default_from = true;
- default_received = false;
- default_exclude_users = true;
-
- private_ips = "127.0.0.0/8 10.0.0.0/8 192.168.0.0/16 169.254.0.0/16 172.16.0.0/12 100.64.0.0/10 fc00::/7 fe80::/10 fec0::/10 ::1";
-
- rbls {
-       
-    spamhaus {
-        symbol = "RBL_SPAMHAUS";
-        rbl = "zen.spamhaus.org";
-        ipv6 = true;
-        returncodes {
-            RBL_SPAMHAUS_SBL = "127.0.0.2";
-            RBL_SPAMHAUS_CSS = "127.0.0.3";
-            RBL_SPAMHAUS_XBL = "127.0.0.4";
-            RBL_SPAMHAUS_XBL = "127.0.0.5";
-            RBL_SPAMHAUS_XBL = "127.0.0.6";
-            RBL_SPAMHAUS_XBL = "127.0.0.7";
-            RBL_SPAMHAUS_PBL = "127.0.0.10";
-            RBL_SPAMHAUS_PBL = "127.0.0.11";
+    default_from = true;
+    default_received = false;
+    default_exclude_users = true;
+
+    private_ips = "127.0.0.0/8 10.0.0.0/8 192.168.0.0/16 169.254.0.0/16 172.16.0.0/12 100.64.0.0/10 fc00::/7 fe80::/10 fec0::/10 ::1";
+
+    rbls {
+
+        spamhaus {
+            symbol = "RBL_SPAMHAUS";
+            rbl = "zen.spamhaus.org";
+            ipv6 = true;
+            returncodes {
+                RBL_SPAMHAUS_SBL = "127.0.0.2";
+                RBL_SPAMHAUS_CSS = "127.0.0.3";
+                RBL_SPAMHAUS_XBL = "127.0.0.4";
+                RBL_SPAMHAUS_XBL = "127.0.0.5";
+                RBL_SPAMHAUS_XBL = "127.0.0.6";
+                RBL_SPAMHAUS_XBL = "127.0.0.7";
+                RBL_SPAMHAUS_PBL = "127.0.0.10";
+                RBL_SPAMHAUS_PBL = "127.0.0.11";
+            }
         }
-    }
 
-    spamhaus_xbl {
-       symbol = "RECEIVED_SPAMHAUS_XBL";
-       rbl = "xbl.spamhaus.org";
-       ipv6 = true;
-       received = true;
-       from = false;
-    }
-    
-    spamhaus_swl {
-        symbol = "RWL_SPAMHAUS_WL";
-        rbl = "swl.spamhaus.org";
-        ipv6 = true;
-        is_whitelist = true;
-        returncodes {
-            RWL_SPAMHAUS_WL_IND = "127.0.2.2";
-            RWL_SPAMHAUS_WL_TRANS = "127.0.2.3";
-            RWL_SPAMHAUS_WL_IND_EXP = "127.0.2.102";
-            RWL_SPAMHAUS_WL_TRANS_EXP = "127.0.2.103";
+        spamhaus_xbl {
+            symbol = "RECEIVED_SPAMHAUS_XBL";
+            rbl = "xbl.spamhaus.org";
+            ipv6 = true;
+            received = true;
+            from = false;
         }
-    }
 
-    mailspike_bl {
-       rbl = "bl.mailspike.net";
-       returncodes {
-            RBL_MAILSPIKE_ZOMBIE = "127.0.0.2";
-            RBL_MAILSPIKE_WORST = "127.0.0.10";
-            RBL_MAILSPIKE_VERYBAD = "127.0.0.11";
-            RBL_MAILSPIKE_BAD = "127.0.0.12";
-       }
-    }
+        spamhaus_swl {
+            symbol = "RWL_SPAMHAUS_WL";
+            rbl = "swl.spamhaus.org";
+            ipv6 = true;
+            is_whitelist = true;
+            returncodes {
+                RWL_SPAMHAUS_WL_IND = "127.0.2.2";
+                RWL_SPAMHAUS_WL_TRANS = "127.0.2.3";
+                RWL_SPAMHAUS_WL_IND_EXP = "127.0.2.102";
+                RWL_SPAMHAUS_WL_TRANS_EXP = "127.0.2.103";
+            }
+        }
 
-    mailspike_wl {
-       rbl = "wl.mailspike.net";
-       is_whitelist = true;
-       returncodes {
-            RWL_MAILSPIKE_POSSIBLE = "127.0.0.17";
-            RWL_MAILSPIKE_GOOD = "127.0.0.18";
-            RWL_MAILSPIKE_VERYGOOD = "127.0.0.19";
-            RWL_MAILSPIKE_EXCELLENT = "127.0.0.20";
-         }
-    }
-    
-    senderscore {
-       symbol = "RBL_SENDERSCORE";
-       rbl = "bl.score.senderscore.com";
-    }
-    
-    abusech {
-       symbol = "RBL_ABUSECH";
-       rbl = "spam.abuse.ch";
-    }
-    
-    uceprotect1 {
-       symbol = "RBL_UCEPROTECT_LEVEL1";
-       rbl = "dnsbl-1.uceprotect.net";
-    }
-    
-    sorbs {
-       symbol = "RBL_SORBS";
-       rbl = "dnsbl.sorbs.net";
-       returncodes {
-            #http://www.sorbs.net/general/using.shtml
-            RBL_SORBS_HTTP = "127.0.0.2"
-            RBL_SORBS_SOCKS = "127.0.0.3"
-            RBL_SORBS_MISC = "127.0.0.4"
-            RBL_SORBS_SMTP = "127.0.0.5"
-            RBL_SORBS_RECENT = "127.0.0.6"
-            RBL_SORBS_WEB = "127.0.0.7"
-            RBL_SORBS_DUL = "127.0.0.10"
-            RBL_SORBS_BLOCK = "127.0.0.8"
-            RBL_SORBS_ZOMBIE = "127.0.0.9"
-       }
-    }
-    
-    sem {
-        symbol = "RBL_SEM";
-        rbl = "bl.spameatingmonkey.net";
-    }
-    
-    semIPv6 {
-        symbol = "RBL_SEM_IPV6";
-        rbl = "bl.ipv6.spameatingmonkey.net";
-        ipv4 = false;
-        ipv6 = true;
-    }
+        mailspike_bl {
+            rbl = "bl.mailspike.net";
+            returncodes {
+                RBL_MAILSPIKE_ZOMBIE = "127.0.0.2";
+                RBL_MAILSPIKE_WORST = "127.0.0.10";
+                RBL_MAILSPIKE_VERYBAD = "127.0.0.11";
+                RBL_MAILSPIKE_BAD = "127.0.0.12";
+            }
+        }
 
-    dnswl {
-        symbol = "RCVD_IN_DNSWL";
-        rbl = "list.dnswl.org";
-        ipv6 = true;
-        is_whitelist = true;
-        returncodes {
-            RCVD_IN_DNSWL_NONE = "127.0.%d+.0";
-            RCVD_IN_DNSWL_LOW = "127.0.%d+.1";
-            RCVD_IN_DNSWL_MED = "127.0.%d+.2";
-            RCVD_IN_DNSWL_HI  = "127.0.%d+.3";
-            DNSWL_BLOCKED = "127.0.0.255";
+        mailspike_wl {
+            rbl = "wl.mailspike.net";
+            is_whitelist = true;
+            returncodes {
+                RWL_MAILSPIKE_POSSIBLE = "127.0.0.17";
+                RWL_MAILSPIKE_GOOD = "127.0.0.18";
+                RWL_MAILSPIKE_VERYGOOD = "127.0.0.19";
+                RWL_MAILSPIKE_EXCELLENT = "127.0.0.20";
+            }
         }
-    }
 
-    rambleremails {
-        symbol = RAMBLER_EMAILBL;
-        rbl = email-bl.rambler.ru;
-        from = false;
-        emails = true;
-        exclude_users = false;
-        exclude_private_ips = false;
-        exclude_local = false;
-        ignore_whitelists = true;
-    }
+        senderscore {
+            symbol = "RBL_SENDERSCORE";
+            rbl = "bl.score.senderscore.com";
+        }
+
+        abusech {
+            symbol = "RBL_ABUSECH";
+            rbl = "spam.abuse.ch";
+        }
+
+        uceprotect1 {
+            symbol = "RBL_UCEPROTECT_LEVEL1";
+            rbl = "dnsbl-1.uceprotect.net";
+        }
+
+        sorbs {
+            symbol = "RBL_SORBS";
+            rbl = "dnsbl.sorbs.net";
+            returncodes {
+                # http:// www.sorbs.net/general/using.shtml
+                RBL_SORBS_HTTP = "127.0.0.2";
+                RBL_SORBS_SOCKS = "127.0.0.3";
+                RBL_SORBS_MISC = "127.0.0.4";
+                RBL_SORBS_SMTP = "127.0.0.5";
+                RBL_SORBS_RECENT = "127.0.0.6";
+                RBL_SORBS_WEB = "127.0.0.7";
+                RBL_SORBS_DUL = "127.0.0.10";
+                RBL_SORBS_BLOCK = "127.0.0.8";
+                RBL_SORBS_ZOMBIE = "127.0.0.9";
+            }
+        }
+
+        sem {
+            symbol = "RBL_SEM";
+            rbl = "bl.spameatingmonkey.net";
+        }
 
- }
+        semIPv6 {
+            symbol = "RBL_SEM_IPV6";
+            rbl = "bl.ipv6.spameatingmonkey.net";
+            ipv4 = false;
+            ipv6 = true;
+        }
+
+        dnswl {
+            symbol = "RCVD_IN_DNSWL";
+            rbl = "list.dnswl.org";
+            ipv6 = true;
+            is_whitelist = true;
+            returncodes {
+                RCVD_IN_DNSWL_NONE = "127.0.%d+.0";
+                RCVD_IN_DNSWL_LOW = "127.0.%d+.1";
+                RCVD_IN_DNSWL_MED = "127.0.%d+.2";
+                RCVD_IN_DNSWL_HI = "127.0.%d+.3";
+                DNSWL_BLOCKED = "127.0.0.255";
+            }
+        }
+
+        rambleremails {
+            symbol = RAMBLER_EMAILBL;
+            rbl = "email-bl.rambler.ru";
+            from = false;
+            emails = true;
+            exclude_users = false;
+            exclude_private_ips = false;
+            exclude_local = false;
+            ignore_whitelists = true;
+        }
+
+    }
 }
 
 chartable {
     threshold = 0.300000;
     symbol = "R_MIXED_CHARSET";
 }
+
 once_received {
     good_host = "mail";
     bad_host = "static";
@@ -252,12 +268,15 @@ once_received {
 phishing {
     symbol = "PHISHING";
 }
+
 #emails {
 #}
+
 spf {
     spf_cache_size = 2k;
     spf_cache_expire = 1d;
 }
+
 dkim {
     dkim_cache_size = 2k;
     dkim_cache_expire = 1d;
@@ -282,12 +301,12 @@ regexp {
 }
 
 ip_score {
-#      servers = "localhost";
-#   treshold = 100;
-#   reject_score = 3;
-#   no_action_score = -2;
-#   add_header_score = 1;
-#   whitelist = "file:///ip_map";
+#    servers = "localhost";
+#    treshold = 100;
+#    reject_score = 3;
+#    no_action_score = -2;
+#    add_header_score = 1;
+#    whitelist = "file:///ip_map";
 }
 
 hfilter {