postfixリレーメールサーバ構築

ITインフラ

配送元サーバと中継サーバ共通

参照:https://www.rem-system.com/mail-postfix01/

パッケージの確認

yum list installed | grep postfix

 

デフォルトパラメータと違うものは表示

postconf -n

 

メールサーバのFQDNを指定

myhostname = mail.example.com

 

ドメイン名を設定

mydomain = example.com

 

postfixが待ち受けを行うプロトコル

inet_protocols = ipv4

 

宛先不明のバウンスメールを削除
これは中継サーバだけでいい。
送信は中継先に遅れている

参考:http://www.ice.is.kit.ac.jp/~umehara/misc/comp/20091218c.html

メールサーバー構築(Postfix+Dovecot) - CentOSで自宅サーバー構築
メールサーバー構築(Postfix+Dovecot)
CentOS 7 Postfix 2.10.1のメール再送設定 ← RootLinks Co., Ltd.
有限会社ルートリンクスはシステム構築から講習会まで行うトータルサポート会社です。Windows、Linuxからネットワーク機器まで広く対応できます。

 

バウンスメールの確認
https://open-groove.net/postfix/check-deferred-mail/
以下コマンドで確認できる

postqueue -p

 

配信専用のメールサーバー構築

メールを受け取るインターフェイス。

localhostlocalhost(自分自身)からのメールのみ受け取る設定

inet_interfaces = localhost

 

中継サーバを指定

relayhost = [192.168.56.21]

 

設定ファイルのチェック

postfix check

 

設定ファイルの変更の反映

systemctl restart postfix

 

 

中継メールサーバ

参考:https://plumpliver.com/postfix-relay-setting/

firewallが空いてない

SELinuxを無効化

 

メールを受け取るインターフェイス。

localhostlocalhost(自分自身)からのメールのみ受け取る設定リレーできない

inet_interfaces = localhost ←とりあえずallではリレーできる

 

mynetworks
転送を許可するNWアドレスを設定。
ここで設定されたIPアドレスからのメールはどのドメイン宛てのメールであっても無条件でリレーを許可します。
relay_domainsの設定がされていても無視してどのドメイン宛てのメールもリレーするので注意
mynetworksで指定されたNWからのメールを受信すると、宛先がmydestinationで指定されたもの以外の場合、DNSサーバを使用して宛先の名前解決を行い、自分自身以外のMTAへの転送を行う

mynetworks = 127.0.0.0/8, 192.168.56.0/24

 

relay_domains
mynetworksで設定されていない、自分の管理下にはないMTAから来たメールに対し、どのドメイン宛てのメールだけ許可するか。
安全: 空にすることによりよそ者からのメールを転送しない

relay_domains =

参考:http://www.postfix-jp.info/trans-2.3/jhtml/BASIC_CONFIGURATION_README.html#relay_from

 

メール配送の確認

telnetのインストール

yum -y install telnet

 

telnetコマンドでSMTP接続

telnet localhost 25
Trying ::1...
telnet: connect to address ::1: Connection refused
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 ホスト名.localdomain ESMTP Postfix

 

heloコマンドで応答

helo localhost
250 ホスト名.localdomain

 

送信元のメールアドレスを入力

mail from:test@mail.example.com
250 2.1.0 Ok

 

送信先

rcpt to:test@gmail.com
250 2.1.5 Ok

 

dataコマンドで本文を記入

data
354 End data with .
testmail
. ドットで終了

 

quitで切断

quit

 

ログを確認

less /var/log/maillog

status=sent (250..)
Queued mail for delivery
↑とあれば送られている

Gmailの迷惑メールに入っておりました。

※ログは送信元も中継サーバのどっちも記録される

 

サーバ間でリレーテスト

もう一台にファイアウォールと受信の設定をしてIPで送信してみる

 

メール配送経路の情報をtransportファイルで指定するため必要?
いらないのでは?

transport_maps = hash:/etc/postfix/transport

 

vi /etc/postfix/transport

 

example.com行きのメールは192.168.56.21に中継させる

example.com smtp:[192.168.56.21]

 

ハッシュ化
postmap hash:/etc/postfix/transport

 

 

以上、テム(@temlog_net)でした。

ITインフラサーバー
スポンサーリンク
テム

システムエンジニアをやっております。ネットワーク・サーバーのこと、使ってよかったサービス・買ってよかったモノなど幅広めで更新中。

テムをフォローする
テムをフォローする
TEMLOG -テムログ-

コメント

タイトルとURLをコピーしました