11.3. メール管理
11.3.1. メール配送の仕組み
Linuxにおいてメールの配送はMTA、MDA,MUAにより構成/実現される。
MTA
MTA(Mail Transfer Agent)は電子メールを配信/転送するプログラム、つまりメールサーバソフトウェアを表す。 MTAにはsendmail、qmail、postfix、eximなどがある。
| MTA | 処理速度 | セキュリティ | 説明 | 
|---|---|---|---|
| sendmail | × | × | かつてMTAの標準ソフトウェアと広く普及した。 | 
| qmail | ○ | ◎ | セキュリティ面に優れており、非常に堅牢なつくり。パフォーマンスもsendmailより優れている。 | 
| postfix | ◎ | ○ | パフォーマンスが最も優れたMTA。設定が簡単でセキュリティ面も高い。sendmailとの互換性がある。 | 
| exim | △ | ○ | Debian系の標準のMTA。 | 
MDA(Mail Delivery Agent)
メールボックスにメールを送るプログラム。
MUA(Mail User Agent)
MUAはメールクライアント(メーラ)を表しメール作成、閲覧が可能なもの。
11.3.2. メールの配送フロー
- メールクライアントソフトウェア(MUA)でメール作成
- 送信元側のメールサーバ上のMTA(1)へ送る
- 宛先側のメールサーバ上のMTA(2)へ転送(相手ドメインのDNSサーバに尋ねる)
- MTA(2)がメールを受け取ると、MDAがメールをメールボックスに格納する
- 受取人は自分のメールボックスからメールを取り出す(POP,IMAPを使用)
11.3.3. MTAの起動とメールの確認
MTAプログラムの確認
LinuxシステムでどのMTAプログラムがインストールされているのかは、以下プログラムで確認可能。
netstat -atnp | grep 25メールの送信、受信メールの確認
mailコマンドで確認可能。
mail # 受信メールの確認
mail -s <題名> <宛先ユーザー名 | 宛先メールアドレス> # メールの送信「.」で入力終了メールの転送とエイリアス
メールを転送する場合以下の2つの方法がある.
- /etc/aliasesファイルに設定する方法
- 各ユーザーのホームディレクトリに存在する~.forwardファイルに転送先アドレスを設定する方法
あるメールアドレスに届いたメールを別のアドレスに転送する場合は/etc/aliasesファイルに設定を記述することで可能。
書式は以下の通り。
転送元ユーザー: 転送先ユーザー11.3.4. 送信待ちメール/受信待ちメールの確認
多数のメールを送信した場合やメール送信に失敗した場合はメールキューに蓄えられる。
具体的には、送信者側のメールサーバの/var/spool/mqueueディレクトリに保存される。
情報はmailqコマンドでできる。
なお受信成功した場合は /var/spool/mailに保存される。
mailqコマンド
メールキューを一覧するコマンド。
mailq