COMPUTER

sendmailとspamassassin

自分の中では終わったMTA sendmail
しかし、何故か、今回、sendmailとspamassassinを連携するという作業が回ってきた。
やだなあと思いつつ、作業した際の備忘録が以下になります。


(環境)
・OSはCentOS 5.2
・Sendmail Ver.8.13.8を使用
・sendmailはデフォルトでインストール済みのものを使用する。
・既にpop-before-smtpが動作しているものとする。
※ソースからインストールしている場合、別途、milterというプログラムの組み込み作業が必要になる。
1.sendmailの導入
今回は既にmilterが組み込まれているので、(rpm版の為)新たにmilterを組み込む必要はない。
milterが組み込まれているかどうかの確認方法

# /usr/sbin/sendmail -d0.10
Version 8.13.8
Compiled with: DNSMAP HESIOD HES_GETMAILHOST LDAPMAP LOG MAP_REGEX MATCHGECOS MILTER MIME7TO8 MIME8TO7 NAMED_BIND NETINET NETINET6 NETUNIX NEWDB NIS PIPELINING SASLv2 SCANF SOCKETMAP STARTTLS TCPWRAPPERS USERDB USE_LDAP_INIT

表示される結果にmilterが含まれていれば、milter組み込みは必要ない。
2.spamassassinのインストール

# yum -y install spamassassin
Installing: perl-Compress-Zlib ####################### [ 1/14]
Installing: perl-Digest-SHA1 ####################### [ 2/14]
Installing: perl-Digest-HMAC ####################### [ 3/14]
Installing: perl-IO-Zlib ####################### [ 4/14]
Installing: perl-Archive-Tar ####################### [ 5/14]
Installing: perl-Net-IP ####################### [ 6/14]
Installing: perl-Net-DNS ####################### [ 7/14]
Installing: perl-Socket6 ####################### [ 8/14]
Installing: perl-IO-Socket-INET6 ####################### [ 9/14]
Installing: perl-HTML-Tagset ####################### [10/14]
Installing: perl-HTML-Parser ####################### [11/14]
Installing: perl-libwww-perl ####################### [12/14]
Installing: perl-IO-Socket-SSL ####################### [13/14]
Installing: spamassassin ####################### [14/14]
Installed: spamassassin.i386 0:3.1.9-1.el5

Installed spamassassin~と表示されれば完了。
3.定義ファイル (local.cf)の更新
デフォルトで用意されているlocal.cfは日本語に対応していない部分が多い。
local.cfをメンテナンスしているtlec様のサイトから定義ファイルのダウンロードを行う。

# wget -qN http://tlec.linux.or.jp/docs/user_prefs
# cp user_prefs local.cf

4.spamass-milterのインストールと設定 (rpmforgeから)

# rpm --import http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt
# rpm -ivh http://apt.sw.be/redhat/el5/en/i386/RPMS.dag/rpmforge-release-0.3.6-1.el5.rf.i386.rpm
# yum -y --enablerepo=rpmforge install spamass-milter
Installing: spamass-milter ######################### [1/1]
Installed: spamass-milter.i386 0:0.3.1-1.el5.rf

yumで関連パッケージがインストールされる。
spamass-milterの設定
特定のネットワークからのメールはspamassassinによるチェックを行わないように設定

# vi /etc/sysconfig/spamass-milter

spamass-milter設定ファイル編集

#EXTRA_FLAGS="-m -r 15"

コメントアウト(SpamAssassinによる件名の書き換え許可、スコア15以上のメール受信拒否の無効化)

EXTRA_FLAGS="-i 127.0.0.1,192.168.2.0/24"

追加 指定したネットワークからのメール送信はspam判定しない。
5.sendmail-cfのインストール
sendmail-cfを作成するためのパッケージをインストールする。

# yum -y install sendmail-cf
Installing: sendmail-cf ######################### [1/1]
Installed: sendmail-cf.i386 0:8.13.8-2.el5

