Database JUNKY

MySQL,MariaDBを中心としたブログです

postfixを利用したrelay制御の方法(メールサーバの一極集中設定)

前提として、もうすでにここのサイトは、メールサーバが立っているわけなのですが、ここの場合、当初は、サーバが一台しか なかったので、webサーバとメールサーバとデータベースサーバが強制している状態だったわけです。

つい最近、webサーバとメールサーバとdbサーバはそれぞれ違う、サーバに分けたらあら大変、webサーバから送られるはずの メールが送られなくなってしまった。(当たり前)

メールサーバの知識はまったくのゼロなので、試行錯誤でやっとリレーが行われるようになったぼく記録です。 なので、参考になりませんが僕の参考にはなるので掲載しました。(いいのかそれで

  • 現状の確認 25番ポートがlisttenしている場合は、sendmailがすでにインストールされているものと思われるので 停止する。 [shell]

    netstat -ant | grep 25

    tcp        0      0 127.0.0.1:25                0.0.0.0:*                   LISTEN

/etc/init.d/sendmail stop

[/shell]

  • postfixのインストール [shell]

    yum -y install postfix

    [/shell] デフォルトのmtaの変更 [shell]

    alternatives --config mta

2 プログラムがあり 'mta' を提供します。

選択       コマンド

*+ 1           /usr/sbin/sendmail.sendmail 2           /usr/sbin/sendmail.postfix

Enter を押して現在の選択 [+] を保持するか、選択番号を入力します:2 [/shell]

*設定ファイル(main.cf)の編集

*バックアップ [shell]

cp main.cf main.cf.org

[/shell]

  • 編集(変更部分のみ記載) [shell]

    diff main.cf main.cf.org

    70c70 < myhostname = s-quad.com


> #myhostname = virtual.domain.tld

77c77

< mydomain = s-quad.com

> #mydomain = domain.tld

110c110

< inet_interfaces = all

> inet_interfaces = localhost

154c154,155

< mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain

> # > mydestination = $myhostname, localhost.$mydomain, localhost

254c255

< mynetworks = 192.168.101.0/24, 127.0.0.0/8

> #mynetworks = 168.100.189.0/28, 127.0.0.0/8

307c308

< relayhost = [sqmail01.squad.local]

> #relayhost = [an.ip.add.ress]

[/shell]

結果うまくメールはリレーされて、メールは送られるようになったのですが、一番ひっかかったのがmyhostnameの部分です 通常のメールサーバの構築ですと、ここ、ローカルのホスト名を記述するか、もしくは何もかかないかだと思ったので、 とりあえず何も指定しないでいたのですが、それで送信した場合、fromのドメインがローカルのドメイン名のままリレー しようとして、配信する本体側でrejectされてしまったのでここを編集したところ改善したのであります。

あっているかあっていないかいまいちわかっていないですが、間違いありましたらどんどんご指摘を。