今回は、メールリレー用サーバー経由でメールサーバーを送信する構成のうち、「メールリレー用サーバー」の設定について解説します。
メールシステム構成図
下図の構成でメールリレー用サーバーが配置されているとします。
メールリレー用サーバーはクライアントからのメールを受け取り、メールサーバーに転送(リレー)します。
メールサーバーは、メールリレー用サーバーからのメールを受け取り、インターネットに向けてメールを送信します。
このような構成になるケースとしては
- 外部の業者のメールサーバーを利用している
- 社内から各クライアントが直接外部のメールサーバーにアクセスするのではなく、セキュリティを考慮してログ収集をする
といったことが考えられます。
メールリレー用サーバーの設定手順
メールリレー用サーバーの設定手順です。
もともとメールリレー用サーバーには何の設定もしていない状態とします。
メールリレー用サーバーの環境
環境ですが、OS は CentOS の 6系を利用し、メール送信アプリは大概デフォルトでインストールされている Postfix を利用します。
- OS ← CentOS6系
- メール送信アプリ ← Postfix
元々のメールリレー用サーバーの設定
Postfix の設定は、/etc/postfix/main.cf ファイルで行います。
内容を確認すると、デフォルトでは以下のようにメールリレーは受け付けない状態です。
【デフォルト】
inet_interfaces = localhost |
【修正後】
inet_interfaces = all |
■inet_interfaces パラメータ
inet_interfaces パラメータには、メールを受信する(待ち受ける, Listen する)インタフェースアドレス(ネットワークアドレス)を指定します。
例えば、サーバーに複数の NIC が挿入されている場合、どの NIC でメールを受け付けるか指定することができます。
- inet_interfaces = all ← 全てのホストからの受信が可能になるようになります。
- inet_interfaces = local ← ローカルのみメールを受信します。(あまり実運用には向いていませんが)
inet_interfaces パラメータは、Postfix がどのインタフェースからメールを受信して自サーバー(ローカル)のメールボックスにメールを保存するという動作を設定します。
受信して保存したメールを転送するには、mynetworks で設定します。
■インタフェースを絞る場合
#inet_interfaces = all |
■mynetworks パラメータでアクセス元を制限する
#mynetworks = 192.168.100.0/24, 127.0.0.0/8 #mynetworks = $config_directory/mynetworks #mynetworks = hash:/etc/postfix/network_table mynetworks = 192.168.1.0/24, 192.168.2.0/24, 192.168.3.0/24, 127.0.0.0/8 ← ネットワークセグメントごとに登録ができる。 |
mynetworks パラメータで信頼できるネットワークを指定します。
ローカルのネットワークを指定することで、外部からのアクセスを制限し第三者からのスパムメールの踏み台化を防ぎます。
■relayhost パラメータでどのメールサーバーに転送するか指定する
【例】
mail.test.co.jp サーバーの 587番ポートにメールを転送したい場合
#relayhost = $mydomain #relayhost = [gateway.my.domain] #relayhost = [mailserver.isp.tld] #relayhost = uucphost #relayhost = [an.ip.add.ress] relayhost = mail.test.co.jp:587 ← このメールサーバーに転送される。 |
■/etc/aliases
/etc/aliases ファイルは、Postfix でエイリアス(別名)を利用する場合に使う設定ファイルです。
例えば、以下の設定の場合です。
- ドメイン ← test.co.jp
[root@test11 ~]# cat /etc/aliases # # Aliases in this file will NOT be expanded in the header from # Mail, but WILL be visible over networks or from /bin/mail. # # >>>>>>>>>> The program “newaliases” must be run after # >> NOTE >> this file is updated for any changes to # >>>>>>>>>> show through to sendmail. # # Basic system aliases — these MUST be present. mailer-daemon: postmaster ← mailer-daemon 宛のメールは、postmaster が受け取る。 postmaster: root ← postmaster 宛のメールは、root が受け取る。 test-str-001: root ← root アカウント宛のメールは、test-str-001@test.co.jp で送信される。 |
■/etc/aliases ファイルを設定変更した場合の反映手順
# newaliases |