
第1回 qmailによるSMTPサーバの構築
sendmailに代わるMTAとして絶大な人気をほこるqmail。このqmailによるメールサーバの運用方法を解説していく。今回は、運用テクニックの前段階としてSMTPサーバの構築方法を紹介する。
鶴長 鎮一
2001/9/4
sendmailからqmailへ
「進化の最終形は絶滅である」という説をご存じでしょうか。複雑になりすぎたシステムは、その複雑さゆえに自己の適応能力が環境の変化に追い付けず、絶滅の道をたどるといった内容だったと記憶しています。
メール配送システム(MTA:Mail Transfer Agent)の代名詞であり、インターネット発展の礎ともなったsendmailは、誕生以来いくたびかの補修と修繕を繰り返し、いままさに進化の最終形にさしかかっているように感じます。そこまで大げさではないとしても、sendmailに何らかの変革を望むサーバ管理者は多いのではないのでしょうか(その変革の1つに「sendmail 9」があるのだと思います)。SPAM対策やSMTPの不正中継に辟易し、事有るごとにsendmailに簡易性を求めることも少なくないと思います。セキュリティやバグ対策もしかりです。「メールユーザー≒UNIXユーザー」であったインターネット創成期、SPAMというものも存在せず、それどころかインターネット利用者全員が1つの互助会に属している良き仲間であったころに誕生したsendmailでは、セキュリティをはじめとする多くの要望を満たすことに限界がきています。もちろん、それらをすべて解決することは不可能ではありません。むしろ、sendmailは多くの要望に対応できる柔軟性があります。その範疇は広すぎるくらいです。
問題は、解決の手段を得るまでにどれほどの時間を費やさなくてはいけないかということです。SPAMや不正中継、セキュリティを考慮しなくてはいけない時代にサーバ管理者となってしまった方が待ち望んでいたもの、それがいまから紹介するqmailです。
次世代MTAといわれるものを挙げると、次の4つがあります。
- qmail
http://www.qmail.org/top.html(qmailの公式ページではありません) - Exim
http://www.exim.org/ - Postfix
http://www.postfix.org/ - ZMailer
http://www.zmailer.org/
| 注:少し古いものですが、これらの性能比較をhttp://www.kyoto.wide.ad.jp/mta/eval1/で見ることができます。 |
新世代MTAとして特に注目されているのがqmailとPostfixです。両者ともsendmailを意識したうえで開発されたMTAです。qmailはsendmailとの互換性にこだわらず、信頼性と性能を追求した成果として、Postfixはなるべく互換を保ちながら、qmailよりも後発だったのでqmailからもいいところを吸収した成果として誕生しました。
Postfixも優れたMTAです。sendmailとの互換性を主張しつつも、qmailの特徴である「Maildir」というメールスプール形式を採用し、活発に開発が続けられています。ですが、どうせsendmailから乗り換えるのなら、あえて互換性にこだわらない潔さをよしとするqmailに触れてみるのもサーバ管理者としての幅を広げると思います。また、qmailには多くのパッチやツールが用意されています。その中には、いまはやりの「Web mail」や「POP before SMTP」、バーチャルドメインメールサービスを実現するためのものもあります。
MTA乗り換えのメリットは、管理者だけでなくサーバを使用するユーザーにももたらされると思います。本連載では、管理者としてqmailのインストールや運用を行うにとどまらず、サーバを使用する一般ユーザーも恩恵を受けられるような使用方法を紹介していきます。
| 参考:sendmailとSendmail オープンソース版は小文字で始まる「sendmail」、商用版は大文字で始まる「Sendmail」で表記します。商用版には、米Sendmail社や販売代理店によるサポート、運用管理機能、暗号化通信などが付いているといった違いがあります。 http://www.sendmail.com/ |
■qmailの仕組み
qmailは、D. J. Bernstein氏(http://cr.yp.to/djb.html)によって提供されています。sendmailを反面教師としているqmailは、次の点でsendmailと大きく違います。
- sendmailが、メッセージを単一のファイルに結合して全ユーザーが共通のディレクトリを使用するmbox形式であるのに対し、qmailは各ユーザーのホームディレクトリに1つのメッセージを1ファイルとして保存するMaildir形式である
- sendmailではメール配送にかかわる処理を1つのプロセスで実行しているのに対し、qmailではメール配送にかかわる処理を複数のプログラムに分割している
/var/spool/mailをのぞいてみると、そこには全ユーザーのメッセージがユーザー1人につき1ファイルで保存されているのが分かります。メールのファイルを見てみると、FromやToなどが表記されたヘッダ情報があり、最初のヘッダから次のヘッダの間にメッセージ本体であるbodyが表記されていることに気づくと思います。仕切りとなっているヘッダ情報が何らかの理由で壊れると、ほかのメッセージにも影響を与えてしまうことが分かるでしょう。メールを保存するのも読み出すのも1つのファイルを対象にしているため、同時に複数の処理が発生して、さらにファイルの排他制御が働いていなければ、ファイルを正常な形に保つのは難しくなります。Maildirはそれを最も単純な方法で解決した結果だといえます。
配送システムに目を向けてみると、sendmailはローカル配信やリモート配信などすべての処理を「sendmail」という1つのプロセスで管理しています。きれいな実装ですが、それゆえにsendmailの改変には手間を要します。大きなシステムほど、複雑さも増します。それなら処理ごとに小さなプログラムに分けてしまった方が効率がよくなる、というのがqmailの発想です。セキュリティホールなどが発見されたとしても、小さなプログラムごとに問題を片付けることが可能になります。また、qmailのプログラムは3つのグループに分かれており、それぞれのグループは他グループの機能さえも信頼しないという前提で動作します。どこか1つのグループが仮に乗っ取られてしまったとしても、ほかの2つのグループは乗っ取られてしまったグループからの攻撃にさえ対応できるのです。さらに、qmail-1.03誕生以来、qmailそのものの脆弱性は報告されていません(もちろん運用を誤ればその保証の限りではありませんが)。
|
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ジャパン)
- natテーブルを利用したLinuxルータの作成・2 (2010/3/11)
IPパケットのディスティネーションアドレスを書き換える「DNAT」を使って、透過型プロキシを構築します - 一歩進んだ監視のカスタマイズ (2010/3/3)
スクリプトの実行結果などを取得できるユーザーパラメータを用いて、自分のニーズにぴったり合った監視を実現 - OSSライセンス順守の第一歩 (2010/2/18)
企業として、OSSライセンス違反を犯さないためには、どのような手順が必要か、いくつかアドバイスします - 無視できないフラグメンテーション問題への解答は? (2010/2/10)
今回は、メモリコンパクション、そしてメモリバリアを発行するシステムコールという2つのパッチについて深く紹介します
|
|
スキルアップ/キャリアアップ(JOB@IT)
スポンサーからのお知らせ
- - PR -
| 「いつかは壊れるサーバ」そんな故障に 迅速で安価に手軽に対応する方法とは? New! |
| 「特権ユーザー」の事件を防げ! 万能権限を持つユーザーの管理方法とは? New! |
| 仮想環境の構築とデータ保護の特効薬?! 実績と信頼性の高いパッケージで安心運用 |
| 仮想環境のバックアップもこれまでどおり 「まるごと取ってまるごと戻す」簡単運用 |
| おばかアプリ選手権、第4弾開催中!! ムダにカッコよくてくだらない作品求ム! |
| 社内ファイルサーバを“クラウド”に統合 VPN直結「クラウド型ストレージ」を紹介 |
| その数、なんと400台以上! グループ内 サーバの「統合管理」によるメリットは? |
| 美人!? まあまあ? 気になる いやし系!! PV急増で「美人時計」がとった手段とは? |
| 進化を続ける富士通ストレージETERNUS DX 製品開発者の自信を裏付けるものとは何か |
| 運用管理の課題を“2つの観点”から分析 ユーザー満足度の高い「仮想環境」とは? |
- - PR -
お勧め求人情報

