The OpenNET Project / Index page

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



"postfix+amavis+spamassasin"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Открытые системы на сервере (Почта / Linux)
Изначальное сообщение [ Отслеживать ]

"postfix+amavis+spamassasin"  +/
Сообщение от kazakov_0001 (ok), 07-Мрт-23, 10:55 
Добрый день, коллеги.
Настраиваю связку postfix+amavis+spamassasin
Столкнулся с проблемой которую решить самостоятельно не получается.

Amavis исправно сортируют письма со спамом в "карантин" подставляя в заголовок письма следующее:

X-Quarantine-ID: <lP4-iBVxNdji>
X-Spam-Flag: YES
X-Spam-Score: 995.053
X-Spam-Level: ****************************************************************
X-Spam-Status: Yes, score=995.053 tag=2 tag2=6.31 kill=6.31
        tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1........

Так-же, получилось настроить пересылать письма со спамом на отдельный почтовый ящик. Но задача такая:
Сделать так, чтобы письма со спамом складывались в папку "СПАМ" пользователя. Это можно реализовать через Dovecot+sieve.

Но вот в чем соль. Если в конфмге amavis выставит директиву:
$final_spam_destiny       = D_PASS; письма со спамом поступают пользователю уже без заголовка X-Spam-Flag: YES. Также они не помечаются как ***SPAM***

Помогите решить проблему.

конфиги:
main.cf
content_filter = scan:[127.0.0.1]:10024

master.cf
127.0.0.1:10025 inet    n       -       -       -       -       smtpd
        -o content_filter=
        -o local_recipient_maps=
        -o relay_recipient_maps=
        -o smtpd_restriction_classes=
        -o smtpd_delay_reject=no
        -o smtpd_client_restrictions=permit_mynetworks,reject
    сфе     -o smtpd_helo_restrictions=
        -o smtpd_sender_restrictions=
        -o smtpd_recipient_restrictions=permit_mynetworks,reject
        -o smtpd_data_restrictions=reject_unauth_pipelining
        -o smtpd_end_of_data_restrictions=
        -o mynetworks=127.0.0.0/8
        -o smtpd_error_sleep_time=0
        -o smtpd_soft_error_limit=1001
        -o smtpd_hard_error_limit=1000
        -o smtpd_client_connection_count_limit=0
        -o smtpd_client_connection_rate_limit=0
        -o receive_override_options=no_header_body_checks,no_unknown_recipient_checks

scan     unix    -       -       -       -       2       smtp
        -o smtp_data_done_timeout=1200
        -o smtp_send_xforward_command=yes
        -o disable_dns_lookups=yes
        -o max_use=20

Готовы предоставить больше информации из конфигов по мере необходимости.

amavis

$inet_socket_port = 10024;   # default listening socket
#$inet_socket_port = [10024,10026];

$sa_spam_subject_tag = '***SPAM*** ';
$sa_tag_level_deflt  = 2.0;  # add spam info headers if at, or above that level
$sa_tag2_level_deflt = 6.31; # add 'spam detected' headers at that level
$sa_kill_level_deflt = 6.31; # triggers spam evasive actions
$sa_dsn_cutoff_level = 10;   # spam level beyond which a DSN is not sent

$final_virus_destiny      = D_DISCARD;  # (data not lost, see virus quarantine)
$final_banned_destiny     = D_DISCARD;
$final_spam_destiny       = D_PASS;
$final_bad_header_destiny = D_PASS;     # False-positive prone (for spam)

Спасибо за любую помощь!

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения [Сортировка по ответам | RSS]

1. Сообщение от NEOfantom (ok), 07-Мрт-23, 14:29   +/
> конфиги:
> main.cf
> content_filter = scan:[127.0.0.1]:10024

установлен header_checks ?


Ответить | Правка | Наверх | Cообщить модератору
Ответы: #2

2. Сообщение от kazakov_0001 (ok), 07-Мрт-23, 14:44   +/
>> конфиги:
>> main.cf
>> content_filter = scan:[127.0.0.1]:10024
> установлен header_checks ?

header_checks = pcre:/etc/postfix/header_checks
smtp_header_checks = pcre:/etc/postfix/smtp_header_checks

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #1 Ответы: #3, #4

3. Сообщение от NEOfantom (ok), 07-Мрт-23, 14:45   +/
>>> конфиги:
>>> main.cf
>>> content_filter = scan:[127.0.0.1]:10024
>> установлен header_checks ?
> header_checks = pcre:/etc/postfix/header_checks
> smtp_header_checks = pcre:/etc/postfix/smtp_header_checks

в них соответственно заголовки не игнорируются?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #2 Ответы: #5

4. Сообщение от kazakov_0001 (ok), 07-Мрт-23, 14:45   +/
>>> конфиги:
>>> main.cf
>>> content_filter = scan:[127.0.0.1]:10024
>> установлен header_checks ?
> header_checks = pcre:/etc/postfix/header_checks
> smtp_header_checks = pcre:/etc/postfix/smtp_header_checks

