このページの本文へ

前へ 1 2 次へ

電子メールの秘密 第5回

メールサーバの機能とセキュリティ

メールを受け取る仕組みはどうなっていますか??

2009年07月28日 09時00分更新

文● 遠藤哲

  • この記事をはてなブックマークに追加
  • 本文印刷

クライアントからメールを受け取り、宛先へ転送し、届いたメールを管理するのはメールサーバの役割だ。近年は、スパムやメールなどが増えるにつれ、迷惑メールを排除する仕組みも充実してきた。そうしたメールサーバの機能について触れていこう。

メールサーバの構成要素

 メールシステムを説明する際によく登場する専門用語に「エージェント」がある。メールシステムの解説で、必要とされる機能を役割という視点で表現したものだ。このエージェントという概念でメールサーバの中を表わすと図1のようになる。

図1 メールサーバの構成要素

 ユーザーインターフェイスを提供するMUA(Mail User Agent)、メールの転送経路を決定するMTA(Mail Transfer Agent)、メールを配送(転送)するMDA(Mail Delivery Agent)、POPやIMAPのメール受信のための部分はMRA(Mail Retrieval Agent )と呼ばれている。

 メール送信にかかわるエージェントはMUA、MTA、MDAの3つである。その中でも実際にメールの配送を担うMDAは、さらにローカルMDAと出力MDAに分けられる。ローカルMDAはメールボックスにメールを配送し、出力MDAは他のメールサーバへのメール配送を担当する。

 簡単にメールが送受信される様子を説明しておこう。まずユーザーがMUA(メールクライアント)でメールを送信し、メールサーバはMTAでメールを受け取る。MTAはメールの配送先を決定し、配送先がローカルであればローカルMDAにメールを渡し、ローカルメールボックスにメールを入れる。他のメールサーバへ配送する場合は出力MDAにメールを渡し、SMTPで外部のメールサーバにメールを配送する。ユーザーが受信メールを読む場合はMUAからMRAにアクセスし、メールボックスに到着したメールを読み出す。

 メールシステムの動作を説明するために、エージェント間のやり取りで基本的なメールサーバの動作を説明した。しかし、個人または企業のメールサーバを構築した経験があっても、実際のソフトウェアとエージェントの対応関係となると、よくわからない部分は出てくるだろう。特にMTAとMDAの関係はわかりにくい。その原因として、MTAと呼ばれることの多いsendmailやqmail、Postfixなどのメールサーバソフトは、MDAの機能を内蔵していることが挙げられる。つまり、ローカル配送プログラム(外部MDA)がなくても正しくメールは配送できるわけだ。

 しかし、ローカル配送にはprocmailやmaildropといった専用のプログラムを指定することも可能だ。こうした外部のMDAを使うのには理由がある。通常、メールサーバソフト内蔵のMDAはフィルタリング機能を実装していないため、メールの分類やスパムフィルタといった高度な機能が実現できないのである。

 またMRAに区分されるサーバソフトも、POP専用のqpopperというサーバソフトもあれば、最近人気のDovecotというPOPとIMAPの両方をサポートしているサーバソフトもある。Courierのような比較的新しいサーバソフトは、POP/IMAPの両方のプロトコルをサポートしているだけでなく、メールサーバに要求される多くの機能をパッケージングしたメールサーバスイートとなっている。

(次ページ、「安全なメールの送信」に続く)


 

前へ 1 2 次へ

カテゴリートップへ

この連載の記事
  • 角川アスキー総合研究所
  • アスキーカード