Spamassassin은 스팸이 아닌 스팸으로 플래그를 지정했습니다. 어떻게 말합니까?


14

이것은 스파 마 사신 훈련에 대한 일반적인 질문입니다. spamassassin을 통해 들어오는 메일을 필터링하는 새로 설정된 메일 서버가 있습니다. 최근 스팸으로 표시된 항공편 예약을 받았으며 (스팸 5) 스팸이 아니라고 스팸 매스 인에게 알리고 싶습니다. (아마도 이렇게하면 수정 된 spamassassin 헤더없이 메일을 다시 보내겠습니까?)

나는 검색을 시도했으며 스팸 메시지를 스팸으로 플래그 지정하기 위해 spamassassin을 가져 오는 것 (및 오 탐지 수정이 아니라) 또는 이메일을 쓰는 사람들을 위해 스팸으로 분류되지 않는 방법 만 찾습니다.

따라서 잘못된 전화에 대한 스파 마 자신 피드백 제공과 관련하여 :

  1. 이메일 클라이언트 내에서이를 수행 할 수있는 방법이 있습니까 (예 : Thunderbird)

  2. 메일 서버의 명령 행을 통해이를 수행 할 수있는 방법이 있습니까?

프로세스를 최대한 유동적으로 만들고 싶지만 작업을 수행하는 모든 작업이 가능합니다.

이메일에 관한 SpamAssassin의 세부 사항 :

 0.0 FSL_HELO_NON_FQDN_1    No description available.
 0.6 HK_RANDOM_ENVFROM      Envelope sender username looks random
-0.0 RCVD_IN_DNSWL_NONE     RBL: Sender listed at http://www.dnswl.org/, no trust [82.150.225.129 listed in list.dnswl.org]
-0.0 RCVD_IN_MSPIKE_H3      RBL: Good reputation (+3) [82.150.225.129 listed in wl.mailspike.net]
 0.0 HEADER_FROM_DIFFERENT_DOMAINS From and EnvelopeFrom 2nd level mail domains are different
 1.0 SPF_SOFTFAIL           SPF: sender does not match SPF record (softfail)
 1.6 SUBJ_ALL_CAPS          Subject is all capitals
 1.1 MIME_HTML_ONLY         BODY: Message only has text/html MIME parts
 0.7 HTML_IMAGE_ONLY_20     BODY: HTML: images with 1600-2000 bytes of words
 0.0 HTML_MESSAGE           BODY: HTML included in message
-0.0 RCVD_IN_MSPIKE_WL      Mailspike good senders
 0.0 UNPARSEABLE_RELAY      Informational: message has unparseable relay lines
 0.0 T_REMOTE_IMAGE         Message contains an external image

분명히 주요 범인은 모두 대문자 제목 줄 SUBJ_ALL_CAPS와 MIME_HTML_ONLY입니다 (텍스트 대안은 없습니다).

이메일은 항공편 예약 확인을위한 것이며 제목은 다음과 같습니다.

 Subject: JENNINGS/NICHOLAS KOSSOW MR 24 JAN MOF DPS

헤더 :

