テックブログ

qmailとSpamAssassinにつきまして

こんにちは、技術部のshoriと申します。
先日、SpamAssassinについて勉強する機会がありました。

使用MTAは下記となります。

qmail+vpopmail+SpamAssassin+ClamAV

検証としてSpamAssassinが導入されているサーバから導入されていないサーバへスパム判定が行われるメールを送ってみると
何故か件名に[SPAM]が付与されていました。

メールヘッダーを確認してもスコアが記載されておらず(SpamAssassinを導入してないので当たり前ですが・・・)
もしかしたら送信元サーバで付与した?とも考えましたが、わざわざ自分が送るメールに[SPAM]をつける意味が分からない。

色々探していると下記サイトに情報がありました。

http://www.asahi-net.or.jp/~AA4T-NNGK/qmail6.html

下記抜粋
——————————————————————————————
本当ならば、受信メールだけスキャンして、送信メールはスキャンさせたくない。というのも、送信メールをブロックした際の通知に困るからだ。しかし、上記の設定では、どうしても両方ともスキャンされてしまう。 Qmail-Scanner にもそういった選別機能はない。Qmail-Scanner の FAQ で少し触れられているのは、 qmail-smtpd をふたつ立ち上げておき、メインのほうはスキャンを有効にし、もう一方はスキャンなしに設定し、DNS の MX レコードでIPを使い分けるという手段だが、IP をひとつしか持てないダイナミックDNS環境ではそうもいかない。可能性は、ポートによる使い分け….?
——————————————————————————————

どうやらqmailとSpamAssassinを仲介してもらう為に導入した「Qmail-Scanner」は送受信関係なくメールをチェックする仕様らしく分ける事も出来ないとの事。

メールの仕様上、ローカル/グローバル問わず送信する際は必ず「qmail-queue」プロセスを経由します。

[qmail-inject/qmail-smtpd]

[qmail-queue]

[qmail-send]

[qmail-lspawn/qmail-rspawn]

[qmail-local/qmail-remote]

「Qmail-Scanner」を設定した際にQMAILQUEUEの環境変数を「/var/qmail/bin/qmail-scanner-queue.pl」をセットしている為、チェックが入ってしまうんですね。

自分は取り合えずサーバ上のアカウントをホワイトリスト登録して対応しました。

しかしこんな仕様があるとは・・・

この記事をシェアする

  • facebook
  • twitter
  • hatena
  • line
URLとタイトルをコピーする

実績数30,000件!
サーバーやネットワークなど
ITインフラのことならネットアシストへ、
お気軽にご相談ください