SendmailでのSPAMメール受信拒否
ホームページでメールアドレスを公開していると凄い数のスパムメールが届くようになったりします。大手プロバイダーでは、スパムフィルタが追加されたので、ある程度見なくて済むようになったものの、自宅サーバーではフィルタのプログラムを組むのも面倒です(時間があれば組むかも知れませんが、ここのところ全然時間がない)。以前、spamメールのログを数ヶ月間蓄積して、ドメインだけをプログラムで抽出してリストを作ってみたところ、特定のドメイン(ほとんどがフリーメール)から届いていることがわかりました。そのようなことから特定のドメインのメールを受信拒否することにします。
(「
メールサーバーの設定
」でも少し書いてありますが、拒否する方法のみに限定して書きました。)
sendmailのバージョンを確認する
sendmail8.10.0以降から追加された機能のようなので、古い場合には新しいバージョンに更新します。
(セキュリティの面でも新しくしておいた方が吉)
sendmailの更新は「
メールサーバーの設定
」を参照して下さい。
拒否するドメイン名を設定する
スーパーユーザーで「
/etc/mail/access
」をviで開き、拒否したいドメイン名を記述します。
%
su -l
#
cd /etc/mail
#
vi access
yahoo.co.jp
REJECT
aol.com
REJECT
mail.goo.ne.jp
REJECT
・
・
データベースファイルに変換する
先ほど記入した「access」ファイルをsendmail用のデータベースに変換します。「make」をかけると自動的にやってくれます。
#
make
/usr/sbin/makemap hash access.db < access
chmod 0640 access.db
sendmailを再起動すれば設定が有効になります。
#
/etc/rc.d/sendmail restart