X-Envelope-From: <tdsfndprd@amadeus.com>
X-Envelope-To: <nick@xxx.xxx>
Received: from mail1.amadeus.net (unknown)
    by 147-49-15-51.rev.cloud.scaleway.com(Postfix 3.1.0/8.13.0) with SMTP id unknown
    Fri, 20 Jan 2017 07:55:10 +0000
    (envelope-from <tdsfndprd@amadeus.com>
Received: from obeap115 (nat-dns-mnp.amadeus.net [82.150.225.129])
    by mail1.amadeus.net (Postfix) with ESMTP id 3F7A9200042
    for <nick@xxx.xxx>; Fri, 20 Jan 2017 07:55:10 +0000 (GMT)
From: eticket@garuda-indonesia.com
TO: NICK@XXX.XXXX
Message-ID: <CTS/GA/C50D54421A07/1@tds.amadeus.com>
FND-Request-ID: <CTS/GA/C50D54421A07/1@tds.amadeus.com>
Job-ID: 1
Subject: JENNINGS/NICHOLAS KOSSOW MR 24 JAN MOF DPS
Date: Fri, 20 Jan 2017 07:55:09 +0000
Content-Type: multipart/mixed; 
    boundary="----=_Part_191904_1900935199.1484898909762"
MIME-Version: 1.0

첫 번째 단계는 스팸으로 표시되는 이유를 묻는 것입니다. 그것없이 우리는 일반적인 제안을 할 수 있습니다. 베이지 엔 엔진에 햄을 조정하는 방법을 보여 주지만, 잘못 발발 한 규칙을 구체적으로 다루는 데 도움을 줄 수는 없습니다. 이메일 본문의 첫 몇 줄 과 모든 헤더를 질문에 추가하십시오 .
MadHatter

@MadHatter 제안에 감사하고 그에 따라 질문을 업데이트했습니다.
Nick Jennings

베이지안 점수가 무엇인지 말하지 않습니다. 베이지안 엔진을 전혀 사용하고 있습니까?
MadHatter

점수는 5.0 .. 주제에 삽입되었습니다 : ***** SPAM 5.0 *****
Nick Jennings

1
이것이 베이 세이 점수에 기여하는 것이 아니라 총 SA 점수입니다. 그러나 당신이 쓴 나머지 부분에서, 당신이 그것을 훈련 한 적이 없기 때문에 베이지안 엔진이 발사되지 않는 것처럼 보이고 걱정하지 마십시오!
MadHatter

답변:


22

이 경우에 유용 할 수있는 구체적이고 일반적인 조언이 있습니다.

특유한

여기에 근본적인 문제는 작은면 양말을 축복하는 가루다 항공이 스팸의 많은 특징을 지닌 확인 이메일을 보내고 있다는 것입니다. 제목은 VERY SHOUTY이며, 이미지가 매우 많고 텍스트가 거의없는 HTML 전용 전자 메일을 보내며 봉투 발신자 ( tdsfndprd@amadeus.com)는 기계로 구성된 nonce이며 전자 메일 공급자 (아웃소싱) 확인 시스템입니다. (amadeus.com)에는 쓸모가없는 SPF 레코드가 있습니다 (반면에 대한 모든 조언 에도 불구하고 일부 사람들 은 자신의 전송 시스템 중 일부 를 나열 하고 종료 하는 레코드에 가치가 있다고 생각합니다 ~all).

이것에 대해 당신이 할 수있는 일은 많지 않습니다. 당신이이 돌파, 선의해야 할 경우 ~/.spamassassin/user_prefs말한다 whitelist_from *@amadeus.com당신을 통해 이러한 메시지를 받게됩니다. 더 나아가서 트리거 된 규칙의 가중치를 변경하는 것은 나쁜 생각 일 것입니다. SA (SpamAssassin) 규칙 세트는 대량의 스팸을 필터링하고 대부분의 스팸에 적용되는 특성을 파악하여 만들어집니다. 해당 규칙을 해제하여 가루다 확인 이메일뿐만 아니라 INBOX를 훨씬 더 많이 열 수 있습니다.

일반

이것은 정확히 베이지안 엔진이 잘 처리하는 상황입니다. 다른 규칙을 트리거하지 않지만 읽고 싶지 않은 내용은 포함하고 해당 규칙을 트리거하지만 읽으려는 내용 포함 된 이메일을 통해 전자 메일을 필터링하도록 설계되었습니다 .

IIRC, 당신이 그것을 훈련하지 않으면 엔진은 아무것도하지 않습니다. 그것을 훈련시키는 가장 쉬운 방법은 (예) spam와 이라는 두 폴더를 유지하는 것입니다 ham. 속으로 spam당신은 당신의 INBOX로 만들어 이메일의 사본을 넣어하지만 당신은 원하지 않았다; 으로 ham당신은 SA의 파울 떨어졌다 이메일의 사본을 넣어하지만 당신은이 확인 메일로, 희망했다.

그런 다음 야간 (또는 그렇게) 크론 작업이 있습니다.

sa-learn --spam --mbox mail/spam
sa-learn --ham  --mbox mail/ham

그에 따라 경로를 수정합니다. 시간이 지남에 따라 엔진이하는 일과 읽지 않는 것을 가르치게됩니다. Bayesian 점수가 높으면 이메일의 SA 점수에 +4.0 포인트를 추가 할 수 있고, 낮은 점수는 1.9를 뺄 수 있으므로 잘 훈련 된 엔진은 SA가 사용자 가 읽지 않은 내용 구별하는 데 실제로 도움이 될 수 있습니다. 그것을 가르치기 위해 노력하십시오 .


1
합리적으로 들립니다. 스팸 / 햄 메일 함의 흐름을 시도해 보겠습니다. 감사!
Nick Jennings

1
"작은면 양말 축복"
Alex Reinking

@MadHatter는 이것에 후속합니다. 나는 어쌔신은 햄 폴더로 변경하는 스팸 메일을 드래그 시도하고 내가 실행할 때 sa-learn --ham ...: 명령을, 그것으로부터 배울 0 이메일을 발견 말한다 Learned tokens from 0 message(s) (0 message(s) examined)나는 catting 시도 ... .eml햄 폴더에, SpamAsssasin는 원래 이메일을 넣어 첨부 파일을 서버에서 직접 처리하지만 여전히 처리 할 메시지가 0
Nick Jennings

report_safe 1설정에 따라 원본 이메일을 첨부 파일로 처리하고 있음을 추가해야 합니다.
Nick Jennings

@NickJennings를 사용하면 MIME 지원 클라이언트를 사용하여 원본 이메일을 제거하여에 피드해야 할 것 sa-learn입니다. 너무 고통 스럽다면을 끄십시오 report_safe. 베이지안 필터의 가정은 SA 전체와 별개이기 때문에 실수로 스팸으로 식별 된 것 이외의 다른 것들로 햄 러너를 훈련시키는 것이 좋습니다. 내가받는 모든 개인 메일을 가장 많이 읽습니다.
MadHatter

7

비둘기장을 사용하고있는 것 같습니다. 몇 주 동안 원활한 통합을 시도하면서 메일 을 복사 하지 않고도 서버 측 스팸 필터를 쉽게 학습 할 수 있었습니다.

주요 부분은 안티 스팸 도브 코트 플러그인입니다. 안티 스팸 플러그인이 은 세 개의 폴더 그룹 ( trash, unsure및) 간 이동 작업을spam . 아무것도에서 전환이 (그러나 경우 특히 spam)는하기 spam에서 전환 할 때 감지, 스팸 학습 액션이 트리거되고 spam에가 unsure발견, 햄 학습 조치가 실행됩니다.

다양한 교육 백엔드를 지원합니다. 간단한 mailtrain명령은 간단하게 명령을 실행하고 표준 입력에 메일을 넣습니다. 이에 대한 구성은 다음과 같습니다.

plugin {
   antispam_backend = mailtrain
   antispam_mail_sendmail = /usr/local/bin/sa-learn-stdin.sh
   antispam_mail_spam = spam
   antispam_mail_notspam = ham
   antispam_mail_sendmail_args = -L
   antispam_spam = Junk;INBOX.Junk
   antispam_trash = Trash;INBOX.Trash
   antispam_allow_append_to_spam = no
}

함께 /usr/local/bin/sa-learn-stdin.sh:

#!/bin/bash
/usr/bin/spamc "$@" >> /tmp/sa-learn-log
exit 0

"스팸으로 학습하려면 다음을 실행하십시오. /usr/local/bin/sa-learn-stdin.sh -L spam 하고 햄으로 배우/usr/local/bin/sa-learn-stdin.sh -L ham . 인수는에 의해 구성되어 antispam_mail_spam, antispam_mail_notspamantispam_mail_sendmail_args.

이것은 이미 꽤 좋습니다. 스팸으로 표시 한 메일을 스팸 폴더로 이동하도록 클라이언트를 구성 할 수 있다면 이는 이미 클라이언트와 서버 사이의 자동 통합입니다. 마찬가지로, 배달시 스팸 폴더에 스팸으로 분류 된 메일을 저장하도록 서버를 구성하면 (예 : Sieve 사용) 사용자가 스팸 폴더 밖으로 메일을 이동할 때 메시지가 햄으로 표시됩니다.


Thunderbird 및 KMail과의 통합을 향상시키기 위해 필자는 안타깝게도 업스트림으로부터 피드백을받지 못한 안티 스팸 패치를 . 자신의 책임하에 사용하십시오 .

안티 스팸에 구성 옵션을 추가 plugin하며, 도브 코트 구성 의 섹션에 간단히 추가 할 수 있습니다.

   antispam_spam_flags = "Junk;$JUNK"

(따옴표는 $재미있는 일 을하지 않도록 중요합니다 .)

패치를 통해 안티 스팸은 또한 메시지가 스팸 플래그를 취득하거나 스팸 플래그를 모두 잃어 버릴 경우 학습 조치를 트리거합니다. 플래그는 IMAP 기능이며 클라이언트가 서버 측 정보 비트를 저장하는 데 사용합니다. Thunderbird와 KMail은이 플래그를 사용하여 메시지의 정크 / 스팸 상태를 저장합니다.

그만큼 Junk당신이 정크 메시지를 표시 할 때 플래그는 썬더 버드에 의해 설정된다. $JUNKKMail 플래그도 마찬가지입니다 . 따라서이 구성을 사용하면 KMail의 Thunderbird에서 메일을 정크 / 비정 크로 플래그 지정하여 서버 측 학습을 트리거 할 수 있습니다.

K9-Mail과 같은 다른 클라이언트는 스팸 폴더에서 정크를 이동하는 것이 기본이므로 스팸 방지 기능이 트리거되기 때문에 여전히 잘 작동합니다.


IMAPSieve 에서 동일한 기능을 구현할 수 있습니다 . 이것은 내 TODO에 있지만 불행히도 현재 충분히 최근 비둘기장을 갖춘 테스트 준비 환경이 없습니다.


이것은 흥미로워 보입니다. 확실히 살펴볼 것입니다.
Nick Jennings
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.