BACKそれでもやはり使い慣れたsendamil設定のおさらいもしておくが、もちろん使えるMTAは一つだけである。fmlとの組み合わせではsendmailの方が相性が良さそうである。設定前のチェックFreeBSD4.4Rではデフォルトでsendmail8.11.6がすでに動作しているので、この状態でチェックをしておく。デフォルトゲートウェイ、nameserverはADSLルーター192.168.0.1を指定してある。サーバーはns.mydomain.comである。各ファイルは以下のとおりとなる。192.168.0.1LAN内部用のDNSは設定しておらず、ADSLルーター192.168.0.1にISPのDNSサーバーを記述してある。ISPのアドレスに出してみる。ルーターではsmtp(25)を通す設定としなくてもまったく問題ない。/var/log/maillogを観察するとdsnが見つからないと怒られてしまった。実はresolv.confのbindをコメントアウトしておいたのだ。これを外すと問題なく送信できる。外部からの試験ではルーターでsmtp(25)を通す設定にしておく必要がある。foo@hoge.netからfoo@mydomain.comあてにメールを出す。fooとなりmailで確認するとちゃんと届いている。この状態でrelaytestをかけておく。おすすめのhttp://www.abuse.net/relay.htmlで確認すると無事パスした。sendmailの設定sendmailについては別のサイトを参考にしたらうまく動作した。使い慣れたCFはサポートされていないので、m4のマクロを使いcfを作った。ドメインはmydomain.comとする。メールを送信した実際のホスト名ではなく、別名を使うという指定とのことである。実際はhogehoge@mail.mydomain.comであるが、ここに設定することにより、hogehoge@mydomain.comと表示されるようになる。設定を行った場合には/etc/mail/local-host-namesに、受け取るメールアドレスのドメイン名部分を書いておく必要があるので、/etc/mail/local-host-namesmydomain.comns.mydomain.commail.mydomain.comと記述する。最下行は外部のMXにmail.mydomain.comと設定したあるので念のためである。FEATURE(`local_lmtp')dnlはFreeBSD4.2R以降では記述する必要がある。mail.localにSUIDにセットされなくなりそのためローカルユーザの配送に不具合がでるのを防ぐためである。`0s')dnlはIDENT認証を行わないように待ち時間を0秒とするものである。これを設定することによりルーターで113を通す必要がなくなる。指定したファイルで行うために設定する。いうサンプルが用意されている。RELAYと記述する。データベースに変換しておく必要があるので以下のコマンドを実施する。作成するため、以下のコマンドを実施する。sendmail.cf作成されたsendmail.cfを/etc/mailにコピーして再起動する。/etc/mailpopの設定popも最新のqpopperをportsからインストールした。/etc/inetd.confでpop3をコメントアウトするだけで動作するはずである。クライアント側のメーラーでpop3、smtpサーバーの設定はサーバーのアドレス192.168.0.*を設定しておく。inetd.confは以下のように設定する。-sはログに出力するオプションである。-spopは内部LANからしか使わないのであまりセキュリティに気をつかうことがないので、sendmail+qpopperの組み合わせでも十分である。ルーターのNATで25番ポートを開発用マシンに通すように設定して、メールを外部とやりとりしてみたがうまくいった。ついでにメールセキュリティサイトで第三者の転送をしないかチェックしたが、とりあえず問題なかった。