PostfixでCentOS7に転送用メールサーバーを構築
目的
・面倒で時間がかかるメール申請をせずに、短時間で開発用のメーリングリストを自由に発行したい
・自メールサーバー内にメールを保存しないで転送したい
構築するメールサーバーの概要
メールサーバーを構築する場合、送信メールサーバー(SMTPサーバー)と受信メールサーバー(POP/IMAPサーバー)の構築が必要となるが、
今回は、メーリングリストにメールを転送する機能だけでいいのでPostfixで送信メールサーバー(SMTPサーバー)のみを構築する。
・ メールサーバーのメールアドレスは、 [email protected](myhost.comはドメイン)
・メールサーバーのホスト名は mail.myhost.com とし、DNS の MX レコードに登録
・ [email protected]で受信したメールは、全て下記の転送先のメーリングリスト宛に転送
[email protected]>[email protected], [email protected]
サーバー情報
・今回利用するサーバーは他のPJが入っているCentOS7のサーバーを利用
・もらった権限はrootユーザーではないので、ログイン後suでrootユーザーに切り替えてから構築
構築の手順
[1] DNS の MX レコードを設定
[2] Postfix をインストール
[3] Postfix の設定を変更
[4] エイリアス設定
[5] ファイアウォール(firewalld)の設定を変更
[6] メール送信/転送の動作確認
[1] DNS の MX レコードを設定
- メールアドレスのドメインは myhost.com ですが、実際のメールサーバーは mail.myhost.com というサーバー
①myhost.com. IN MX 10 mail.myhost.com.
この設定はDNS の MX レコードを設定
②mail.myhost.com IN A 10.x.x.xxx
この設定はmail.myhost.com をサーバーのIPアドレスと紐づける A レコードも登録
- DNS の MX レコードを設定確認方法
方法1:digでMXレコードを確認
$ dig any xxxxx.jp
XXXXXX.jp. 3600 IN TXT "v=spf1 +ip4:123.123.12.12 include:_spf.google.com ~all"
XXXXXX.jp. 300 IN MX 10 mail.XXXXXX.jp.
XXXXXX.jp. 60 IN A 123.123.12.12
XXXXXX.jp. 86400 IN SOA 01.dnsv.jp. hostmaster.dnsv.jp. 1618993752 3600 900 604800 300
方法2:nslookupでMXレコードを確認
$ nslookup
$ server 10.x.x.xxx
$ set q=MX
$ myhost.com
方法3:MX レコード を確認してくれるサービス
http://mxtoolbox.com/
smtp、dns、mxの設定エラーがないので問題なく設定できたことが分かる。
[2] Postfix をインストール
CentOS 7 には Postfix がデフォルトでインストールされているはずなので下記のコマンドで確認
$ yum list installed | grep postfix
結果:
postfix.x86_64 2:2.10.1-7.el7 @base
コマンドで何も表示されなかった場合、 下記のコマンドで Postfix をインストール
$ yum install postfix
[3] Postfix の設定を変更
Postfix 設定の変更は、main.cfの変更(/etc/postfix/main.cf)
1. バックアップ取る
main.cf.org
2. ホスト名を設定
myhostname = mail.myhost.com
3. メールアドレスのアットマーク以降に現れるドメイン名を設定
mydomain = myhost.com
4. メールサーバーから送信されるメールで利用されるドメイン名を設定
myorigin = $mydomain
5. メールを受信するネットワークインターフェースを設定
inet_interfaces = all
6. 送られてきた(受信した)メールのうち、このサーバーで受け取るべきドメインを指定
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
7. メール格納形式をMaildir形式にする
home_mailbox = Maildir/
8. メールサーバーソフト名の隠蔽化
smtpd_banner = $myhostname ESMTP unknown
9. ipv6を無効にする
inet_protocols = ipv4
10. postfix再起動
$ systemctl reload postfix.service
10.自動起動状態設定
$ systemctl is-enabled postfix
[4] エイリアス設定
- バックアップ取る(/etc/postfix/aliases)
aliases.org
- aliases設定をする
/etc/aliases ファイルの末尾に下記を追加する
develop: [email protected],[email protected]
- /etc/aliasesファイルを変更したら、newaliasesコマンドを実行
/etc/aliases.db(エイリアスデータベース)を更新すると、Postfixは/etc/aliases.dbを参照して転送を行う。
設定が反映されると、[email protected]メールを送信した際に、[email protected],[email protected]に転送される
[5] ファイアウォール(firewalld)の設定を変更
- アウォール機能(firewalld)が有効確認
$systemctl status firewalld
コマンドの実行結果の Active の値が active (runnning) となっていれば、ファイアウォールが有効
2. ファイアウォールが外部に向けて開放しているサービス確認
$ firewall-cmd --list-services --zone=public --permanent
結果:ssh dhcpv6-client samba
3. 外部に対して SMTP のポートを開放
# firewall-cmd --add-service=smtp --zone=public --permanent
結果:success
4. ファイアウォールの設定をリロード
$ firewall-cmd --reload
結果:success
5. ファイアウォールが外部に向けて開放しているサービス確認
```
$ firewall-cmd --list-services --zone=public --permanent
結果:ssh dhcpv6-client samba smtp
smtpが追加されたので25番ポート解放
下記のコマンドでも確認可能
$ firewall-cmd --list-all
6. サービスが動いていることを確認
$systemctl list-unit-files | grep firewalld
結果: firewalld.service enabled
7. firewalldを再起動して反映
$ systemctl restart firewalld
8. Portチェックテスト【外部からのPort開放確認】
http://www.cman.jp/network/support/port.html
ホスト名とポートを入力しチェックすると下記の結果が表示される
ホスト:mail.myhost.com
ポート:25 にアクセスできました
```
結果から25番ポートが解放できたぽい
[6] メール送信/転送の動作確認
- 送信テスト
下記のコマンドで送信テスト
$ echo "test_root" | mail -s "test_root" [email protected]
Postfix のログファイル /var/log/maillog
$ tail -f /var/log/maillog
送信されてログも正しく出ているのを確認できた
2.転送テスト
[email protected]より「エイリアス設定」で設定した下記のメーリングリストアドレスに送信テスト
[email protected]
下記の転送アドレスに問題なく転送されていることを確認
[email protected],[email protected]
下記のログからも正しく転送されていることが確認できる
Postfix のログファイル /var/log/maillog
$tail -f /var/log/maillog
status=sent (250 2.0.0 OK...)
```
参考サイト:
https://weblabo.oscasierra.net/postfix-centos7-install-1/
http://centossrv.com/postfix.shtml
Author And Source
この問題について(PostfixでCentOS7に転送用メールサーバーを構築), 我々は、より多くの情報をここで見つけました https://qiita.com/kerry/items/89524fa9fed5d91d051c著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .