Ситовый фильтр не работает

Я пытаюсь автоматически переместить письма, обнаруженные как спам, в папку нежелательной почты, но мои ситовые фильтры не работают. Я могу отправлять и получать почту, а письма определяются как спам.

X-Virus-Scanned: amavisd-new at ...
X-Spam-Flag: YES
X-Spam-Score: 999.802
X-Spam-Level: ****************************************************************
X-Spam-Status: Yes, score=999.802 tagged_above=-999 required=5
    tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1,
    DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, GTUBE=1000,
    HTML_MESSAGE=0.001, SPF_PASS=-0.001, TVD_SPACE_RATIO=0.001]
    autolearn=no autolearn_force=no

Я думаю, проблема в том, что postfix не доставляет почту через dovecot, но я не могу понять, почему.

Моя система:

  • Arch Linux
  • постфикс 3.3.2-3
  • голубятня 2.3.4.1-1

То, что я сделал или проверил снова и снова...

  • заглушка установлена
  • Сокет dovecot-lmtp существует в / var / spool / postfix / private и доступен для чтения и записи в postfix
  • Значение virtual_transport в postfix main.cf установлено в lmtps:unix:private/dovecot-lmtp
  • Блоки сервиса и протокола lmtp в dovecot.conf присутствуют, а значение протокола содержит lmtp
  • путь к глобальным скриптовым ситам кажется правильным
  • sieve-скрипты компилируются без ошибок
  • Папка барахла существует
  • Dovecot никогда не регистрирует ничего, связанного с lmtp, даже если установлено mail_debug = yes

Я действительно понятия не имею больше. Так что ниже приведены некоторые соответствующие данные. Быть в надежде, что кто-то может помочь мне заставить это работать.

Вот выдержка из журнала postfix, в котором всегда сохраняется postfix...status=sent (доставлено в maildir)

10 февраля 19:37:59 имя хоста postfix/wxyz/postscreen[1133]: ПОДКЛЮЧИТЬ от [209.85.208.174]:44008 к [wxyz]:25 февраля 10 19:37:59 имя хоста postfix/dnsblog[1136]: адрес 209,85. 208.174 указан доменом dnsbl.sorbs.net как 127.0.0.6 10 февраля 19:37:59 postfix / dnsblog имени хоста [1138]: addr 209.85.208.174 указан доменом hostkarma.junkemailfilter.com как 127.0.0.3 10 февраля 19:37: 59 имя хоста postfix / dnsblog [1138]: адрес 209.85.208.174 указан доменом hostkarma.junkemailfilter.com как 127.0.1.1 10 февраля 19:38:00 имя хоста postfix/wxyz/postscreen[1133]: PASS OLD [209.85.208.174]:44008 10 февраля 19:38:00 имя хоста postfix/wxyz/smtpd[1142]: подключение с mail-lj1-f174.google.com[209.85.208.174] 10 февраля 19:38:00 имя хоста postfix/wxyz/smtpd[1142]: Анонимное соединение TLS установлено с mail-lj1-f174.google.com[209.85.208.174]: TLSv1.2 с шифром ECDHE-RSA-AES128-GCM-SHA256 (128/128 бит) 10 февраля 19:38:00 postfix имени хоста / wxyz/smtpd[1142]: NOQUEUE: client=mail-lj1-f174.google.com[209.85.208.174] 10 февраля 19:38:02 имя хоста postfix/smtpd[1159]: соединение с неизвестным [127.0.0.1] 10 февраля 19:38:02 имя хоста postfix/smtpd[1159]: 6262DAE1876: клиент = неизвестно [127.0.0.1] 10 февраля 19:38:02 имя хоста postfix / очистка [1160]: 6262DAE1876: идентификатор сообщения = 10 февраля 19:38:02 имя хоста postfix / smtpd [1159]: отключение от неизвестного [127.0.0.1] ehlo=1 mail=1 rcpt=1 data=1 quit=1 команды =5 февраля 10 19:38:02 имя хоста postfix/qmgr[28602]: 6262DAE1876: from=, размер =5817, nrcpt=1 (очередь активна) 10 февраля 19:38:02 имя хоста postfix / smtpd [1159]: подключение из неизвестно [127.0.0.1] 10 февраля 19:38:02 имя хоста postfix/smtpd[1159]: 67345AE1879: клиент = неизвестно [127.0.0.1], orig_client=mail-lj1-f174.google.com[209.85.208.174] 10 февраля 19:38:02 имя хоста postfix/cleanup[1160]: 67345AE1879: message-id=
Feb 10 19:38:02 имя хоста postfix / smtpd [1159]: отключиться от неизвестного [127.0.0.1] ehlo = 1 xforward = 1 mail = 1 rcpt = 1 данные = 1 выход = 1 команда =6 февраля 10 19:38:02 имя хоста postfix/qmgr[28602]: 67345AE1879: from=, размер =3901, nrcpt=1 (очередь активна) 10 февраля 19:38: 02 имя хоста postfix/wx yz/smtpd[1142]: принятие прокси: END-OF-MESSAGE: 250 2.0.0 от MTA(smtp:[127.0.0.1]:10035): 250 2.0.0 Хорошо: в очереди 67345AE1879; from= to= proto=ESMTP helo= 10 февраля 19:38:02 имя хоста postfix/virtual[1161]: 6262DAE1876: to=, orig_to=, relay=virtual, задержка = 0,05, задержки = 0,02 / 0,02 / 0 / 0,01, dsn = 2.0.0, статус = отправлено (доставлено в maildir) 10 февраля 19:38:02 имя хоста postfix / qmgr [28602]: 6262DAE1876: удалено 10 февраля 19:38:02 имя хоста postfix/virtual[1161]: 67345AE1879: в =, реле = виртуальный, задержка = 0,02, задержки = 0,01 / 0,01 / 0/0, DSN = 2.0,0, статус = отправлено (доставлено в maildir) 10 февраля 19:38:02 имя хоста postfix / qmgr [28602]: 67345AE1879 удалено

