Create  Edit  Diff  Mac OS X Serverで作る 小さな計算機室  Index  Search  Changes  RSS  Login

メールサーバーの設定

メールが届かない

早朝出勤して授業の準備をしていたら、同僚が申し訳なさそうに部屋に入って来て、 「昨晩からメールが一切受け取れなくなった」とおっしゃった。 メールサーバーは動いているので不審に思い、/var/log/mail.logを眺めると

status=deferred (host 127.0.0.1[127.0.0.1] said: 421 4.3.2 Service shutting down, closing channel (in reply to end of DATA command)

こんな調子のエラーが延々と続いていた。

最初はgreylistingの設定がまずいのかと思い、止めてみたけれども、全く改善されない。 試しに、ウィルスチェックを止めたところ、受信できるようになった。

その後調べたところ、 どうやら、postgreyを設定する際に、深く考えないで Net::Serverをインストールして しまったのがいけなかったらしい。 /Library/Perl/5.8.6 から Net を削除したら、amavisdもちゃんと動くようになった。

キューに溜まりっぱなし

メールサーバーが動くようになったのは良いけれど、キューされていたメールが再送されない。 278通が溜まったままだ。 「サーバー管理」のメールキューの【再試行】を押しても

status=deferred (delivery temporarily suspended: transport is unavailable)

とごねられる。 仕方がないので、

sudo postsuper -r ALL 

したら、うまくいったみたいだ。

SpamAssassinのデータ更新

最近SPAMが急増しているので、仕方なくSpamAssassinのデータベースを更新する。

作業を始める前に、

cd /var/clamav
mv .spamassassin .spamassassin.orig
ln -s /var/amavis/.spamassassin .spamassassin

しておいた。

自分用のMac上で、SPAMとHAMを抽出したメールボックスを用意してから、 サーバーにファイル転送。その後、 sudo su clamav してから、マニュアルのとおり

sa-learn --showdots --spam SPAM.mbox/*
sa-learn --showdots --ham HAM.mbox/*

式に登録する。 HAMのデータが大きすぎて、途中でperlがコアを履いて止まった。 メモリーにデータが入りきれず、mallocに失敗したようだ。

その後、/etc/mail/spamassassin/local.cfをちょっと手直し

# Bayesian Auto Learn
#auto_learn 1
bayes_auto_learn 1

# Safe Reporting
#safe_reporting 0
report_safe 0

# Full/Terse Reporting
#use_terse_report 0

# Subject Tag
subject_tag [junk]

# Rewrite the Subject
#rewrite_subject 0

# Use Bayesian Filtering
use_bayes 1

# OK locals
ok_locales en ja

# OK languages
ok_languages en ja

# Required hits to be marked as spam
required_hits 4

# added by Hayakawa
score BAYES_80 3.0
score BAYES_95 3.5
score BAYES_99 4.5
score BAYES_00 0 0 -1.665 -6.0
score BAYES_05 0 0 -0.925 -4.0
score X_LIBRARY 4.3
score HTML_70_80 0.5
score UPPERCASE_25_50 0.5
score NO_DNS_FOR_FROM 3.5
score HOT_NASTY 2.0
score RISK_FREE 2.0
score RATWARE_OE_MALFORMED 4.1
score UPPERCASE_75_100 1.0
score HTML_MESSAGE 0.5
score MSGID_FROM_MTA_ID 2.7
score GAPPY_SUBJECT 0.5

WebMailの設定

OS Xサーバーに標準添付のSquirrelMailの細かい設定は、

sudo /private/etc/squirrelmail/config/conf.pl

にて、いろいろいじることができる。

Tiger ServerのWebMailは、メールの日本語のSubjectが文字化けして、商用ソフトのくせに何とも情けない状態だったが、Snow Leopard Serverでも、しっかり文字化けしていた。

ソフトウェアアップデートしたらメールが停止

Mail Services Update 1.0をインストールしたところ、SMTP関係が動かなくなってしまった。/var/log/mail.logを見ると、

Dec 19 09:11:23 banana postfix/master[63]: warning: process /usr/libexec/postfix/tlsmgr pid 2780 exit status 1
Dec 19 09:11:23 banana postfix/master[63]: warning: /usr/libexec/postfix/tlsmgr: bad command startup -- throttling
Dec 19 09:12:23 banana postfix/tlsmgr[2860]: fatal: poll: Unknown error: 0

みたいなエラー。メールの送受信ができないのは大変困ったことだ。このアップデートを当てても動いている別のマシンと

serveradmin settings mail

して、設定を見比べてみると、どうも

tls_random_source = "dev:/dev/urandom"

あたりが怪しいので、

sudo serveradmin settings mail:postfix:tls_random_source = \"\"

してみる。

Dec 21 07:05:34 banana postfix/tlsmgr[33306]: warning: no entropy source specified with parameter tls_random_source
Dec 21 07:05:34 banana postfix/tlsmgr[33306]: warning: encryption keys etc. may be predictable

のようなwarningは出るが、メールの送受信はできるようになった。