# # 2003-2005 Victor Ustugov # # проверка количества цифр в: # 1. sender hostname # 2. левой части sender hostname # 3. sender helo # 4. левой части sender helo # 5. header from # 6. левой части header from # 7. envelope from # 8. левой части envelope from # # под левой частью понимается часть до первой точки # # правила работоспособны при работе с: # 1. spamassassin # 2. spamc # 3. spamass-milter # 4. exiscan-acl # # для проверки exnvelope from в exiscan-acl нужен патч # https://mta.org.ua/exim/patches/exiscan-acl-4.34-21-SA-X-Envelope/patch-src::x-envelope-SA.patch # header __RECEIVED_SENDMAIL Received =~ /^\s*from \S+ \((\S+ )*\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]( \(.+?\))*\)\s*by\s+\S+\s*\([\d\w\.]+\/[\d\w\.]+\)/ header __RECEIVED_SPAMASS_MILTER Received =~ /^\s*from \S+ \((\S+ )*\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]( \(.+?\))*\)\s*by\s+\S+\.?; / meta __DIGITS_SENDMAIL __RECEIVED_SENDMAIL || __RECEIVED_SPAMASS_MILTER ###################################################################### # проверка sender hostname # правило срабатывает при 7 и более цифр в sender hostname header __DIGITS_HOSTNAME07_EXISCAN Received =~ /^\s*from\s+((\S*\d){7,}\S*)\s*\(\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]\s*(helo)*/ header __DIGITS_HOSTNAME07_SPAMASS_MILTER Received =~ /^\s*from\s+\S+\s*\(\s*([^\[\s]*\d{7,}[^\[\s]*)/ meta DIGITS_HOSTNAME07 (__DIGITS_HOSTNAME07_EXISCAN && !__DIGITS_SENDMAIL) || (__DIGITS_HOSTNAME07_SPAMASS_MILTER && __DIGITS_SENDMAIL) describe DIGITS_HOSTNAME07 7 or more digits in the sender hostname score DIGITS_HOSTNAME07 1.0 # правило срабатывает при 8 и более цифр в sender hostname header __DIGITS_HOSTNAME08_EXISCAN Received =~ /^\s*from\s+((\S*\d){8,}\S*)\s*\(\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]\s*(helo)*/ header __DIGITS_HOSTNAME08_SPAMASS_MILTER Received =~ /^\s*from\s+\S+\s*\(\s*([^\[\s]*\d{8,}[^\[\s]*)/ meta DIGITS_HOSTNAME08 (__DIGITS_HOSTNAME08_EXISCAN && !__DIGITS_SENDMAIL) || (__DIGITS_HOSTNAME08_SPAMASS_MILTER && __DIGITS_SENDMAIL) describe DIGITS_HOSTNAME08 8 or more digits in the sender hostname score DIGITS_HOSTNAME08 0.5 # правило срабатывает при 9 и более цифр в sender hostname header __DIGITS_HOSTNAME09_EXISCAN Received =~ /^\s*from\s+((\S*\d){9,}\S*)\s*\(\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]\s*(helo)*/ header __DIGITS_HOSTNAME09_SPAMASS_MILTER Received =~ /^\s*from\s+\S+\s*\(\s*([^\[\s]*\d{9,}[^\[\s]*)/ meta DIGITS_HOSTNAME09 (__DIGITS_HOSTNAME09_EXISCAN && !__DIGITS_SENDMAIL) || (__DIGITS_HOSTNAME09_SPAMASS_MILTER && __DIGITS_SENDMAIL) describe DIGITS_HOSTNAME09 9 or more digits in the sender hostname score DIGITS_HOSTNAME09 0.2 # правило срабатывает при 10 и более цифр в sender hostname header __DIGITS_HOSTNAME10_EXISCAN Received =~ /^\s*from\s+((\S*\d){10,}\S*)\s*\(\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]\s*(helo)*/ header __DIGITS_HOSTNAME10_SPAMASS_MILTER Received =~ /^\s*from\s+\S+\s*\(\s*([^\[\s]*\d{10,}[^\[\s]*)/ meta DIGITS_HOSTNAME10 (__DIGITS_HOSTNAME10_EXISCAN && !__DIGITS_SENDMAIL) || (__DIGITS_HOSTNAME10_SPAMASS_MILTER && __DIGITS_SENDMAIL) describe DIGITS_HOSTNAME10 10 or more digits in the sender hostname score DIGITS_HOSTNAME10 0.1 ###################################################################### # проверка левой части sender hostname # правило срабатывает при 6 и более цифр в левой части sender hostname header __DIGITS_HOSTNAME06_B_EXISCAN Received =~ /^\s*from\s+(([^\.\s]*?\d){6,}\S*)\s*\(\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]\s*(helo)*/ header __DIGITS_HOSTNAME06_B_SPAMASS_MILTER Received =~ /^\s*from\s+\S+\s*\(\s*(([^\.\s\[]*?\d){6,}\S*)/ meta DIGITS_HOSTNAME06_B (__DIGITS_HOSTNAME06_B_EXISCAN && !__DIGITS_SENDMAIL) || (__DIGITS_HOSTNAME06_B_SPAMASS_MILTER && __DIGITS_SENDMAIL) describe DIGITS_HOSTNAME06_B 6 or more digits in the begin of the sender hostname score DIGITS_HOSTNAME06_B 1.0 # правило срабатывает при 7 и более цифр в левой части sender hostname header __DIGITS_HOSTNAME07_B_EXISCAN Received =~ /^\s*from\s+(([^\.\s]*?\d){7,}\S*)\s*\(\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]\s*(helo)*/ header __DIGITS_HOSTNAME07_B_SPAMASS_MILTER Received =~ /^\s*from\s+\S+\s*\(\s*(([^\.\s\[]*?\d){7,}\S*)/ meta DIGITS_HOSTNAME07_B (__DIGITS_HOSTNAME07_B_EXISCAN && !__DIGITS_SENDMAIL) || (__DIGITS_HOSTNAME07_B_SPAMASS_MILTER && __DIGITS_SENDMAIL) describe DIGITS_HOSTNAME07_B 7 or more digits in the begin of the sender hostname score DIGITS_HOSTNAME07_B 0.5 # правило срабатывает при 8 и более цифр в левой части sender hostname header __DIGITS_HOSTNAME08_B_EXISCAN Received =~ /^\s*from\s+(([^\.\s]*?\d){8,}\S*)\s*\(\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]\s*(helo)*/ header __DIGITS_HOSTNAME08_B_SPAMASS_MILTER Received =~ /^\s*from\s+\S+\s*\(\s*(([^\.\s\[]*?\d){8,}\S*)/ meta DIGITS_HOSTNAME08_B (__DIGITS_HOSTNAME08_B_EXISCAN && !__DIGITS_SENDMAIL) || (__DIGITS_HOSTNAME08_B_SPAMASS_MILTER && __DIGITS_SENDMAIL) describe DIGITS_HOSTNAME08_B 8 or more digits in the begin of the sender hostname score DIGITS_HOSTNAME08_B 0.3 # правило срабатывает при 9 и более цифр в левой части sender hostname header __DIGITS_HOSTNAME09_B_EXISCAN Received =~ /^\s*from\s+(([^\.\s]*?\d){9,}\S*)\s*\(\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]\s*(helo)*/ header __DIGITS_HOSTNAME09_B_SPAMASS_MILTER Received =~ /^\s*from\s+\S+\s*\(\s*(([^\.\s\[]*?\d){9,}\S*)/ meta DIGITS_HOSTNAME09_B (__DIGITS_HOSTNAME09_B_EXISCAN && !__DIGITS_SENDMAIL) || (__DIGITS_HOSTNAME09_B_SPAMASS_MILTER && __DIGITS_SENDMAIL) describe DIGITS_HOSTNAME09_B 9 or more digits in the begin of the sender hostname score DIGITS_HOSTNAME09_B 0.2 # правило срабатывает при 10 и более цифр в левой части sender hostname header __DIGITS_HOSTNAME10_B_EXISCAN Received =~ /^\s*from\s+(([^\.\s]*?\d){10,}\S*)\s*\(\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]\s*(helo)*/ header __DIGITS_HOSTNAME10_B_SPAMASS_MILTER Received =~ /^\s*from\s+\S+\s*\(\s*(([^\.\s\[]*?\d){10,}\S*)/ meta DIGITS_HOSTNAME10_B (__DIGITS_HOSTNAME10_B_EXISCAN && !__DIGITS_SENDMAIL) || (__DIGITS_HOSTNAME10_B_SPAMASS_MILTER && __DIGITS_SENDMAIL) describe DIGITS_HOSTNAME10_B 10 or more digits in the begin of the sender hostname score DIGITS_HOSTNAME10_B 0.1 ###################################################################### # проверка sender helo # правило срабатывает при 7 и более цифр в sender helo header __DIGITS_HELO07_EXISCAN Received =~ /^\s*from\s+\S+\s*\(\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]\s*helo=((\S*\d){7,}\S*)/ header __DIGITS_HELO07_EXISCAN2 Received =~ /^\s*from\s*\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]\s*\(helo=((\S*\d){7,}\S*)/ header __DIGITS_HELO07_SPAMASS_MILTER Received =~ /^\s*from\s+((\S*\d){7,}\S*)\s*\(\s*\S*\s*\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]\s*[\(\)]/ meta DIGITS_HELO07 ((__DIGITS_HELO07_EXISCAN || __DIGITS_HELO07_EXISCAN2) && !__DIGITS_SENDMAIL) || (__DIGITS_HELO07_SPAMASS_MILTER && __DIGITS_SENDMAIL) describe DIGITS_HELO07 7 or more digits in the sender helo score DIGITS_HELO07 1.0 # правило срабатывает при 8 и более цифр в sender helo header __DIGITS_HELO08_EXISCAN Received =~ /^\s*from\s+\S+\s*\(\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]\s*helo=((\S*\d){8,}\S*)/ header __DIGITS_HELO08_EXISCAN2 Received =~ /^\s*from\s*\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]\s*\(helo=((\S*\d){8,}\S*)/ header __DIGITS_HELO08_SPAMASS_MILTER Received =~ /^\s*from\s+((\S*\d){8,}\S*)\s*\(\s*\S*\s*\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]\s*[\(\)]/ meta DIGITS_HELO08 ((__DIGITS_HELO08_EXISCAN || __DIGITS_HELO08_EXISCAN2) && !__DIGITS_SENDMAIL) || (__DIGITS_HELO08_SPAMASS_MILTER && __DIGITS_SENDMAIL) describe DIGITS_HELO08 8 or more digits in the sender helo score DIGITS_HELO08 0.5 # правило срабатывает при 9 и более цифр в sender helo header __DIGITS_HELO09_EXISCAN Received =~ /^\s*from\s+\S+\s*\(\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]\s*helo=((\S*\d){9,}\S*)/ header __DIGITS_HELO09_EXISCAN2 Received =~ /^\s*from\s*\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]\s*\(helo=((\S*\d){9,}\S*)/ header __DIGITS_HELO09_SPAMASS_MILTER Received =~ /^\s*from\s+((\S*\d){9,}\S*)\s*\(\s*\S*\s*\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]\s*[\(\)]/ meta DIGITS_HELO09 ((__DIGITS_HELO09_EXISCAN || __DIGITS_HELO09_EXISCAN2) && !__DIGITS_SENDMAIL) || (__DIGITS_HELO09_SPAMASS_MILTER && __DIGITS_SENDMAIL) describe DIGITS_HELO09 9 or more digits in the sender helo score DIGITS_HELO09 0.2 # правило срабатывает при 10 и более цифр в sender helo header __DIGITS_HELO10_EXISCAN Received =~ /^\s*from\s+\S+\s*\(\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]\s*helo=((\S*\d){10,}\S*)/ header __DIGITS_HELO10_EXISCAN2 Received =~ /^\s*from\s*\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]\s*\(helo=((\S*\d){10,}\S*)/ header __DIGITS_HELO10_SPAMASS_MILTER Received =~ /^\s*from\s+((\S*\d){10,}\S*)\s*\(\s*\S*\s*\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]\s*[\(\)]/ meta DIGITS_HELO10 ((__DIGITS_HELO10_EXISCAN || __DIGITS_HELO10_EXISCAN2) && !__DIGITS_SENDMAIL) || (__DIGITS_HELO10_SPAMASS_MILTER && __DIGITS_SENDMAIL) describe DIGITS_HELO10 10 or more digits in the sender helo score DIGITS_HELO10 0.1 ###################################################################### # проверка левой части sender helo # правило срабатывает при 6 и более цифр в левой части sender helo header __DIGITS_HELO06_B_EXISCAN Received =~ /^\s*from\s+\S+\s*\(\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]\s*helo=(([^\.\s]*\d){6,}\S*)/ header __DIGITS_HELO06_B_EXISCAN2 Received =~ /^\s*from\s*\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]\s*\(helo=(([^\.\s]*\d){6,}\S*)/ header __DIGITS_HELO06_B_SPAMASS_MILTER Received =~ /^\s*from\s+(([^\.\s]*\d){6,}\S*)\s*\(\s*\S*\s*\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]\s*[\(\)]/ meta DIGITS_HELO06_B ((__DIGITS_HELO06_B_EXISCAN || __DIGITS_HELO06_B_EXISCAN2)&& !__DIGITS_SENDMAIL) || (__DIGITS_HELO06_B_SPAMASS_MILTER && __DIGITS_SENDMAIL) describe DIGITS_HELO06_B 6 or more digits in the begin of the sender helo score DIGITS_HELO06_B 1.0 # правило срабатывает при 7 и более цифр в левой части sender helo header __DIGITS_HELO07_B_EXISCAN Received =~ /^\s*from\s+\S+\s*\(\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]\s*helo=(([^\.\s]*\d){7,}\S*)/ header __DIGITS_HELO07_B_EXISCAN2 Received =~ /^\s*from\s*\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]\s*\(helo=(([^\.\s]*\d){7,}\S*)/ header __DIGITS_HELO07_B_SPAMASS_MILTER Received =~ /^\s*from\s+(([^\.\s]*\d){7,}\S*)\s*\(\s*\S*\s*\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]\s*[\(\)]/ meta DIGITS_HELO07_B ((__DIGITS_HELO07_B_EXISCAN || __DIGITS_HELO07_B_EXISCAN2)&& !__DIGITS_SENDMAIL) || (__DIGITS_HELO07_B_SPAMASS_MILTER && __DIGITS_SENDMAIL) describe DIGITS_HELO07_B 7 or more digits in the begin of the sender helo score DIGITS_HELO07_B 0.5 # правило срабатывает при 8 и более цифр в левой части sender helo header __DIGITS_HELO08_B_EXISCAN Received =~ /^\s*from\s+\S+\s*\(\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]\s*helo=(([^\.\s]*\d){8,}\S*)/ header __DIGITS_HELO08_B_EXISCAN2 Received =~ /^\s*from\s*\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]\s*\(helo=(([^\.\s]*\d){8,}\S*)/ header __DIGITS_HELO08_B_SPAMASS_MILTER Received =~ /^\s*from\s+(([^\.\s]*\d){8,}\S*)\s*\(\s*\S*\s*\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]\s*[\(\)]/ meta DIGITS_HELO08_B ((__DIGITS_HELO08_B_EXISCAN || __DIGITS_HELO08_B_EXISCAN2)&& !__DIGITS_SENDMAIL) || (__DIGITS_HELO08_B_SPAMASS_MILTER && __DIGITS_SENDMAIL) describe DIGITS_HELO08_B 8 or more digits in the begin of the sender helo score DIGITS_HELO08_B 0.3 # правило срабатывает при 9 и более цифр в левой части sender helo header __DIGITS_HELO09_B_EXISCAN Received =~ /^\s*from\s+\S+\s*\(\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]\s*helo=(([^\.\s]*\d){9,}\S*)/ header __DIGITS_HELO09_B_EXISCAN2 Received =~ /^\s*from\s*\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]\s*\(helo=(([^\.\s]*\d){9,}\S*)/ header __DIGITS_HELO09_B_SPAMASS_MILTER Received =~ /^\s*from\s+(([^\.\s]*\d){9,}\S*)\s*\(\s*\S*\s*\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]\s*[\(\)]/ meta DIGITS_HELO09_B ((__DIGITS_HELO09_B_EXISCAN || __DIGITS_HELO09_B_EXISCAN2)&& !__DIGITS_SENDMAIL) || (__DIGITS_HELO09_B_SPAMASS_MILTER && __DIGITS_SENDMAIL) describe DIGITS_HELO09_B 9 or more digits in the begin of the sender helo score DIGITS_HELO09_B 0.2 # правило срабатывает при 10 и более цифр в левой части sender helo header __DIGITS_HELO10_B_EXISCAN Received =~ /^\s*from\s+\S+\s*\(\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]\s*helo=(([^\.\s]*\d){10,}\S*)/ header __DIGITS_HELO10_B_EXISCAN2 Received =~ /^\s*from\s*\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]\s*\(helo=(([^\.\s]*\d){10,}\S*)/ header __DIGITS_HELO10_B_SPAMASS_MILTER Received =~ /^\s*from\s+(([^\.\s]*\d){10,}\S*)\s*\(\s*\S*\s*\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]\s*[\(\)]/ meta DIGITS_HELO10_B ((__DIGITS_HELO10_B_EXISCAN || __DIGITS_HELO10_B_EXISCAN2)&& !__DIGITS_SENDMAIL) || (__DIGITS_HELO10_B_SPAMASS_MILTER && __DIGITS_SENDMAIL) describe DIGITS_HELO10_B 10 or more digits in the begin of the sender helo score DIGITS_HELO10_B 0.1 ###################################################################### # проверка домена header from # правило срабатывает при 7 и более цифр в header from header DIGITS_HEADER_FROM07 From =~ /\@((\S*\d){,7}\S*)/ describe DIGITS_HEADER_FROM07 7 or more digits in the header from domain score DIGITS_HEADER_FROM07 1.0 # правило срабатывает при 8 и более цифр в header from header DIGITS_HEADER_FROM08 From =~ /\@((\S*\d){,8}\S*)/ describe DIGITS_HEADER_FROM08 8 or more digits in the header from domain score DIGITS_HEADER_FROM08 0.5 # правило срабатывает при 9 и более цифр в header from header DIGITS_HEADER_FROM09 From =~ /\@((\S*\d){,9}\S*)/ describe DIGITS_HEADER_FROM09 9 or more digits in the header from domain score DIGITS_HEADER_FROM09 0.2 # правило срабатывает при 10 и более цифр в header from header DIGITS_HEADER_FROM10 From =~ /\@((\S*\d){,10}\S*)/ describe DIGITS_HEADER_FROM10 10 or more digits in the header from domain score DIGITS_HEADER_FROM10 0.1 ###################################################################### # проверка левой части домена header from # правило срабатывает при 6 и более цифр в header from header DIGITS_HEADER_FROM06_B From =~ /\@(([^\.\s]*\d){,6})/ describe DIGITS_HEADER_FROM06_B 6 or more digits in the begin of the header from score DIGITS_HEADER_FROM06_B 1.0 # правило срабатывает при 7 и более цифр в header from header DIGITS_HEADER_FROM07_B From =~ /\@(([^\.\s]*\d){,7})/ describe DIGITS_HEADER_FROM07_B 7 or more digits in the begin of the header from score DIGITS_HEADER_FROM07_B 0.5 # правило срабатывает при 8 и более цифр в header from header DIGITS_HEADER_FROM08_B From =~ /\@(([^\.\s]*\d){,8})/ describe DIGITS_HEADER_FROM08_B 8 or more digits in the begin of the header from score DIGITS_HEADER_FROM08_B 0.3 # правило срабатывает при 9 и более цифр в header from header DIGITS_HEADER_FROM09_B From =~ /\@(([^\.\s]*\d){,9})/ describe DIGITS_HEADER_FROM09_B 9 or more digits in the begin of the header from score DIGITS_HEADER_FROM09_B 0.2 # правило срабатывает при 10 и более цифр в header from header DIGITS_HEADER_FROM10_B From =~ /\@(([^\.\s]*\d){,10})/ describe DIGITS_HEADER_FROM10_B 10 or more digits in the begin of the header from score DIGITS_HEADER_FROM10_B 0.1 ###################################################################### # проверка envelope домена from # правило срабатывает при 7 и более цифр в envelope from header __DIGITS_ENV_FROM07_RETURN_PATH Return-Path =~ /\@((\S*\d){7,}\S*)/ header __DIGITS_ENV_FROM07_X_ENV_FROM X-Envelope-From =~ /\@((\S*\d){7,}\S*)/ meta DIGITS_ENV_FROM07 __DIGITS_ENV_FROM07_RETURN_PATH || __DIGITS_ENV_FROM07_X_ENV_FROM describe DIGITS_ENV_FROM07 7 or more digits in the envelope from domain score DIGITS_ENV_FROM07 1.0 # правило срабатывает при 8 и более цифр в envelope from header __DIGITS_ENV_FROM08_RETURN_PATH Return-Path =~ /\@((\S*\d){8,}\S*)/ header __DIGITS_ENV_FROM08_X_ENV_FROM X-Envelope-From =~ /\@((\S*\d){8,}\S*)/ meta DIGITS_ENV_FROM08 __DIGITS_ENV_FROM08_RETURN_PATH || __DIGITS_ENV_FROM08_X_ENV_FROM describe DIGITS_ENV_FROM08 8 or more digits in the envelope from domain score DIGITS_ENV_FROM08 0.5 # правило срабатывает при 9 и более цифр в envelope from header __DIGITS_ENV_FROM09_RETURN_PATH Return-Path =~ /\@((\S*\d){9,}\S*)/ header __DIGITS_ENV_FROM09_X_ENV_FROM X-Envelope-From =~ /\@((\S*\d){9,}\S*)/ meta DIGITS_ENV_FROM09 __DIGITS_ENV_FROM09_RETURN_PATH || __DIGITS_ENV_FROM09_X_ENV_FROM describe DIGITS_ENV_FROM09 9 or more digits in the envelope from domain score DIGITS_ENV_FROM09 0.2 # правило срабатывает при 10 и более цифр в envelope from header __DIGITS_ENV_FROM10_RETURN_PATH Return-Path =~ /\@((\S*\d){10,}\S*)/ header __DIGITS_ENV_FROM10_X_ENV_FROM X-Envelope-From =~ /\@((\S*\d){10,}\S*)/ meta DIGITS_ENV_FROM10 __DIGITS_ENV_FROM10_RETURN_PATH || __DIGITS_ENV_FROM10_X_ENV_FROM describe DIGITS_ENV_FROM10 10 or more digits in the envelope from domain score DIGITS_ENV_FROM10 0.1 ###################################################################### # проверка левой части домена envelope from # правило срабатывает при 6 и более цифр в envelope from header __DIGITS_ENV_FROM06_B_RETURN_PATH Return-Path =~ /\@(([^\.\s]*\d){6,})/ header __DIGITS_ENV_FROM06_B_X_ENV_FROM X-Envelope-From =~ /\@(([^\.\s]*\d){6,})/ meta DIGITS_ENV_FROM_B06 __DIGITS_ENV_FROM06_B_RETURN_PATH || __DIGITS_ENV_FROM06_B_X_ENV_FROM describe DIGITS_ENV_FROM_B06 Too may digits in the begin of the envelope from score DIGITS_ENV_FROM_B06 1.0 # правило срабатывает при 7 и более цифр в envelope from header __DIGITS_ENV_FROM07_B_RETURN_PATH Return-Path =~ /\@(([^\.\s]*\d){7,})/ header __DIGITS_ENV_FROM07_B_X_ENV_FROM X-Envelope-From =~ /\@(([^\.\s]*\d){7,})/ meta DIGITS_ENV_FROM_B07 __DIGITS_ENV_FROM07_B_RETURN_PATH || __DIGITS_ENV_FROM07_B_X_ENV_FROM describe DIGITS_ENV_FROM_B07 Too may digits in the begin of the envelope from score DIGITS_ENV_FROM_B07 0.5 # правило срабатывает при 8 и более цифр в envelope from header __DIGITS_ENV_FROM08_B_RETURN_PATH Return-Path =~ /\@(([^\.\s]*\d){8,})/ header __DIGITS_ENV_FROM08_B_X_ENV_FROM X-Envelope-From =~ /\@(([^\.\s]*\d){8,})/ meta DIGITS_ENV_FROM_B08 __DIGITS_ENV_FROM08_B_RETURN_PATH || __DIGITS_ENV_FROM08_B_X_ENV_FROM describe DIGITS_ENV_FROM_B08 Too may digits in the begin of the envelope from score DIGITS_ENV_FROM_B08 0.3 # правило срабатывает при 9 и более цифр в envelope from header __DIGITS_ENV_FROM09_B_RETURN_PATH Return-Path =~ /\@(([^\.\s]*\d){9,})/ header __DIGITS_ENV_FROM09_B_X_ENV_FROM X-Envelope-From =~ /\@(([^\.\s]*\d){9,})/ meta DIGITS_ENV_FROM_B09 __DIGITS_ENV_FROM09_B_RETURN_PATH || __DIGITS_ENV_FROM09_B_X_ENV_FROM describe DIGITS_ENV_FROM_B09 Too may digits in the begin of the envelope from score DIGITS_ENV_FROM_B09 0.2 # правило срабатывает при 10 и более цифр в envelope from header __DIGITS_ENV_FROM10_B_RETURN_PATH Return-Path =~ /\@(([^\.\s]*\d){10,})/ header __DIGITS_ENV_FROM10_B_X_ENV_FROM X-Envelope-From =~ /\@(([^\.\s]*\d){10,})/ meta DIGITS_ENV_FROM_B10 __DIGITS_ENV_FROM10_B_RETURN_PATH || __DIGITS_ENV_FROM10_B_X_ENV_FROM describe DIGITS_ENV_FROM_B10 Too may digits in the begin of the envelope from score DIGITS_ENV_FROM_B10 0.1