postfix spamassassin 전송 외부 시스템

postfix spamassassin 전송 외부 시스템

메일 시스템에서 spamassassin을 로컬로 실행하면 로드 문제가 발생합니다. 외부 spamassassin 시스템의 배열로 메일을 보내는 MTA로 Exim을 사용하는 다른 시스템에서는 구성에서 한 줄만 변경하면 라운드 로빈으로 쿼리됩니다.

이제 새로운 postfix 설정에서 스팸 검색을 위한 전송은 /etc/postfix/master.cf에서 다음과 같습니다:

smtpd pass - - - - 200 smtpd -o content_filter=spamassassin

/etc/postfix/master.cf에 있는 spamassassin에 대한 정의는 다음과 같습니다.

spamassassin unix - n n - - pipe user=debian-spamd argv=/usr/bin/spamc -f -e /usr/sbin/sendmail -oi -f ${sender} ${recipient}

이 시스템의 부하를 줄이고 싶지만 외부 스팸 어쌔신에 대한 postfix 전송에 대한 문서를 찾을 수 없는 것 같습니다. 내가 가장 가까운 것은 postfix 문서에서 찾은 것입니다. http://www.postfix.org/FILTER_README.html고급 콘텐츠 필터 예제에서 전송 라인을 다음과 같이 편집하려고 시도했습니다.

smtpd pass - - - - 200 smtpd -o content_filter=scan:<ExternalIP>:<ExternalPort>

그러나 이로 인해 전송이 불가능해졌습니다.

답변1

spamassassin unix  -       n       n       -       -       pipe
  user=debian-spamd argv=/usr/bin/spamc -d <external_host1>,<external_host2>,<external_host3> -e /usr/sbin/sendmail -oi -f ${sender} ${recipient}

이는 라운드 로빈이 아니고 장애 조치일 뿐 작동했지만 작동했습니다.

또한man spamc

Configuration File

The above command-line switches can also be loaded from a configuration file.

The format of the file is similar to the SpamAssassin rules files; blank lines and lines beginning with "#" are ignored. Any space-separated words are considered additions to the command line, and are prepended. Newlines are treated as equivalent to spaces. Existing command line switches will override any settings in the configuration file.

If the -F switch is specified, that file will be used. Otherwise, "spamc" will attempt to load spamc.conf in "SYSCONFDIR" (default: /etc/mail/spamassassin). If that file doesn't exist, and the -F switch is not specified, no configuration file will be read.

Example:

# spamc global configuration file

# connect to "server.example.com", port 783
-d server.example.com
-p 783

것은 일이다.

관련 정보