postfix 作為 SMTP 轉信主機

    版本為 02:03, 27 Dec 2024

    到這個版本。

    返回到 版本存檔.

    查閱目前版本

    狀況說明

    有一台設備置於 DMZ 網路區,需要發系統通知的信件,但只能透過 SMTP 方式寄信,而且只提供兩個收件地址。

    目的:架設一台 postix MTA server + mail forward,使得系統警示郵件通知的收件地址不受限制。

    更多說明:

    • DMZ 區有一台 Domino SMTP server 可供轉信至公司郵件地址
    • DMZ 區沒有 DNS Server,也無法存取 LAN 的 DNS Server
    • postfix 設定上層 relay 主機為 Domino SMTP 主機
    • postfix 主機新增一個帳號作為轉信用

    要發信的設備

    1. SMTP 主機:<postfix 主機 IP>
    2. SMTP Port:25
    3. 收件者郵件:qnap_alert@postfix.dmz

    NOTE:

    qnap_alert@postfix.dmz 這是一個無效的郵件位址

    qnap_alert 必須是 postfix 主機上作為轉信用的帳號

    postfix.dmz 發信的設備要能解析這名稱,對應到 postfix 主機的 IP 位址,通常可以設定在設備裡的 /etc/hosts

    xxx.xxx.xxx.xxx   postfix.dmz

    - 假設收件者郵件位址可以接收 IP 內容,就不需要這個設定

    - 如果這設備沒有 /etc/hosts 可用,或者這個檔案在某些情況下會被強制復原成未修改,可以使用外部的 DNS 來解析名稱

    postfix 主機

    移除 sendmail 套件以及安裝 postfix

    #> yum remove sendmail
    或者
    #> rpm -e sendmail sendmail-cf 
    
    #> yum install postfix
    

    編輯 /etc/postfix/main.cf

    ...
    inet_interfaces = all
    ...
    
    mydestination = $myhostname, localhost.$mydomain, localhost, postfix.dmz #加上 postfix.dmz
    ...
    
    mynetworks = 172.17.1.0/24 # DMZ 的網段
    ...
    
    relayhost = [172.17.1.3] # Domino SMTP 主機
    ...
    

    新增一個轉信帳號

    #> useradd qnap_alert
    #> su - qnap_alert
    #> vi .forward
    
    #加上要轉信的郵件位址
    user1@my.com,user2@my.com 
    
    #> chmod 0644 .forward
    

    本機測試發信

    mail -s "Test Mail" user1@my.com
    
    Powered by MindTouch Core