https://www.dmosk.ru/instruktions.php?object=mailserver-ubun... - настраивал по этой статье + конфиги dovecot пошарудил немного... но за основу брал статью.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #2 Ответы: #6

5. Сообщение от kazakov_0001 (ok), 07-Мрт-23, 14:49   +/
>>>> конфиги:
>>>> main.cf
>>>> content_filter = scan:[127.0.0.1]:10024
>>> установлен header_checks ?
>> header_checks = pcre:/etc/postfix/header_checks
>> smtp_header_checks = pcre:/etc/postfix/smtp_header_checks
> в них соответственно заголовки не игнорируются?

root@mail:/etc/postfix# cat header_checks - этот файл пустой

root@mail:/etc/postfix# cat smtp_header_checks
/^From:/ PREPEND List-Unsubscribe:
тут так

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #3

6. Сообщение от kazakov_0001 (ok), 07-Мрт-23, 14:56   +/
>>>> конфиги:
>>>> main.cf
>>>> content_filter = scan:[127.0.0.1]:10024
>>> установлен header_checks ?
>> header_checks = pcre:/etc/postfix/header_checks
>> smtp_header_checks = pcre:/etc/postfix/smtp_header_checks
> https://www.dmosk.ru/instruktions.php?object=mailserver-ubun...
> - настраивал по этой статье + конфиги dovecot пошарудил немного... но
> за основу брал статью.

В логах:
Mar  7 14:56:13 mail amavis[6494]: (06494-02) Passed SPAM {RelayedOpenRelay,Quarantined},

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #4 Ответы: #7

7. Сообщение от kazakov_0001 (ok), 07-Мрт-23, 14:57   +/
>[оверквотинг удален]
>>>>> main.cf
>>>>> content_filter = scan:[127.0.0.1]:10024
>>>> установлен header_checks ?
>>> header_checks = pcre:/etc/postfix/header_checks
>>> smtp_header_checks = pcre:/etc/postfix/smtp_header_checks
>> https://www.dmosk.ru/instruktions.php?object=mailserver-ubun...
>> - настраивал по этой статье + конфиги dovecot пошарудил немного... но
>> за основу брал статью.
> В логах:
> Mar  7 14:56:13 mail amavis[6494]: (06494-02) Passed SPAM {RelayedOpenRelay,Quarantined},

В карантин приходит с заголовками к пользователю - без

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #6 Ответы: #8

8. Сообщение от kazakov_0001 (ok), 07-Мрт-23, 14:58   +/
>[оверквотинг удален]
>>>>>> content_filter = scan:[127.0.0.1]:10024
>>>>> установлен header_checks ?
>>>> header_checks = pcre:/etc/postfix/header_checks
>>>> smtp_header_checks = pcre:/etc/postfix/smtp_header_checks
>>> https://www.dmosk.ru/instruktions.php?object=mailserver-ubun...
>>> - настраивал по этой статье + конфиги dovecot пошарудил немного... но
>>> за основу брал статью.
>> В логах:
>> Mar  7 14:56:13 mail amavis[6494]: (06494-02) Passed SPAM {RelayedOpenRelay,Quarantined},
> В карантин приходит с заголовками к пользователю - без

Могу предоставить еще из конфигов строчки какие нужны, уже всю голову сломал

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #7 Ответы: #9

9. Сообщение от kazakov_0001 (ok), 07-Мрт-23, 15:02   +/
>[оверквотинг удален]
>>>>>> установлен header_checks ?
>>>>> header_checks = pcre:/etc/postfix/header_checks
>>>>> smtp_header_checks = pcre:/etc/postfix/smtp_header_checks
>>>> https://www.dmosk.ru/instruktions.php?object=mailserver-ubun...
>>>> - настраивал по этой статье + конфиги dovecot пошарудил немного... но
>>>> за основу брал статью.
>>> В логах:
>>> Mar  7 14:56:13 mail amavis[6494]: (06494-02) Passed SPAM {RelayedOpenRelay,Quarantined},
>> В карантин приходит с заголовками к пользователю - без
> Могу предоставить еще из конфигов строчки какие нужны, уже всю голову сломал

eturn-Path: <webbusiness@gmail.com>
Delivered-To: kazakov@domain.tech
Received: from localhost (localhost [127.0.0.1])
    by mail.domain.tech (Postfix) with ESMTP id CB17E140018
    for <kazakov@domain.tech>; Tue,  7 Mar 2023 14:56:13 +0300 (MSK)
X-Virus-Scanned: Debian amavisd-new at mail.domain.tech
Received: from mail.domain.tech ([127.0.0.1])
    by localhost (mail.domain.tech [127.0.0.1]) (amavisd-new, port 10024)
    with ESMTP id uWEM48MYpEV6 for <kazakov@domain.tech>;
    Tue,  7 Mar 2023 14:56:12 +0300 (MSK)
Received: from mail-lj1-f181.google.com (mail-lj1-f181.google.com [209.85.208.181])
    by mail.domain.tech (Postfix) with ESMTPS id D1FA4140016
    for <kazakov@domain.tech>; Tue,  7 Mar 2023 14:56:12 +0300 (MSK)
Received: by mail-lj1-f181.google.com with SMTP id z42so12811422ljq.13
        for <kazakov@domain.tech>; Tue, 07 Mar 2023 03:56:12 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20210112; t=1678190171;
        h=to:subject:message-id:date:from:mime-version:from:to:cc:subject
         :date:message-id:reply-to;
        bh=aFbJ8ei/bsmcd12btey76aqqTh6Axsi1H2W6MYwTFHM=;
        b=YhqXD8MVx8oBs8Yu3P2xoAkIaMjB4k4I8sS4hJIt0FylMR6uqpBPaLA0L2r60wbj/O

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #8 Ответы: #10

10. Сообщение от kazakov_0001 (ok), 07-Мрт-23, 15:04   +/
>[оверквотинг удален]
>  for <kazakov@domain.tech>; Tue,  7 Mar 2023 14:56:12 +0300 (MSK)
> Received: by mail-lj1-f181.google.com with SMTP id z42so12811422ljq.13
>         for <kazakov@domain.tech>; Tue, 07
> Mar 2023 03:56:12 -0800 (PST)
> DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
>         d=gmail.com; s=20210112; t=1678190171;
>         h=to:subject:message-id:date:from:mime-version:from:to:cc:subject
>          :date:message-id:reply-to;
>         bh=aFbJ8ei/bsmcd12btey76aqqTh6Axsi1H2W6MYwTFHM=;
>         b=YhqXD8MVx8oBs8Yu3P2xoAkIaMjB4k4I8sS4hJIt0FylMR6uqpBPaLA0L2r60wbj/O

В карантине
Delivered-To: spam-quarantine
X-Envelope-From: <webbusiness@gmail.com>
X-Envelope-To: <kazakovav@domain.tech>
X-Envelope-To-Blocked:
X-Quarantine-ID: <uWEM48MYpEV6>
X-Spam-Flag: YES
X-Spam-Score: 1000.053
X-Spam-Level: ****************************************************************
X-Spam-Status: Yes, score=1000.053 tag=2 tag2=6.31 kill=6.31
        tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1,
        DKIM_VALID_EF=-0.1, FREEMAIL_ENVFROM_END_DIGIT=0.25,

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #9

11. Сообщение от NEOfantom (ok), 07-Мрт-23, 15:07   +/
$spam_quarantine_to указано в /etc/amavis/conf.d/50-user (если deb-дистрибутив)
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #12

12. Сообщение от kazakov_0001 (ok), 07-Мрт-23, 15:17   +/
> $spam_quarantine_to указано в /etc/amavis/conf.d/50-user (если deb-дистрибутив)

#$spam_quarantine_to = "spam\@domain.tech";
#$virus_quarantine_to = "virus\@domain.tech";

Закомментировано

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #11 Ответы: #13

13. Сообщение от NEOfantom (ok), 07-Мрт-23, 18:27   +/
Установи $spam_quarantine_to = under;


Ответить | Правка | Наверх | Cообщить модератору
Родитель: #12 Ответы: #14, #15

14. Сообщение от kazakov_0001 (ok), 09-Мрт-23, 10:22   +/
> Установи $spam_quarantine_to = under;

а не может это быть связано с тем что почтовик обслуживает два домена?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #13

15. Сообщение от kazakov_0001 (ok), 09-Мрт-23, 10:22   +/
> Установи $spam_quarantine_to = under;

не сработало

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #13

16. Сообщение от kazakov_0001 (ok), 09-Мрт-23, 11:55   +/
>[оверквотинг удален]
> $sa_tag2_level_deflt = 6.31; # add 'spam detected' headers at that level
> $sa_kill_level_deflt = 6.31; # triggers spam evasive actions
> $sa_dsn_cutoff_level = 10;   # spam level beyond which a DSN
> is not sent
> $final_virus_destiny      = D_DISCARD;  # (data not
> lost, see virus quarantine)
> $final_banned_destiny     = D_DISCARD;
> $final_spam_destiny       = D_PASS;
> $final_bad_header_destiny = D_PASS;     # False-positive prone (for spam)
> Спасибо за любую помощь!

Вот, получилось решить, если кому-то интересно, может кому-то время сэкономлю.

Если Вы используете виртуальные домены, то amavis напрямую нужно указать, что они являются локальными. Тогда он будет вставлять заголовки и проверять на спам письма.
/etc/amavis/conf.d/50-user добавил:

@lookup_sql_dsn = (['DBI:mysql:db_name;host=127.0.0.1;port=3306', 'user', 'passwd']);
$sql_select_policy = 'SELECT domain FROM domains WHERE CONCAT("@",domain) IN (%k)';

Всем спасибо за помощь!

Ответить | Правка | Наверх | Cообщить модератору


Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




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

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