参考:No.111 LAN内でメールをやりとりするには? - Linux で自宅サーバ [ Home Server Technical. ]
Webminのサーバ > Postfix > 一般オプションを選択。
「最も便利な一般オプション」では、
「メールを受信するドメイン(mydestination)」でローカルマシンを選択。
「その他の一般オプション」では、
「このメールシステムのインターネットホスト名(myhostname)」に「ubuntu.local」
「ローカルインターネットドメイン名(mydomain)」に「local」を設定。
あと、「ローカル ネットワーク(mynetworks)」を「192.168.***.0/24, 127.0.0.0/8」にした。
これでいちおうSMTPは動いている。
試しに外から25番ポートをたたいてみる。
$ telnet 192.168.***.* 25 Trying 192.168.***.*... Connected to 192.168.***.*. Escape character is '^]'. 220 ubuntu.local ESMTP Postfix (Ubuntu) helo local 250 ubuntu.local mail from: ubuntu@foo.bar 250 2.1.0 Ok rcpt to:ubuntu@ubuntu.local 250 2.1.5 Ok data 354 End data with <CR><LF>.<CR><LF> Subject: test mail test mail by telnet . 250 2.0.0 Ok: queued as C0D043FFF1 quit 221 2.0.0 Bye Connection closed by foreign host.
さてメールが届いているか確認。
~$ mail Mail version 8.1.2 01/15/2001. Type ? for help. "/var/mail/ubuntu": 3 messages 3 new >N 1 ubuntu@foo.bar Thu Jan 10 18:40 15/518 test mail & 3 Message 3: From ubuntu@foo.bar Thu Jan 10 18:40:39 2008 X-Original-To: ubuntu@ubuntu.local Subject: test mail Date: Thu, 10 Jan 2008 18:39:21 +0900 (JST) From: ubuntu@foo.bar To: undisclosed-recipients:; test mail by telnet & q Saved 1 message in /home/ubuntu/mbox
ということで届いている。
また、外のメールクライアントからも送信可能となった。Macで使っているEudoraにてsmtpサーバを192.168.***.*としてubuntu@ubuntu.local宛に送ってみる。返信先は送信先と同じubuntu@ubuntu.localに設定した。
mailで読んでみる。
From ubuntu@ubuntu.local Thu Jan 10 19:47:34 2008 X-Original-To: ubuntu@ubuntu.local Mime-Version: 1.0 X-Sender: local@192.168.***.** (Unverified) X-Mailer: QUALCOMM MacOS X Eudora Version 6J Jr3-rev3 Date: Thu, 10 Jan 2008 19:47:35 +0900 To: ubuntu@ubuntu.local From: <ubuntu@ubuntu.local> Subject: test by eudora Content-Type: text/plain; charset="us-ascii" send test by eudora
次にmbox形式でなくMailbox形式に設定変更。
直接/etc/postfix/main.cfをいじればよいのだろうけど、意地でもWebminで使いたい、という人もいると思うので記録として残す。
Webminのサーバ > Postfix の設定 > ローカル配信を開く。
ちなみにhome_mailbox = MailboxとするとMailbox形式、home_mailbox = Maildir/とするとqmail形式になるらしい。
- 「スプールディレクトリ」(mail_spool_directory)は消しておく(がそのままでもよいようだ)。
本来、mail_spool_directory = /var/mailと設定しておくことにより、伝統的なsendmailのmbox形式のメールボックスが設定され、そのスプール先が/var/mailに設定される。しかし、これらhome_mailboxとmail_spool_directoryは排他的であり、しかもhome_mailboxが優先適用されるので、上記のようにmail_spool_directoryの設定を残しておいても良いようだ。
http://design.dualism.info/archives/2005/11/post_000259.html
メールの保存場所が変更されたので、mailコマンドでメールを読みたい場合には、環境変数MAILも変更しておく必要がある。
~$ MAIL=${HOME}/Mailbox; export MAIL
これが分からず難儀してしまった^^;;;;;。
…しかし、mailコマンドでメールを読めるけど、読んだメールは~/mboxに移されてしまうなぁ…。これはマズいのでは。