BLOGTIMES
2013/02/07

Scientific Linux の postfix 設定あれこれ

  scientificlinux  postfix 
このエントリーをはてなブックマークに追加

先日インストールしたサーバは IPv6 が必要ないので、下記のような感じで sysctl.conf を書き換えて IPv6 を無効化しました。

--- /etc/sysctl.conf.org 2013-02-01 16:12:39.129553876 +0900 +++ /etc/sysctl.conf 2013-02-01 16:12:39.129553876 +0900 @@ -3,8 +3,11 @@ # For binary values, 0 is disabled, 1 is enabled. See sysctl(8) and # sysctl.conf(5) for more details. +net.ipv6.conf.all.disable_ipv6 = 1 +net.ipv6.conf.default.disable_ipv6 = 1 + # Controls IP packet forwarding -net.ipv4.ip_forward = 0 +net.ipv4.ip_forward = 1 # Controls source route verification net.ipv4.conf.default.rp_filter = 1

下記のコマンドで sysctl.conf の内容を即座に反映できます。

# sysctl -p

これ自体は特に問題がなかったのですが、その後サーバからメールが届かない状態になってしまいました。
しばらく放っておいたのですが、さすがにちょっとまずいなと思ってログを眺めてみたら、こんなログが。。。。

Feb 7 10:49:36 examplehost postfix[10606]: fatal: parameter inet_interfaces: no local interface found for ::1

この ::1 をどこから見に行ってるのだろうと思ったら、hosts に該当の行をみつけたので、これをコメントアウト。

$ cat /etc/hosts

127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 #::1 localhost localhost.localdomain localhost6 localhost6.localdomain6

これで問題なくメールが飛んでくるようになりました。

ついでにリレーの設定も変更しておく

今回立てたサーバはメールサーバではないので、ついでにメールの処理も mail.example.com に任せる設定をしてしまいました。
CentOS 5 の時は下記のように sendmail.mc の SMART_HOST を設定していました。

$ diff -u /etc/mail/sendmail.mc{.org,}

--- /etc/mail/sendmail.mc.org 2006-11-28 23:59:20.000000000 +0900 +++ /etc/mail/sendmail.mc 2009-07-27 19:51:04.000000000 +0900 @@ -23,7 +23,7 @@ dnl # Uncomment and edit the following line if your outgoing mail needs to dnl # be sent out through an external mail server: dnl # -dnl define(`SMART_HOST', `smtp.your.provider')dnl +define(`SMART_HOST', `mail.example.com')dnl dnl # define(`confDEF_USER_ID', ``8:12'')dnl dnl define(`confAUTO_REBUILD')dnl

postfix では設定ファイルに relayhost を設定してやればいいようです。

$ diff -u /etc/postfix/main.cf{.org,}

--- /etc/postfix/main.cf.org 2011-06-03 06:44:43.000000000 +0900 +++ /etc/postfix/main.cf 2013-02-07 16:42:32.125270925 +0900 @@ -315,6 +315,7 @@ #relayhost = [mailserver.isp.tld] #relayhost = uucphost #relayhost = [an.ip.add.ress] +relayhost = [hoge.example.com] # REJECTING UNKNOWN RELAY USERS #

最後に設定を反映させるために postfix を再起動してやります。

# /etc/init.d/postfix

    トラックバックについて
    Trackback URL:
    お気軽にどうぞ。トラックバック前にポリシーをお読みください。[policy]
    このエントリへのTrackbackにはこのURLが必要です→https://blog.cles.jp/item/5574
    Trackbacks
    このエントリにトラックバックはありません
    Comments
    愛のあるツッコミをお気軽にどうぞ。[policy]
    古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
    コメントはありません
    Comments Form

    コメントは承認後の表示となります。
    OpenIDでログインすると、即時に公開されます。

    OpenID を使ってログインすることができます。

    Identity URL: Yahoo! JAPAN IDでログイン