[Карта]                [Начало]                [Sendmail-ссылки]                [Синтаксис]                [Типовые задачки]                  [Задачки по маршрутизации]                  [Задачки по маcкарадингу]                  [SendmailACL]                  [Spamooborona]                  [VadeRetro]                  [Regex]                  [Тонкости]                  [Недок.особен.]                  [Несущ.юзеры]                  [Прячемся!]                  [RFC1893.Цитаты]                  [ТП.Эмоции]                  [Антиспам&Разум]                  [Экзерсисы]                 


Типовые задачки по sendmail. Рейтинг срабатываний. ([Часть первая] [Часть вторая] )


  • 0.Общая таблица
  • 1.check_relay
  • 2.check_mail
  • 3.check_rcpt
  • 4.CheckFrom
  • 5.CheckReceived & CheckHeader
  • 6.CheckSubject
  • 7.check_eoh
  • 8.


  • 24/09/2009. Уже не актуален.

    Здесь я приведу статистику по срабатываниям не только моих рулсетов, но и встроенных антиспам-средств sendmail'a
    Текстовый вариант с нормально читаемыми таблицами здесь. А эта страница сформирована из текстового файла с.п. sed, поэтому получилась такая порнография с таблицами :( Зато здесь ссылки работающие.

    Итак, фильтруется почта для 450 пользователей.
    Мысленно разделяю их на 3 группы:
    - пофигисты или spam-check группа (около 50 человек);
    - дотошные и мнительные (около 10);
    - молчуны.

    Большинство фильтрующих правил sendmal'а срабатывают для всех пользователей.

    Часть правил, по которым возможны или уже случались ложные срабатывания, выполняется только для spam-check группы: это люди, которые предупреждены о возможных казусах, и для которых потеря письма не является громадной трагедией, то есть это представители первой группы - пофигисты. Срабатывания правил для этой группы я помечу зеленым цветом. Кроме фильтрации почты средствами sendmail, как правило, именно эта группа указывает собственный, сильно заниженный, уровень спам-веса письма для discard'a Спамообороной.

    Дотошные юзеры смертельно переживают при одной мысли, что их почта может потеряться, поэтому требуют статистику по своим почтовым ящикам. Именно с этой группой связаны все мои проблемы при составлении отчетов discard'ов Спамообороны. Их не так много, но внимания к своей почте они требуют непомерного, поэтому кажется, что их много.

    Молчуны молчат ло определенного момента. Это либо тихие пофигисты, либо люди, так и не удосужившиеся ознакомиться с регламентом работы почтового домена anrb.ru, а поэтому не знающие о предоставляемых им услугах. Как правило, молчуны потом либо просятся в spam-check группу, либо требуют всевозможные отчеты, то есть попадают в группу "дотошные", а чаще всего так и остаются молчунами.

    1. Общая таблица по всем рулсетам:

     relay   mail  rcpt   From  Subj To Ms   Rece  Head  eoh   Total    Date
                                                          ID  eived
    178766   2811   70   2598   18   0   0    928   105  1077  185551   14May
    165879   1193   42   1568    4   0   0   1050   114   157  169590   15May
    160251   2023   76   2888   15   0   0   1046   121   587  166095   16May
     45655   4009  154   5487   15   0   0   1116   104  1848   56437   17May
     21120   2679  128   2137    8   0   0    530    79   508   26581   18May
     24057   2745  138   2537    8   0   0    474    75   573   29800   19May
     25455   8421  272   7014   37   1   0   1348   141  1315   41609   20May
     79227   8351  394   6968   29   0   0   2776  1782  1295   98480   21May
     87169   6144  327   7315   31   0   0   2389  1703   827  103196   22May
     72702   4093  235   7369   35   0   0    915    83   557   83278   23May
     61987   3491  241   3969   14   0   0    596    86   536   70241   24May
     28270   2712  157   1719    6   0   0    341    75   575   33855   25May
     24644   2527   96   2136   12   0   0    421    94   418   30348   26May
     62132   4465  216   4448   35   0   0    786   110   554   72746   27May


    1. check_relay

    1. DNSBL:
    FEATURE(`dnsbl',`bl.spamcop.net', `Spam blocked see: http://spamcop.net/bl.shtml?$&{client_addr}')
    FEATURE(`dnsbl',`list.dsbl.org', `Spam blocked (list) - see http://www.dsbl.org/')

    2. DNSBL_NEW:
    FEATURE(dnsbl, `cbl.abuseat.org', `"550 Mail from " $&{client_addr} " rejected - see cbl.abuseat.org"')
    FEATURE(dnsbl, `dnsbl.njabl.org', `"550 Mail from " $&{client_addr} " rejected - see dnsbl.njabl.org"')
    FEATURE(dnsbl, `dnsbl.sorbs.net', `"550 Mail from " $&{client_addr} " rejected - see dnsbl.sorbs.net"')
    FEATURE(dnsbl, `zen.spamhaus.org', `"550 Mail from " $&{client_addr} " rejected - see zen.spamhaus.org"')
    Этот список подключается только при сбоях Спамообороны (14-16 мая были как раз такие дни):
    во-первых, передо мной не стоит задача сокращения трафика;
    а во-вторых, в эти 4 списка попали диалап-сети почти всех местных провайдеров.
    За дополнительный список спасибо Косте из Пятигорска.

    3.Pre-greeting:
    FEATURE(`greet_pause',`3000')

    4. discard:
    /etc/mail/access
    1.2.3.4 DISCARD
    domain.net DISCARD

    5. Too many open connections:
    FEATURE(`conncontrol')dnl
    /etc/mail/access:
    ClientConn:                           6
    По этому показателю срабатываний мало в силу аналогичного ограничения, сделанного ранее:
    iptables -A INPUT -p tcp --syn --dport 25 -m connlimit --connlimit-above 4 -j DROP

    6. Connection rate limit:
    FEATURE(`ratecontrol')dnl
    /etc/mail/access:
    ClientRate:                           20
    А здесь мне бы пришлось пересобирать ядро с поддержкой соответствующей фичи iptabels, что сделать я поленилась, поэтому столько срабатываний.

    -----------------------------------------------------------------------
           1         2         3         4         5          6     Total
    -----------------------------------------------------------------------
     108099  63283  5     6372     1     1011     178766    14May
      93886  65050  1     5903     0     1040     165879    15May
      92708    60820  2     5618     0     1105     160251    16May
      42014      0      4     2864     0      777      45655    17May
      19374      0      7     1665     0       81      21120    18May
      22157      0      1     1875     0       25      24057    19May
      20263      0     14     4654     0      538      25455    20May
      72430      0     12     6479     0      318      79227    21May
      81211      0      3     5805     0      153      87169    22May
      68302      0      4     4376     0       24      72702    23May
      57986      0      4     3457     0      544      61987    24May
      26213      0      5     2057     0        0      28270    25May
      23417      0      6     1216     0       11      24644    26May
      58220      0      7     3892     0       20      62132    27May
    -----------------------------------------------------------------------


    2. check_mail

    2.1. mx ссылается на 127.0.0.1 (sendmail2.html#7)
    2.2. mx ссылается на otblaze.com (sendmail2.html#6)

    2.3-5. Bad data in HELO. Проверяю макрос $&s(HELO) как можно раньше:
    -мой домен anrb.ru в HELO
    -адреса моих локальных сетей в HELO
    -localhost.localdomain в HELO (sendmail.html#22.3.1)

    2.6-7. определенные слова в имени или домене отправителя:
    game|dollar|bonus|casino|re[kc]lam|nouser|prize|job|market и тд

    2.8. внешняя почта, подписанная моими адм-адресами

    2.9. discard:
    /etc/mail/access:
    domain.net DISCARD

    2.10. notex,notres -
    R<TEMP> $*                  $#error $@ 4.1.8 $: "451 Domain of sender address " $&f " does not resolve"
    R<PERM> $*                  $#error $@ 5.1.8 $: "553 Domain of sender address " $&f " does not exist"

    2.11. Почта, подписанная заблокированными в /etc/mail/access адресами моего домена
    (Mailbox .+@$anrb.ru is full|Unknown user .+@anrb.ru|Bogus user"

    -----------------------------------------------------------------------
        1      2        3      4     5       6     Total
    ----------|------------|-----------|---|-----------------|-------------         
      19  13    88   0   17|  319   176|  3|  638   1538   0 | 2811   14May
       4   3    67   0    0|   80    80|  0|  326    633   0 | 1193   15May
      10  25     8   0   90|  180    93|  0|  515   1102   0 | 2023   16May
      22  52   203   1  258|  317   180|  0|  960   2016   0 | 4009   17May
      15  46    32   1  238|   88   106|  0|  673   1480   0 | 2679   18May
      22  53     4   0  366|  152    92|  0|  677   1379   0 | 2745   19May
      11  28   324   3   84|  870   479|  0| 2571   4051   0 | 8421   20May
      24  29   144   3   31|  657   469|  0| 3533   3461   0 | 8351   21May
      20  31   148   5   50|  369   260|  0| 2480   2781   0 | 6144   22May
       7  15    30   1   56|  386   223|  0|  962   2412   0 | 4093   23May
       5  19    20   1   33|  233   166|  0|  991   2023   0 | 3491   24May
      15  16    32   0   15|  161    96|  0|  639   1738   0 | 2712   25May
       4   3     9   0    0|  152    83|  0|  676   1600   0 | 2527   26May
      13  12    32   2   30|  315   200|  1| 1063   2797   0 | 4465   27May
    ----------------------------------------------------------------------------

    3. check_rcpt

    3.1. Точка после домена (sendmail2.html#2)
    3.2. Блокировка по спискам рассылок, на которые запрещено посылать почту извне
    (sendmail.html#4A)
    3.3. Часть локальных адресов заблокирована в /etc/mail/access по причине переполнения ящика или отсутствия активности,
    3.4. Здесь отвергается почта через /etc/mail/access вот с таких адресов (их никогда не было и скорее всего не будет):
    support@anrb.ru                   550 Bogus user
    manager@anrb.ru                   550 Bogus user
    info@anrb.ru                   550 Bogus user
    clients@anrb.ru          550 Bogus user
    orders@anrb.ru                           550 Bogus user
    recipient@anrb.ru                  550 Bogus user
    service@anrb.ru                           550 Bogus user
    register@anrb.ru                  550 Bogus user
    admin@anrb.ru                   550 Bogus user
    administartor@anrb.ru                  550 Bogus user
    sms@anrb.ru                           550 Bogus user
    james@anrb.ru                           550 Bogus user
    john@anrb.ru                           550 Bogus user
    3.5. MBoxdis. Если какой-либо e-mail указать в access с ключом REJECT/DISCARD, то в maillog
    запишется "Mailbox disabled for this recipient"
    3.6. User unknown - это отлупы самого sendmail почте для несущ. юзеров. В Total не учитываются.
    3.7. Relay denied: проверка на разрешение релеинга через наш почтовик происходит в check_rcpt, в 7 столбце мы это и обсчитываем
    3.8. Discard: лок юзер отправил письмо на домен, который задискаден в access

    ----------------------------------------------------------------------------
    Trailing Mail  Mbox Unkuser Mboxdis Userunk  Relay Discard Total   Date
    dot      list  full                          denied
        1     2     3       4      5       6        7      8                   
    ----------------------------------------------------------------------------
       0     8      39     15     0      23683      8     0       70    14May
       0     1      19      9     0       6334     13     0       42    15May
       0     6      40     12     0      17126     18     0       76    16May
       0    18      82     39     0      33259      9     6      154    17May
       0    17      65     32     0      13243     14     0      128    18May
       2     8      99     19     0      17612     10     0      138    19May
       0     6     220     20     0      81757     26     0      272    20May
       0    13     286     21     0      65778     74     0      394    21May
       0    11     200     19     0      46966     97     0      327    22May
       0    16     127     37     0      47515     55     0      235    23May
       1    14     168     28     0      34521     30     0      241    24May
       0    25      69     41     0      17030     22     0      157    25May
       0     3      47      9     0      18796     37     0       96    26May
       0     1     183     23     0      40568      9     0      216    27May
    ----------------------------------------------------------------------------

    4. CheckFrom

    4.1. Моя самая любимая проверка на количество неопознанных об[ектов в списке получателей (perebor.html#1)
    Первая цифра - количество строк ruleset=CheckFrom, имеющих отношение именно к этой проверке (те количество срабатываний этого рулсета)
    Вторая в скобках - количество писем, имевших статус этого отказа (те на одно срабатывние может приходиться несколько получателей)
    4.2. Это ловля на живца: если среди конвертных получателей есть давным-давно уволившиеся сотрудники или адреса-приманки - блокируем (sendmail2.html#9)
    4.3. Проверяем заголвочного отправителя на KChFrom1 regex -a@YES E-RE.LAM|RE(C|K)LAM|finklfan.com|planirovanie
    4.4-5. Проверяется $&_ только для spam-check группы
    #исключения
    KNOSPAM78 regex -a@MATCH ispdial.com|trais.+tenet.odessa.ua|dialognauka|89.179.240.87
    #многоцифровые адреса
    KSPAM7 regex -a@MATCH [0-9]+[._-]+[0-9]+[._-]+[0-9]+.+\[.+\]
    #dial,adsl,etc
    KSPAM8 regex -a@MATCH ppp|customer|dhcp|dial|cable|modem|adsl|dynamic|[.]dyn[.]
    4.6. Только для spam-check группы. Проверяется заголовочный отправитель на наличие:
    KCH1 regex -a@YES outblaze|check1check|mindspring|bigfoot|funnymail|bellsouth.net|tiscali.(it|nl|fr)|wanadoo.(it|nl|fr)|nic.*olastse.(com|net)|videotron.ca|blueyonder|mailcity[.]|mexico[.]|comcast.net|earthlink.com|libertysurf.net|mozartmail.com|edomex.com|quintanaroo.com|telia.com|hideakifan.com|icq.com|delphi.com|optonline.net|interbusiness.it
    KCH2 regex -a@YES sunrise.ch|netvision.net|guadalupano.com|chello.(nl|pl|at)|midco.net|mexican..com|adelphia.net|telepac.pt|louiskoo.com|rickymail.com|terra.com.br|slamdunkfan.com|barak.net.il|client.*attbi.com|concentric.com|veloxzone.com.br|wartaponsel.com|bezeqint.net|tlcfan.com|roxette.org
    KCH3 regex -a@YES swip[.]net|surfer.at|ezagenda.com|kyokofukada.net|nic[h]*olastse.(com|net)|hispeed.ch|speedy.net|(tele|sky)net.be|home.nl|interpo(c|s)hta.ru|badtzmail.com|zapopan.com|zipolit..com|netcabo.pt|YourBizHelp\.biz|hsuchi.net|hinet.net|malaysia.net|dbzmail.com|infostroy.ru
    KCH4 regex -a@YES fairgamemail.us|brainpod.com|garaga.info|puertorrico.com|garzagarcia.com|takuyakimura.com|suslik.biz|phreaker.net|hostingseries.+net|bellnexxia.net|punkass.com|smapxsmap.net|norika-fujiwara.com|avistacorp.com|mailexcite.com|kubrik.biz|rusaero.ru|spamcactus.com|fiestabrava.com|standarthost.ru|nekto.info|chokofan.com|speed.planet.nl|asianet.co.th
    KCH5 regex -a@YES centurytel.net|verisign.com|pacbell.net|versanet.de|acadia.net|accesspro.net|netzero\.com|priest.com|veretekk.com|inetekk.com|barbara.+com|barak.net|barnhallrfc.com
    KCH6 regex -a@YES [.]net[.]il|volia.net|rapidshare
    KChHeader sequence CH1 CH2 CH3 CH4 CH5 CH6
    4.7. Проверяется заголовочный отправитель только для spam-check группы. То же, что и 2.6-7.
    4.8. То же самое, что и в п.5, но проверяется для всех пользовтаелей, но срабатывает только если количество получателей письма превышает 3 человека (sendmail2.html#10)
    4.9. _- (sendmail2.html#13)

    ---------------------------------------------------------------------------
      Unkn      Honey From| Relay  Relay|  Header  Envel |   Relay    _- |   Total   Date
      >=3         Pot             | $&_    $&_ |  from   from($&f)|    $&_        |
       1           2         3       |  4       5  | 6    7|     8       9 |
    ----------------------------------------------------------------------------      
      822(2835) 18(77)   2|  471    38     32  0|  379(2738)  14|   2598    14May
      417(1289) 14(92)   1|  261     4     13  0|  435(3647)   6|   1568    15May
      912(3253) 13(107)  2|  418    24     19  0|  569(4444)  19|   2888    16May
     1951(6214) 24(117)  8|  655   126     88  3|  664(4217)  17|   5487    17May
      608(1933) 51(175)  6|  361    53     49  1|  389(1903)  11|   2137    18May
      807(2704) 16(60)   7|  415    85     53  2|  328(1879)  17|   2537    19May
     2395(7572) 15(96)  18| 1171   180    178  4|  622(4133)  36|   7014    20May
     2342(7149) 23(70)   8| 1113   180    227  3|  699(4999)  31|   6968    21May
     2709(8056) 25(73)   8|  777   170    102  0|  797(5786)  18|   7315    22May
     2711(8124) 10(36)   5|  767   173     56  0|  919(6826)  17|   7369    23May
     1993(6048) 14(55)   4|  558   102     42  1|  559(4078)  17|   3969    24May
      897(2563) 17(92)   0|  363    52     40  0|  342(1874)   8|   1719    25May
     1238(3994)  9(39)   2|  384    63     54  0|  377(2347)   9|   2136    26May
     2756(9218) 11(50)   5|  615   168     69  5|  797(5783)  22|   4448    27May
    ----------------------------------------------------------------------------

    5. CheckReceived & CheckHeader

    5.1. То же что и 4.6
    5.2 То же что и 4.6 но для макроса $&{currHeader} (весь заголовок)
    5.3 То же что и 4.6 но для макроса $&{s} (HELO)
    5.4 KChHeader2 regex -a@YES by.anrb.ru.with.(esmtp|ESMTP)\(.*[A-Z].*\)
    (sendmail2.html#14)

    ---------------------------------------
     ChRec  ChHd  ChHELO ChRec Total  Date
        1     2     3    4
    ---------------------------------------
       246   105   682   0    1033    14May
       131   114   919   0    1164    15May
       244   121   798   4    1167    16May
       172   104   944   0    1220    17May
        85    79   445   0     609    18May
       102    75   372   0     549    19May
       429   141   919   0    1489    20May
      1918  1782   857   1    4558    21May
      1773  1703   587  29    4092    22May
       223    83   657  35     998    23May
       173    86   423   0     682    24May
       101    75   240   0     416    25May
       149    94   272   0     515    26May
       238   110   466  82     896    27May
    ---------------------------------------

    6. CheckSubject

    Потом опишу

    ----------------------------------
      SPam1 SPam2 ruSPam1 Total Date
    ----------------------------------  
        8    10     0      18    14May
        3     1     0       4    15May
        8     7     0      15    16May
       13     2     0      15    17May
        5     3     0       8    18May
        6     2     0       8    19May
       21    16     0      37    20May
       17    12     0      29    21May
       11     1     0      31    22May
        4     6     0      35    23May
        6     5     0      14    24May
        6     0     0       6    25May
        4     8     0      12    26May
        5     2     0      35    27May
    ----------------------------------

    7. сheck_eoh

    7.1. Только для spam-check группы: если письмо направлется непосредственно через мой почтовик, например, с/п telnet, блокирую (sendmail.html#13)
    7.2. Если письмо направлется непосредственно через мой почтовик, например, с/п telnet, и если при этом в msgid указан мой домен - блокирую (regex.html#Received:)

    -----------------------------
       1      2     Total   Date
    -----------------------------
      189    888   1077    14May
       34    123    157    15May
      117    470    587    16May
      461   1387   1848    17May
      318    190    508    18May
      315    258    573    19May
      718    597   1315    20May
      499    796   1295    21May
      325    502    827    22May
      300    257    557    23May
      308    228    536    24May
      281    294    575    25May
      222    196    418    26May
      285    269    554    27May
    -----------------------------  

    8. CheckTo
    Потом опишу про нули ;)
    CheckTo
       1     2    3    4
       0     0    0    0    14May
       0     0    0    0    15May
       0     0    0    0    16May
       0     0    0    0    17May
       0     0    0    0    18May
       0     0    0    0    19May
       0     1    0    1    20May
       0     0    0    0    21May
       0     0    0    0    22May
       0     0    0    0    23May
       0     0    0    0    24May
       0     0    0    0    25May
       0     0    0    0    26May
       0     0    0    0    27May


    qwwwwwqwe
    qwwwwwqwe
    qwwwwwqwe
    qwwwwwqwe
    qwwwwwqwe
    qwwwwwqwe
    qwwwwwqwe
    qwwwwwqwe
    qwwwwwqwe
    qwwwwwqwe

    Обратная связь
    Страница создана 27 мая 2008г. Последнее обновление - 27 мая 2008г.