next up previous contents
Next: 5.1.2 mail aliases Up: 5.1 mail の仕組みとPostfix Previous: 5.1 mail の仕組みとPostfix

5.1.1 配送

\epsfile{file=transfer}

電子メイルを送る場合、通常2つのプログラムが必要です。1つは、MUA( Mail User Agent) で、MUA はユーザーインターフェースを担当します。 今一つは、 MTA ( Mail Transfer Agent ) で、E.P.Allman の sendmail が有名ですが、 近年では qmail や Postfix、その他ZMailer,Exim なども登場し、 特にqmail,Postfixがユーザを増やして来ています。 MUA と MTA を用いた電子メイルの配送方法は、下図のように考えることが出来ます。

順番に経路を辿ると、

  1. MUA から電子メイルの発送
  2. MTA による配送 ( SMTP, UUCP,...)
  3. MTA による受理
  4. MUA によるスプールへの書き込み

のようにメイルは配送されます。従って、その配送に関しては MTA が非常に 重要な訳です。しかし、MTA に用いられる sendmail はその動作を sendmail.cf と呼ばれる設定ファイルによって定義さるのですが、この sendmail.cf の構文は 非常に複雑怪奇であり、その歴史性故に Unix の中でも特異な存在と化しています。 これに対して、 qmail や Postfix の特徴は、MTA が担うべき多くの役割を sendmailで行っていたような一つのプログラムで担うのではなく、多くの プログラムに分割している点です。これによって、各々のプログラムの守備 範囲が明確となり、同時に各々のプログラムのサイズの減少や単純化が なされ、セキュリティ的な安全度が上がる結果となっています。また、 最初に説明したように、Internet 上での配送を中心に考えているために、 設定が非常に簡単で、時には何も設定せずに問題なく動作したりもします( 既にsendmailで運用していた場合は特に)。

しかしながら、メイルを配送するに当たっては、通常幾つかの作業が必ず必要です。 例えば、発信人のアドレス を正確に記述しなければ受け取った側からの返信が出来ないという事態が生じる こともありますので、発信人のアドレスをどうするかという問題があります。 最も簡単なアドレスは、次のようなマシン名を含むアドレスですが( summer00.wakhok.ac.jp がドメイン名です)、

      From: hogehoge@dummy.summer00.wakhok.ac.jp

発信人が返信をこのホストdummy で受け取りたくないと思っている場合や、そのサイト の運用として、mail spool host を別に設定している場合などもあるでしょう。 更には、この dummy というマシンが、DNS に登録されていない場合も考えられます (DNS に登録されていないと、相手側が最初から dummy の IP address を知らない 限り返信を返すことが出来ない)。このことは、同時にメイルを受け取る場合にも 生じます。従って、メイルの設定をすることは取りも直さず、 メイルシステム自身の設計から始めければならないのです。



Noriyo Kanayama