【08: スパムメール対策】

蔓延するスパムは、だれにとってもますます迷惑なものとなっています。
SVシリーズでは、以下の 2 つの方法を使ってスパム送信者を制御できます。
SVシリーズ のユーザにスパムが送信されないようにする。
SVシリーズ を利用してスパムが送信 (リレー)されないようにする。
■送信されて来るスパムのブロック
アクセス データベースの機能を利用すると、特定のドメインや IP アドレスから送信されたメールを許可したり拒否したりすることができます。まず、スパム メッセージのメール ヘッダに記述された送信元アドレスを /etc/mail/access ファイルに記述するという方法について説明します。

以下のように入力してください。

% cd /etc/mail
/etc/mail/access ファイルを作成したあと、/etc/mail/access.sample ファイルの項目例を参考にして各項目を入力します。

/etc/mail/access ファイルは 2 つの列で構成されています。左の列には以下の項目があります。
・ ドメイン名 (例: smut.org)
・ メール アドレス (例: becky@cycle.info)
・ メール アドレスのローカル部分 (例: joe)
・ IP アドレス (完全またはサブネット)。以下に例を示します。
111.22.33.44
192.2.3
10
列には以下の項目があります。
・ OK :「現在のほかのルールでは拒否されるメールも受信する。」
・ RELAY :「メール サーバを使ってリレーを行うドメインを許可する。」
・ REJECT :「一般エラー メッセージがあるメールを拒否する。」
・ DISCARD :「メッセージを通知せずに完全に破棄する。」
「make」と入力して、データベースの再構築を実行します。
sendmail.mc ファイルに変更が加えられていた場合に make コマンドを実行すると、新しいsendmail.cf ファイルが生成されたあと、Sendmail が再起動します。

アクセス データベースの再構築だけを行う場合は、

% makemap hash /etc/mail/access < /etc/mail/access
と入力します。
■アクセス ファイルの管理
/etc/mail/access ファイルに設定する値を選択するには、迷惑メールのメール ヘッダの書式と内容を理解する必要があります。 (SVサーバが読み取る) メール メッセージ の書式を理解すると、 メッセージの SMTP エンベロープ送信者の場所を特定したり送信者を特定したりすることができます。
■From ヘッダ ラインと From ヘッダ ライン
SVシリーズ では、送信者のアドレスは From で始まるヘッダ ラインに記述されます (From のあとには、空白文字が 1 文字入ります)。

From と From: の違いに注意してください。ヘッダ ラインは同一である必要はありませんが、一般的には同じものが使われます。From: ヘッダ ラインはメッセージの一部であり、 SMTP エンベロープの一部ではありません。
From アドレスと From: アドレスが異なる場合、/etc/mail/access ファイルにはFrom アドレスを記述します。

エンベロープ送信者のブロッキングは、絶対確実な方法というわけではありません。
エンベロープ送信者は、実際にはスパム送信者である場合がある (スパム送信者がエンベロープ送信者になりすましていることが多い) ので、ブロックが機能しないことがあります。

ブロッキングによってほとんどのメールは排除されますが、それでも /etc/mail/access ファイルは入念に管理する必要があります。
■特定のホスト (スパム送信者) から送信されたメールをブロックする
スパム送信者から送信されたメールをブロックするには、以下の手順を実行します。

/etc/mail に移動します。

任意のエディタで /etc/mail/access ファイルを編集します。

% vi access
viコマンドの利用方法につきましては、UNIXコマンドの解説書等をご参照いただけますようお願い致します。
このwebマニュアルは、UNIXコマンドについて全てを解説するものではござません。
コマンドの利用方法については、UNIX関連書籍等で、お客様ご自身でお調べ頂けますようお願い致します。
以下のいずれかを入力します。
username @ hostname REJECT
または
hostname REJECT
12.34.56.78 REJECT
12.34.56.79 REJECT
または
12.34 REJECT
「username」には送信者のユーザ名を、「hostname」には送信者のアドレスのホスト名の部分を、「12.34.56.78」には送信者の IP アドレスを、「12.34」には送信者の IP ブロックを指定します。

ファイルを保存してエディタを終了します。

「make」と入力して、データベースの再構築を実行します。sendmail.mc ファイルに変更が加えられていた場合に make コマンドを実行すると、新しい sendmail.cf ファイルが生成されたあと、Sendmail が再起動します。

アクセス データベースの再構築だけを行う場合は、

% makemap hash /etc/mail/access < /etc/mail/access
と入力します。