会社の後輩が、メールサービスの無いプロバイダ(BB.excite)に加入したとのことで、自分のサーバーにメールアカウントを作ってあげた。
「送信は自分のプロバイダのを使ってね。」
と言っておいたが、どうやらPOPアカウントが無いと送信できない。
こちらでも調べたら、POP before SMTPなので送信できないことになっていた。
仕方ないので、自分のサーバーにもPOP before SMTPを導入して、外部からのリレーを許可することにした。
簡単に出来そうになく感じてちょっと気が重かったが、やってみると意外とすんなり行った。
以下はその手順。
参考にしたのは
http://www.deer-n-horse.jp/linux/tips/postfix.html
apt-get install drac
apt-get install qpopper-drac
*普通はdracを指定するとqpopper-dracも一緒に入る。
/etc/postfix/main.cf
の最後に以下を追加。
smtpd_recipient_restrictions = permit_mynetworks check_client_access btree:/var/lib/drac/dracd check_relay_domains
その後
/etc/init.d/postfix reload
を実行で完了。
と思ったら、受信すると
Failed to create /var/spool/pop/.ユーザ名.pop with uid **, gid ** Change permissions.
というメッセージで受信できなくなってしまった。
ちょいと調べると、
http://www.t-base.ne.jp/~akira/diary/?200506b&to=200506144#200506144
が見つかる。
chgrp mail /var/spool/pop
chmod 2775 /var/spool/pop
しないといかんそうで、qpopper-dracの不具合らしい。
これで本当に完了。
一応、不正中継できないことを
http://www.nanet.co.jp/rlytest/relaytest.html
などで確認しましょう。(もちろん家は大丈夫でした。)
許可の有効時間は、
/etc/init.d/drac
を編集。
#!/bin/sh -e
# /etc/init.d/drac
# 2002-02-26, v0.0.1, Noèl Köthe, noel@debian.orgDAEMON=/usr/sbin/rpc.dracd
OPTIONS="-i -e 10 /var/lib/drac/dracd.db" ←ここの"-e"の後の数字で決まる。(単位は分)
デフォルトは30でちょっと長過ぎ、10にした。
おっと、設定を有効にするには
/etc/init.d/drac restart
が必要です。
確認するには、
ps ax | grep drac
として
/usr/sbin/rpc.dracd -i -e 10 /var/lib/drac/dracd.db
と言う風に -e 10 となっていればOK。
さすがdebian!すっげー簡単でした。