メールサーバーを構築する場合、送信メールサーバー(SMTPサーバー)と受信メールサーバー(POP/IMAPサーバー)の構築が必要となる。 ここでは、送信メールサーバーにはPostfix、受信メールサーバーにはDovecotを採用する。 なお、Postfixは迷惑メールの不正中継に利用されないようにするため、初期設定では外部から外部宛(例えば、会社等で自宅サーバーのメールアドレスからプロバイダのメールアドレス宛)に送信できないようになっているが、迷惑メールの不正中継に利用されずに外部から外部宛に送信できるようにするため、SMTP認証機能※を有効にする。 また、DovecotはPOP/IMAPサーバーとして構築し、ユーザーがPOPまたはIMAPを選択できるようにする。※POPとIMAPの違い ※SMTP認証機能とは、メール送信時にユーザー名とパスワードで認証を行なう機能であり、これにより、迷惑メールの不正中継に利用されないようにする。 |
|
(1)Postfix設定 |
|
(2)SMTP認証設定 SMTP認証にシステムのユーザー名、パスワードを使用する場合 |
|
SMTP認証に個別のユーザー名、パスワードを使用する場合 |
|
(3)Maildir形式メールボックス作成 Postfixのメール格納形式は共有ディレクトリ形式(「/var/spool/mail/ユーザー名」というファイルに全てのメールが蓄積されていく形式)だが、アクセス性能改善及びセキュリティ強化の観点からMaildir形式へ移行する。 【新規ユーザー対処】 新規ユーザー追加時に自動でホームディレクトリにMaildir形式のメールボックスが作成されるようにする
【既存ユーザー対処】※既に共有ディレクトリ形式でメールを受信しているユーザーがいる場合のみ 既存ユーザーのホームディレクトリにMaildir形式のメールボックスを作成して、蓄積済のメールデータを当該メールボックスへ移行する⇒メールデータ移行を参照 |
(4)存在しないユーザー宛メールの破棄 メールサーバーは、存在しないユーザー宛メールを受信すると、宛先不明による不達メールを送信元へ返そうとするが、送信元を偽装した迷惑メールが存在しないユーザー宛にわざと送られてくる場合があり、この場合、送信元が偽装されているため、不達メール自体が不達となってしまい、メールがキューに滞留してしまう(mailqコマンドで確認可能)。最終的に不達メールの送信を一定期間繰り返して破棄するが、このような迷惑メールが大量に送られてくると、キューにメールが大量にたまり、たまった大量の不達メールの再送処理により、サーバー自体が高負荷状態に陥って機能しなくなる恐れがあるため、存在しないユーザー宛のメールは破棄するようにする。 なお、正当なユーザーが宛先を間違えてメールを送った場合に、不達メールが返ってこずに、宛先を間違えたことに気づかない懸念はあるが、現在のセキュリティ事情では、送達実績のない宛先へのメールは送達確認をするようにすることが一般的であることから、本懸念は無視するものとする。 |
|
(1)Postfix起動
|
(2)TCP25番、TCP587番ポート開放 【ルーター】 ルーター側の設定で、TCP25番、TCP587番ポートへのアクセスをサーバーに転送するようにする。 ※ルーターの設定は各ルーターのマニュアルまたはメーカー別ルーターポート開放手順を参照 【ファイアウォール】※ファイアウォール導入している場合のみ サーバー側のファイアウォール設定で、TCP25番、TCP587番ポートへのアクセスを許可するようにする。 ※ファイアウォール設定はこちらを参照 Portチェックテスト【外部からのPort開放確認】で「ホスト名(FQDN) または グローバルIPアドレス」にサーバー名(例:centossrv.com)、「チェックポート番号」に25または587と入力、「ご注意・制約事項」を確認チェックして「Portチェック実行」ボタンを押下し、 ホスト:centossrv.com ポート:25または587 にアクセスできました と表示されることを確認。 |
OP25B(Outbound Port 25 Blocking)対策参照 |
|
|
(1)Dovecot起動 |
|
(2)TCP110番(POPの場合)またはTCP143番(IMAPの場合)ポート開放 【ルーター】 ルーター側の設定で、TCP110番(POPの場合)またはTCP143番(IMAPの場合)ポートへのアクセスをサーバーに転送するようにする。 ※ルーターの設定は各ルーターのマニュアルまたはメーカー別ルーターポート開放手順を参照 【ファイアウォール】※ファイアウォール導入している場合のみ サーバー側のファイアウォール設定で、TCP110番(POPの場合)またはTCP143番(IMAPの場合)ポートへのアクセスを許可するようにする。 ※ファイアウォール設定はこちらを参照 Portチェックテスト【外部からのPort開放確認】で「ホスト名(FQDN) または グローバルIPアドレス」にサーバー名(例:centossrv.com)、「チェックポート番号」に110または143と入力、「ご注意・制約事項」を確認チェックして「Portチェック実行」ボタンを押下し、 ホスト:centossrv.com ポート:110または143 にアクセスできました と表示されることを確認。 |
例としてメールユーザーcentos(メールアドレス:centos@centossrv.com)を追加する。 |
|
自宅や会社等の複数拠点でメールを使用する場合で、メールボックスを同期しなくてもいい場合(例:会社で受信したメールは自宅で受信できなくてもいい場合)、受信メールサーバーにPOPを使用する。 ここでは、メールソフトとしてThunderbirdを使用する。 Thunderbirdを起動し、メニューの「ファイル」⇒「新規作成」⇒「既存のメールアカウント」でメールアカウント設定を行う 「あなたのお名前」⇒表示名(例:webmaster@centossrv.com) 「メールアドレス」⇒メールアドレス(例:webmaster@centossrv.com) 「パスワード」⇒パスワード 「続ける」 「受信サーバー」⇒「POP3」を選択 「受信サーバー」−「サーバーのホスト名」⇒メールサーバー名(例:mail.centossrv.com) 「受信サーバー」−「ポート番号」⇒「110」を選択 「受信サーバー」−「SSL」⇒「接続の保護なし」を選択 「受信サーバー」−「認証方式」⇒「通常のパスワード認証」を選択 「送信サーバー」−「サーバーのホスト名」⇒メールサーバー名(例:mail.centossrv.com) 「送信サーバー」−「ポート番号」⇒「587」を選択 「送信サーバー」−「SSL」⇒「接続の保護なし」を選択 「送信サーバー」−「認証方式」⇒「通常のパスワード認証」を選択 「再テスト」 「次のアカウント設定が、指定されたサーバーを調べることにより見つかりました。」と表示されることを確認して「完了」 「接続する上での危険性を理解しました」をチェックして「完了」 |
自宅や会社等の複数拠点でメールを使用する場合で、メールボックスを同期したい場合(例:会社で受信したメールを自宅でも受信したい場合)、受信メールサーバーにIMAPを使用する。 ここでは、メールソフトとしてThunderbirdを使用する。 Thunderbirdを起動し、メニューの「ファイル」⇒「新規作成」⇒「既存のメールアカウント」でメールアカウント設定を行う 「あなたのお名前」⇒表示名(例:webmaster@centossrv.com) 「メールアドレス」⇒メールアドレス(例:webmaster@centossrv.com) 「パスワード」⇒パスワード 「続ける」 「受信サーバー」⇒「IMAP」を選択 「受信サーバー」−「サーバーのホスト名」⇒メールサーバー名(例:mail.centossrv.com) 「受信サーバー」−「ポート番号」⇒「143」を選択 「受信サーバー」−「SSL」⇒「接続の保護なし」を選択 「受信サーバー」−「認証方式」⇒「通常のパスワード認証」を選択 「送信サーバー」−「サーバーのホスト名」⇒メールサーバー名(例:mail.centossrv.com) 「送信サーバー」−「ポート番号」⇒「587」を選択 「送信サーバー」−「SSL」⇒「接続の保護なし」を選択 「送信サーバー」−「認証方式」⇒「通常のパスワード認証」を選択 「再テスト」 「次のアカウント設定が、指定されたサーバーを調べることにより見つかりました。」と表示されることを確認して「完了」 「接続する上での危険性を理解しました」をチェックして「完了」 |
□内部で同一ユーザー同士でメールの送受信 □内部で他ユーザー間でメールの送受信 □内部で外部(プロバイダのメールアドレス等)との送受信 □内部で携帯との送受信※ □外部(会社等)で同一ユーザー同士でメールの送受信 □外部(会社等)で他ユーザー間でメールの送受信 □外部(会社等)で外部(プロバイダのメールアドレス等)との送受信 □外部(会社等)で携帯との送受信※ ※携帯はドメイン指定受信等でメールサーバーからのメールが拒否されないようにしておくこと |
Open Relay Testで「Mail Server」に自宅サーバーのホスト名(例:centossrv.com)を入力して「Check for Open Relay」ボタンを押下する。 18種類のテストが行われ、すべてのTestについてRelay NOT Acceptedと表示されればOK。 |