6.sendmailの設定
ローカル配送のみ許可する設定の無効化

# cd /etc/mail
# vi sendmail.mc
# dnl DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl

※頭にdnlを付ける。
メールフィルタとしてspamassassinを使用する設定

INPUT_MAIL_FILTER(`spamassassin', `S=local:/var/run/spamass.sock, F=, T=C:15m;S:4m;R:4m;E:10m')
define(`confINPUT_MAIL_FILTERS', `spamassassin')dnl

をsendmail.mcの最後に追加
milterのエラー対策

define(`confMILTER_MACROS_ENVRCPT', `Z, v, r, b, {rcpt_mailer}, {rcpt_host}, {rcpt_addr}')dnl

※エラーがでるので、上記を追加
popauth.m4の配置

# cd /usr/share/sendmail-cf/hack/
# wget http://popbsmtp.sourceforge.net/popauth.m4

※pop-before-smtp使用時
m4を実行してsendmail.cfを作成する。

# m4 /usr/share/sendmail-cf/m4/cf.m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf

7.環境にあわせて以下の設定を実行
/etc/init.d/spamassassin の変更
spamdユーザーで動作するように変更

SPAMUSER="spamd"
daemon $NICELEVEL spamd -u $SPAMUSER $SPAMDOPTIONS -r $SPAMD_PID

を追加
/etc/spamassassin/local.cfに以下を追加

# spam learnig global setting
use_auto_whitelist 0
bayes_path /etc/mail/spamassassin/bayes/bayes
bayes_file_mode 0666
auto_whitelist_path /etc/mail/spamassassin/bayes/auto-whitelist
auto_whitelist_file_mode 0666

※オートホワイトリストを使用する設定。設定しなくとも動作します。
8.razor2のインストール

# cd /usr/local/src/
# wget http://jaist.dl.sourceforge.net/sourceforge/razor/razor-agents-sdk-2.07.tar.bz2
# tar jxvf razor-agents-sdk-2.07.tar.bz2
# cd razor-agents-sdk-2.07
# perl Makefile.PL
# make
# make test
# make install
# cd /usr/local/src/
# wget http://nchc.dl.sourceforge.net/sourceforge/razor/razor-agents-2.84.tar.bz2
# tar jxvf razor-agents-2.84.tar.bz2
# cd razor-agents-2.84
# perl Makefile.PL
# make
# make test
# make install
# razor-admin -d -create -home=/etc/razor
razor-admin - -register -home=/etc/razor -user="user@example.com" -pass="password"

9.各種サービスの自動起動設定および起動

# chkconfig spamassassin on
# chkconfig spamass-milter on
# /etc/init.d/spamassassin start
# /etc/init.d/spamass-milter start

一応、これにて設定が完了。
ログを確認し、正常にSPAM判定されているかを確認する。

関連記事

  1. COMPUTER

    bootcampの注意点

    私はiMacを仕事用として利用しています。OSXはUNIXライクな使…

  2. COMPUTER

    Samba + OpenLDAP バージョンアップ

    いや~、一ヶ月も間が空いていました。カリスマブロガーと言われる人たちは…

  3. COMPUTER

    VMware Server を Debian Etchで

    先日、VMware ServerをDebian Etch (4.0)で…

  4. COMPUTER

    この記事は移転しました。

    この記事は移転しました。新しいURLはプロキシサーバー経由でフ…

  5. COMPUTER

    Google Adsenseの異常?

    このサイトではGoogle Adsenseを使用している。(現在は利用…

  6. COMPUTER

    mdadmによるソフトウェアRAID

    我が家ではwebサーバをソフトウェアRAIDで運用しています。S/W …

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

  1. MOBILE

    iphone APPが削除できない
  2. WEAR

    SUNNTO CORE All Black の電池を交換してみる
  3. BIKE

    Charge Bikes PLUG
  4. BOOKS

    男の作法
  5. SHOES

    ALDEN モディファイドラストの写真
PAGE TOP