あけましておめでとうございます。今年もよろしくお願いします。
去年、メールサーバ構築・独自ドメインのメールアドレス作成(4/4)~メールサーバのインストール~ - Qiitaを参考にメールサーバーの構築をしたのですが、どうもうまく行かなかくて苦戦していました。新年になってようやく解決できたので、ここに構築手順を書き記しておきます。
環境構築編
Postfix + Dovecotにて構築を行います。環境はCentOS 7.6です。
ここでカンタンに2つの紹介をします。
- Postfix: メールの送受信を担う。コレ一つでメールサーバー自体は完成する。
- Dovecot: サーバー上で受信済みのメールを取得する(POP)ためのソフト。コレがないとメールクライアントから接続したりができない。
要するに、ただメールサーバーとしてお知らせ送信がしたい場合はぶっちゃけPostfixだけで事足ります。
$ yum install dovecot $ systemctl enable dovecot
DNS設定
MXレコードとAレコードを設定します。例としてexample@example.com
というメールアドレスを考えます。
MXはexample.com
というドメインに来たメールをmail.example.com
というホストに配送する、というような設定を行います。
Aレコードはこのmail.example.com
のIPアドレスを設定します。
お名前.comを例にとると次のようになります。まず「DNS関連機能の設定」→「DNSレコード設定を利用する」の順に進みます。
そして、以下のような入力フォームが出てくるので、次のように入力します。ここではpandanoir.net
宛のメールをmail.pandanoir.net
へ転送しています。優先度は10でとりあえずは構いません。
Aレコードも書きます。こちらはメールサーバーのIPを指定します。
設定の書き方
いじる設定ファイルは以下のとおりです。
/etc/postfix/main.cf /etc/postfix/master.cf /etc/dovecot/conf.d/*
/etc/postfix/main.cf
はPostfix全体に関する設定をします。その後、/etc/postfix/master.cf
で、各ドメインでmain.cf
と異なる部分を追記していきます。つまりこの2つは記述方法が同じです。
master.cf
は最終的に以下のようにしました。正直どの設定がどう効いているのかは未だよくわかってません(おい)。
mua_client_restrictions = permit_sasl_authenticated,reject
というのをmaster.cf
に記述してください。単なる変数の宣言です。あとはメールサーバ構築・独自ドメインのメールアドレス作成(4/4)~メールサーバのインストール~ - Qiitaを参考に設定すればOKです。
実際に送信してみる
$ echo "テスト" | mail -s "タイトル" -r from@example.com to@example.com
これで~/Maildir/new
にメールがあればサーバー内での送受信ができています。また、to@example.com
として外部のアドレスを指定すれば外部へ送信できるはずです。さらに、外部からのメールの受信もできるはずですので、ケータイやGMailなどから送ってみてください。