CentOS7にメールサーバを構築する

ドメインを契約すれば、メールサーバを構築して自分だけのメールアドレスを運用することができます。(G Suite を利用する手も…)

スポンサーリンク

設定すること

  • Postfix
  • Dovecot
  • SMTP
  • ファイアウォール
  • SSL/TLS (+ cron)
  • DNS

細かい設定方法は下のほうにあります。

Postfix, Dovecot

メールの送受信に使います。

SMTP

迷惑メールなどの踏み台にされることが増えたため、メールを送信する際に SMTP 認証で送信元ユーザーを認証するようになりました。

以前は TCP 25 番ポートを利用してメールを送信してましたが、最近は上記理由により TCP 587 番ポート (サブミッションポートというらしい) を使うことが増えているようです。

ファイアウォール

通常サーバは不要なポートを閉じてセキュリティを高めているので、メールの送受信に使うポートは自分で開放しておく必要があります。

Web サーバ

  • TCP 80: HTTP
  • TCP 443: HTTPS

SSL/TLS 通信に使う証明書を Web サーバを介して発行するときなどで必要です。

 Postfix

  • TCP 25: SMTP (OP25B で弾かれる?)
  • TCP 587: SMTP
  • TCP 465: SMTPS

SSL/TLS なしでは 25, 587 を使います。

SSL/TLS ありでは 587 は閉じ、465 を使います。25 は使うので閉じてはいけません。

Dovecot

  • TCP 110: POP3
  • TCP 143: IMAP
  • TCP 995: POP3S
  • TCP 993: IMAPS

SSL/TLS 通信には下二つのポート開放が必要です。

SSL/TLS

証明書なしでもメールの送受信はできますが、セキュリティは大切なので設定しておきたいところです。

証明書は自作のもの (いわゆるオレオレ証明書) と各機関が発行する証明書があります。

有料で購入するものですが、Let’s Encrypt の無料証明書も使えるようです。その場合は 3 か月で期限が切れるため、cron で自動更新を設定するといいでしょう。

DNS

正しく設定しないとメールサーバを認識してもらえません。私は @mktia.com で利用するために次のように設定しています。

エントリ タイプ データ
@ A 123.456.789.012
 MX 10 @
mail CNAME @

設定方法は以下の記事がわかりやすいです。

ウェブとメールを別々のサーバで運営したい?・・・それ、ゾーン設定で出来ます! | さくらのナレッジ

サーバの各種設定

詳しくは参考記事を見てください。(丸投げ)

最後に

なお、この通り設定した結果、なぜかメールが受信できない模様。Postfix でエラーがでてるのはなんだろうか。

スポンサーリンク

コメント・質問する