メールサーバー · 1 min read · Sep 09, 2025
仮想ドメインとユーザーを使用した完全なメールサーバーソリューション (Debian Etch, Postfix, MySQL, Dovecot, DSpam, ClamAV, Postgrey, RBL)
仮想ドメインとユーザーを使用した完全なメールサーバーソリューション (Debian Etch, Postfix, MySQL, Dovecot, DSpam, ClamAV, Postgrey, RBL)
このチュートリアルは、ジャスティン・レフィスによる著作権 (c) 2007 です。さまざまなガイドやオリジナルの資料から派生したもので、文書の最後にリストされています。このチュートリアルは、クリエイティブ・コモンズライセンス 2.5 またはそれ以降のバージョンの下で自由に使用できます。
I. はじめに
このガイドでは、Debian Linux で完全なメールソリューションを設定する方法を説明します (すべてのコードは Debian Etch からのものです)。私は、小さな会社のために安全でスケーラブル、かつポータブルなソリューションを設計するよう依頼されました。このガイドでは多くの「サーバー」を参照していますが、会社には物理マシンが 4 台しかなく、Xen を使用して全体のソリューションを仮想化しました。このシステムの特定の側面については、このガイドでは説明していませんが、次回の改訂に含めるように努めます。
以下で使用されるサーバー名についての注意: インターネットからアクセスする必要がない場合は、アクセスさせないでください。internal.example.com で終わるドメイン名は内部の NIC/IP アドレスです… インターネットから直接アクセスする方法はなく、アクセスすべきではありません。internal.example.com ドメイン名のみを持つサーバーは純粋な内部サーバーであり、インターネットから直接アクセスすることはできません。すべての 非内部 サーバーには 2 つの NIC があります (これらは 2 つの実際の NIC でも、仮想でもかまいません)。最初の NIC はインターネットにアクセスでき、厳密にファイアウォールで保護されています。2 番目の NIC は内部ネットワークにアクセスでき、その結果、セキュリティが少し低くなります。これらの NIC を設定する方法の詳細はこの文書の範囲外ですが、将来的にそれを含めるように更新するかもしれません。
サーバーの一般的なレイアウトは次のとおりです:
プライマリ MX:
NIC1 = 不正確/インターネット = mx-1.example.com
NIC2 = 安全/イントラネット = mx-1.internal.example.com
MTA: Postfix
グレイリストフィルター: Postgrey
セカンダリ MX:
NIC1 = 不正確/インターネット = mx-2.example.com
NIC2 = 安全/イントラネット = mx-2.internal.example.com
MTA: Postfix
グレイリストフィルター: Postgrey
SMTP+TLS & IMAPS:
NIC1 = 不正確/インターネット = secure-mail.example.com
NIC2 = 安全/イントラネット = secure-mail.internal.example.com
MTA: Postfix (+TLS/SSL)
IMAP: Dovecot (IMAPS)
メール配信サーバー: postman.internal.example.com
MTA (lmtp): DSPAM
ウイルス対策: ClamAV
IMAP: Dovecot
データベースサーバー: sql-1.internal.example.com
MySQL
ファイルサーバー: files-1.internal.example.com
NFS
一時ビルドサーバー: build.internal.example.com
<さまざまなツール>
メールは次のように機能します:
インターネットからあなたのドメインへのメール:
- メールはプライマリまたはセカンダリ MX のポート 25 に入ります
- MX は、メールの受信者と宛先が有効かどうかを確認するために MySQL サーバーにクエリを実行します:
a. 受信者が無許可 - メールは拒否されます (550 エラー)
b. 受信者が許可されている - メールは続行されます - MX はグレイリストポリシーを確認します:
a. これは初めて試みられたメールです - メールは拒否されます (再試行)
b. これは初めて試みられたメールではありません - メールは続行されます - MX はクォータ違反を確認します
a. ユーザーのクォータが満杯 - メールはバウンスされます
b. ユーザーに余裕がある - メールは配信されます - MX は内部配信サーバーにメールを送信します (LMTP 経由)
- 内部配信サーバーはウイルス/SPAM をチェックします
a. これは SPAM です - SPAM としてマークされ、LDA に配信されます。
b. これはウイルスです - メールは拒否されます
c. これは SPAM でもウイルスでもありません - メールは LDA に渡されます - LDA がメールを配信します
a. メールが SPAM としてマークされます - Maildir の「SPAM」ディレクトリに配信されます
b. メールが SPAM としてマークされていません - 受信トレイに配信されます。
インターネットからあなたのドメインへのメール:
- ユーザーがポート 25 で SMTP リレーへの接続を開始します
- SMTP リレーが TLS を提供します:
a. ユーザーが TLS を使用しない - メールは拒否されます
b. ユーザーが TLS を使用する - セッションは続行されます - SMTP リレーが AUTH (PLAIN) を提供します:
a. ユーザーが認証しない/認証に失敗 - メールは拒否されます
b. ユーザーが認証する - セッションは通常通り完了します
リモートユーザーは IMAPS (安全な IMAP) を介してメールにアクセスします
ローカルユーザーは IMAP を介してメールにアクセスします
ユーザーが誤検知された SPAM 検出を検出した場合、メールを「ham-
ユーザーが誤検知された SPAM 検出を検出した場合、メールを「spam-
II. 重要な注意事項
これらはすべて、Debian 4.0 Etch または Ubuntu Feisty Fawn にインストールできます。両方のシステムは非常に似ています。ただし、Dovecot と Postfix のデフォルトバージョンを使用する場合、いくつかの小さな問題が発生する可能性がありますが、それが発生した場合は、注意を促すように努めます。
Ubuntu ユーザーの場合、すべてのコマンドの前に「sudo」を使用しないことに注意してください。代わりに、「sudo -s」コマンドを使用して root シェルを起動します。
Ubuntu と Debian でソフトウェアをインストールするのは非常に簡単ですので、可能な限り apt-get ユーティリティを使用します。自分でビルドする必要が少ないほど、後でメンテナンスが容易になります。
それでは、始めましょう!
新しい投稿を受信箱で受け取る
スパムはありません。いつでも購読を解除できます。