CentOS 7.2 に Postfix をセットアップする。
内部の別サ-バから受け取った SMTP リクエストを上位のメ-ルサ-バ (MSNのSMTPサ-バ) へメ-ルリレ-する (なんでこんなめんど-なことをするかというと Aipo (ry
本設定は、外部公開はせず内部の別サ-バからの SMTP リクエストを上位へ連携するための設定 (セキュリティは一切考慮していない)。
手順は下記の通り。
- Postfix をインスト-ル
- Postfix をセットアップ
1.Postfix をインスト-ル (省略)
CentOS ならミニマムインスト-ルでも最初からインストールされてる。
2.Postfix をセットアップ
1.設定ファイル修正
『/etc/postfix/main.cf』を下記の通りに編集。
75行目付近。
#myhostname = host.domain.tld #myhostname = virtual.domain.tld myhostname = セットアップするサ-バのホスト名
84行目付近。
#mydomain = domain.tld mydomain = ロ-カルドメイン名
102行目付近
#myorigin = $myhostname #myorigin = $mydomain myorigin = $mydomain
116行目付近。
#inet_interfaces = all #inet_interfaces = $myhostname #inet_interfaces = $myhostname, localhost #inet_interfaces = localhost inet_interfaces = all
168行目付近
#mydestination = $myhostname, localhost.$mydomain, localhost mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
270行目付近
#mynetworks = hash:/etc/postfix/network_table mynetworks = 127.0.0.0/8, ロ-カルネットワ-クセグメント/サブネットマスク
322行目付近
relayhost = [smtp-mail.outlook.com]:587 smtp_sasl_auth_enable = yes smtp_sasl_password_maps = hash:/etc/postfix/relay_password smtp_sasl_security_options = noanonymous smtp_tls_security_level = may smtp_tls_CAfile = /etc/pki/tls/certs/ca-bundle.crt
433行目付近
#home_mailbox = Maildir/ home_mailbox = Maildir/
588行目付近
#smtpd_banner = $myhostname ESMTP $mail_name ($mail_version) smtpd_banner = $myhostname ESMTP
2.smtp_sasl_password_maps 作成
メ-ルリレ-先の SMTP サ-バ認証で使用するパスワ-ドマップファイルを作成する。
『/etc/postfix/relay_password』
[smtp-mail.outlook.com]:587 SMTP 認証のユ-ザ-名:SMTP 認証のパスワ-ド
作成したパスワ-ドマップファイルを下記コマンドでハッシュ化する。
postmap hash:/etc/postfix/relay_password
3.Postfix サ-ビスの起動設定
下記コマンドを実行して Postfix サ-ビス起動設定。
systemctl reload postfix.service systemctl enable postfix.service
4.Firewalld をセットアップ。
下記コマンドを実行して Firewalld 設定。
firewall-cmd --add-service=smtp --permanent firewall-cmd --reload
長く苦しい戦いだった…。