Mail-SpamAssassin-3.3.0 から Perl モジュール NetAddr::IP が必要になった。RHEL/CentOS 5.x の標準パッケージには含まれていないので Fedora からパクってくることにした。
NetAddr::IP のリビルド。
wget "http://ftp.iij.ad.jp/pub/linux/fedora/releases/13/Fedora/source/SRPMS/perl-NetAddr-IP-4.027-2.fc13.src.rpm"
rpmbuild で直接 –rebuild したかったんだけど、error: unpacking of archive failed on file *src/rpms/SOURCES/License_of_perl-NetAddr-IP.txt;4c2b5f9e: cpio: MD5 sum mismatch って怒られた。
rpm -Uvh --nomd5 perl-NetAddr-IP-4.027-2.fc13.src.rpm rpmbuild -ba src/rpms/SPECS/perl-NetAddr-IP.spec sudo rpm -Uvh src/rpms/RPMS/x86_64/perl-NetAddr-IP-4.027-2.x86_64.rpm
SpamAssassin のダウンロード。
wget "http://ftp.riken.jp/net/apache/spamassassin/source/Mail-SpamAssassin-3.3.1.tar.bz2" md5sum Mail-SpamAssassin-3.3.1.tar.bz2 bb977900c3b2627db13e9f44f9b5bfc8 Mail-SpamAssassin-3.3.1.tar.bz2 sha1sum Mail-SpamAssassin-3.3.1.tar.bz2 f5748043eb286b1acb456093039a55db00c6f25e Mail-SpamAssassin-3.3.1.tar.bz2
SpamAssassin のインストール。
tar jxf Mail-SpamAssassin-3.3.1.tar.bz2 cd Mail-SpamAssassin-3.3.1/ perl Makefile.PL SITEPREFIX=/usr/local/Mail-SpamAssassin-3.3.1 PREFIX=/usr/local/Mail-SpamAssassin-3.3.1 make make test sudo make install
SpamAssassin ルールの更新。
sudo mkdir /usr/local/Mail-SpamAssassin-3.3.1/etc/mail/spamassassin/sa-update-keys sudo chmod 700 /usr/local/Mail-SpamAssassin-3.3.1/etc/mail/spamassassin/sa-update-keys wget "http://spamassassin.apache.org/updates/GPG.KEY" sudo /usr/local/Mail-SpamAssassin-3.3.1/bin/sa-update --import GPG.KEY sudo /usr/local/Mail-SpamAssassin-3.3.1/bin/sa-update
テスト。
/usr/local/Mail-SpamAssassin-3.3.1/bin/spamassassin -t < sample-nonspam.txt /usr/local/Mail-SpamAssassin-3.3.1/bin/spamassassin -t < sample-spam.txt
起動スクリプトの更新。
BACKUP=/etc/rc.d/init.d/spamassassin.$(date +%Y%m%d%H%M%S) sudo mv /etc/rc.d/init.d/spamassassin ${BACKUP} sudo chmod 644 ${BACKUP} sudo install -m 0755 spamd/redhat-rc-script.sh /etc/rc.d/init.d/spamassassin sudo sed -i 's/\/usr\/local\/bin/\/usr\/local\/Mail-SpamAssassin\/bin/' /etc/rc.d/init.d/spamassassin
最終的な切り替え。
sudo rm -f /usr/local/Mail-SpamAssassin sudo ln -s /usr/local/Mail-SpamAssassin-3.3.1 /usr/local/Mail-SpamAssassin sudo /sbin/service spamassassin restart