Postfix 的 Relay Control

Postfix 的 Relay 控制,是在 /etc/postfix/main.cf 裡面做設定,主要有四個部份:

  1. inet_interfaces
  2. mynetworks_style
  3. mynetworks
  4. relay_domains

inet_interfaces:

預設值是all,如果你的機器有多張網路卡,但又不想要全部都開放 relay,就可以指定只開放給某張網路卡。

mynetworks_style:

有三種型態:classsubnethost,預設值是 subnet。

mynetworks:

這可以設定成檔案的方式或是直接以 IP/netmask 來做設定。例如:

mynetworks=192.168.1.0/24, 127.0.0.0/8

而如果要用檔案方式:

mynetworks = 127.0.0.0/8, hash:/etc/postfix/access

記得 postmap 一下這個 access 檔。

注意:

  1. 如果沒有設定 mynetworks 的話,記得把 mynetworks_style 改成 host,不然同一個子網域的 IP 都可以透過你的機器 relay 信件(當然如果所有子網域的使用者你都認識的話倒還 ok)
  2. 如果有設定 mynetworks_style 以及 mynetwork 時,mynetworks 的設定會取代掉 mynetworks_style。

relay_domains:

可以一次指定一個 domain 來開放 relay。例如:

relay_domains = eddie.com.tw

這樣的設定是代表所有由 eddie.com.tw 這個 domain 來的信件都會被當做可信任的,postfix 會幫忙 relay。但要注意的是,由「任何地方」來的信件,並且要寄往 eddie.com.tw 網域的信件,postfix 也會幫忙 Relay。

詳細設定在 /etc/postfix/main.cf 裡有說明。

Hinet 廣告信跳板測試: http://lcss.hinet.net/antispam/or_check.pl