В postfix master.cf я установил:

...
lmtps     unix  -       -       -       -       -       lmtp
  -o lmtp_use_tls=yes
  -o lmtp_tls_loglevel=1
  -o lmtp_tls_CAfile=/etc/ssl/certs/ca-certificates.crt
  -o lmtp_enforce_tls=yes
  -o lmtp_tls_mandatory_protocols=!SSLv2,!SSLv3
  -o lmtp_tls_protocols=!SSLv2,!SSLv3
  -o lmtp_tls_mandatory_ciphers=high
  -o lmtp_tls_ciphers=high
  -o lmtp_send_xforward_command=yes
  -o lmtp_tls_security_level=encrypt
  -o lmtp_tls_note_starttls_offer=yes
...

В postfix main.cf я установил:

...
virtual_transport = lmtps:unix:private/dovecot-lmtp
...

dovecot.conf:

...
protocols = imap lmtp sieve
...
service managesieve-login {
    inet_listener sieve {
        port = 4190
    }

    service_count = 1
    process_min_avail = 2
    vsz_limit = 128M
}

service managesieve {
    process_limit = 256
}

service lmtp {
    unix_listener /var/spool/postfix/private/dovecot-lmtp {
        group = postfix
        mode = 0600
        user = postfix
    }
    user = vmail
}
...
protocol lmtp {
    mail_plugins = quota sieve acl notify
    auth_socket_path = /var/run/dovecot/auth-master
    postmaster_address = ...
}

protocol sieve {
    managesieve_max_line_length = 65536
    mail_max_userip_connections = 10
    mail_plugins =
    managesieve_logout_format = bytes=%i/%o
    managesieve_implementation_string = Dovecot Pigeonhole
    managesieve_sieve_capability =
    managesieve_notify_capability =
    managesieve_max_compile_errors = 5
}
...

Наконец глобальный ситовый скрипт:

require "fileinto";

if header :contains "X-Spam-Flag" "YES" {
    fileinto "Junk";
}

0 ответов

Другие вопросы по тегам