**先週の人気講座ランキング**
〜CCNA編〜
| ◆ | TomcatやJBossなどAPサーバ環境に関する 情報を集約! “業務”用APサーバ大百科 New! |
| ◆ | 一気に解説! 最新のクラスタストレージ 「RAIDを超えたストレージ基準」……など New! |
| ◆ | クラウド的ユーザー体験の変化は脅威か? 仮想化技術を使いこなす運用管理術を紹介 New! |

| ◆ | 上司や部下、部署内メンバーとの情報共有 を“ガラッ”と変えるコラボツールとは? New! |
| ◆ | おばかアプリ選手権、第4弾開催中!! ムダにカッコよくてくだらない作品求ム! |
| ◆ | 社内ファイルサーバを“クラウド”に統合 VPN直結「クラウド型ストレージ」を紹介 |

| ◆ | Twitterのアカウントはなぜ突破された? メールによる新手の攻撃手法とその対策 |
| ◆ | もう仮想化のお試しフェイズは終わりだ! Hyper-V 2.0が基幹システムも仮想化 |
| ◆ | 美人!? まあまあ? 気になる いやし系!! PV急増で「美人時計」がとった手段とは? |

| ◆ | クライアント企業から求められる人材 ⇒IT技術と経営戦略を併せ持つ「戦略家」 |
| ◆ | .NET編集長が実践する「技術情報検索術」 サンプル・コードを簡単に探す“技”は? |
| ◆ | 業務効率と情報セキュリティ対策を両立! 手間なく確実に機密情報を守る方法とは? |

| ◆ | 進化を続ける富士通ストレージETERNUS DX 製品開発者の自信を裏付けるものとは何か |
| ◆ | 運用管理の課題を“2つの観点”から分析 ユーザー満足度の高い「仮想環境」とは? |

| ◆ | 【CTC事例】約30の基幹システムを統合! 膨大なバッジジョブを制御した方法は? |
| ◆ | 仮想化すればコストは削減できるか? 仮想化に必要な「3つの視点」を解説する |
| ◆ | その数、なんと400台以上! グループ内 サーバの「統合管理」によるメリットは? |






