
第2回 POP/IMAPサーバの構築と不正中継対策
SMTPサーバ機能だけではメールクライアントを使うことができない。今回はメールクライアントからアクセスできるようにするため、POP3、APOP、IMAP4サーバを構築する。また、不正中継対策としてPOP Before SMTPおよびIMAP Before SMTP機能を組み込もう。
鶴長 鎮一
2001/10/5
メール受信環境を構築するには
さて、サーバ(MTA)のメールボックスを直接読み書きしていたという時代ならいざ知らず、いまやUNIXをデスクトップマシンとして使っている方でさえ、POP3やIMAP4でメールを取り込むことが多くなってきていると思います。今回は、POP3やIMAP4でクライアントにメールを取り込めるようにしましょう。
■メール受信を実現するプロトコル
SMTPはメール送信プロトコルの実質的な標準であるのに対し、メールボックスからメールを取り出す仕組みは、MTA(サーバ)とMUA(各端末)のローカルな取り決めで済むため、用途に応じて複数の手段が用意されています。
- POP3(Post Office Protocol version 3)
バージョン3が付いていることからも分かるとおり歴史もあり、それ故に最も多くのメールクライアントに実装されています。認証時に平文でパスワードを流すため、パケット盗聴による盗み見が危惧されています。多くのプロバイダで採用されているプロトコルです。
参考:連載:インターネット・プロトコル詳説 POP3
- APOP(Authenticated POP)
POPのパケット盗聴による盗み見が危険視されたため、POP version 3からAPOPコマンドによる認証がRFC 1734に規定されるようになりました。プロバイダ側のユーザー管理が煩雑になるためか、採用されるケースは多くありませんが、セキュリティを高めながら汎用性を失わない手段としては最も効果的です。
- IMAP4(Internet Mail Access Protocol version 4)
POPがクライアント側に完全にメッセージをダウンロードし、クライアントでメッセージの管理を行うのに対し、IMAPはサーバ側でメッセージの管理を行い、クライアント側はその操作を行います。ストレージ容量が限られているモバイル端末や複数人でPCを共有する環境などでは有効ですが、サーバ側の負担が増えるためプロバイダなどで採用されることはほとんどありません。
参考:連載:インターネット・プロトコル詳説 IMAP4
サーバに受信機能を組み込む際には、クライアントの対応が問題になります。どんなメールソフトがどのプロトコルに対応しているか、確認してからサーバを構築しましょう(注)。
| 注:メールソフトの対応状況はこちらを参考にしてください。 滝澤 隆史著「MUAs for Windows - Windows のメイラーの評価 -」 http://www.emaillab.org/win-mailer/table-otherspec.html |
■SPAM対策は必須
最近では、SPAMの温床にされないように、送信時にもユーザー確認などの防御策を講じる必要が出てきました。しかしながら、すべてのメールクライアントで「送信時の認証」が実装されているわけではないため、この方法はクライアントソフトを限定できる場合に限られます。そこで、多く用いられる手段としてPOP Before SMTPがあります。送信の前にPOPで認証を行い、それからSMTPリレーを許可するというものです。今回は受信サーバの構築とともにこちらの組み込み方法も紹介します(同様にIMAP Before SMTPについても取り上げます)。
■POP3/IMAP4導入の前に
これから構築作業に入るわけですが、以後の作業はMaildir形式でqmailが起動されていることを前提にしています。コマンドプロンプトの「#」はroot、「$」は一般ユーザーでの作業であることを示しています(「su -」は省略しています)。
また、最近のLinuxディストリビューションは標準でPOP3やIMAP4が組み込まれているため、競合を起こさないようにサービスを停止しておく必要があります。/etc/inetd.confファイルを編集し、下記のようにPOP3、IMAP4に関する行の先頭に「#」を付けてコメントアウトします(xinetdを使用している環境では/etc/xinetd.dにある各サービスを定義しているファイル、または/etc/xinetd.confの該当セクションの中でdisable = yesとします)。
#pop3 stream tcp nowait root /usr/sbin/ipop3d ipop3d |
次に、inetdデーモンプロセスにHUP信号を送って再起動します(xinetdの場合はxinetdに置き換えてください)。
# ps -aef | grep inetd |
また、下記のようにtelnetで、
# telnet localhost 110 |
となることを確認し、POP3が使用するサービスポート110番がフリーになっていることを確認します。同様にIMAP4が使用する143番もフリーになっていることを確認しておきます。
# telnet localhost 143 |
以降の作業では、たびたびqmail起動スクリプト(前回紹介した/etc/rc.d/init.d/qmailスクリプト)の修正を行います。修正を有効にするには、下記のようにサービスの再起動が必要になります。
# /etc/rc.d/init.d/qmail
stop |
| 注:/etc/rc.d/init.dがない場合は/etc/init.dに置き換えてください |
|
1/3
|
|
||||||
|
||||||
| 連載 実用qmailサーバ運用・管理術 |
| Linux Squareフォーラム サーバ構築・運用関連記事 |
| 連載:Heartbeatでかんたんクラスタリング(連載中) オープンソースソフトウェアの「Heartbeat」を使ってHAクラスタを実現し、サービスを「落とさない」仕組みを実現します |
|
| 特集:Apache 2.2でWebサイトをパフォーマンスアップ! 最新安定版Apache 2.2は、何が変わったのか? 最新のApacheを新機能の使い方とともに解説する |
|
| 連載:実用 Apache 2.0運用・管理術(全8回) 本連載では、Apache 2.0の運用や管理方法を解説する。まず必須設定と基本的なセキュリティ対策を行い今後の運用に備える |
|
| 連載:実用
BIND 9で作るDNSサーバ(全15回) 本連載では、BIND 9の構築/運用方法を解説していく。実際に役立つことを目的に、セキュリティや大規模運用などのテーマを取り上げていく |
|
| 連載:実用qmailサーバ運用・管理術(全14回) 本連載を通して、qmailによるメールサーバの高度な構築・運用・管理術を紹介。SPAM対策やML管理からサーバでのウイルスチェックなどまで |
|
| 特集:Samba
3.0の全貌 改訂版 Samba 3.0リリースから8カ月。ここであらためて、Samba 3.0系列の新機能、インストール方法、国際化の現状を解説する |
|
|
TechTargetジャパン
- 新しい記事も入っていて安心しました (2012/2/7)
Linux Squareのアクセスランキングを公開します。定番の記事ばかりでなく、連載中の記事もよろしくお願いいたします - エラーメッセージをどう扱うか? (2012/2/2)
今回は、スクリプト実行時にエラーが発生したことを知らせるメッセージの扱い方を説明します - ファイルのアップロードを制限する (2012/1/30)
HTTPクライアントがアップロードしてくるファイルの扱いについて解説します。そもそも受け入れる必要があるのか? ということのほかにも、いろいろ設定が必要です - OSに付属するシェルスクリプトを読んで技術を盗む (2012/1/27)
シェルスクリプトマスターに近づくには、他人から技術を盗まなければならない。OS付属のスクリプトから技術を盗もう
|
|
キャリアアップ
スポンサーからのお知らせ
- - PR -
イベントカレンダー
- - PR -
