Postfix 架設

  1. 安裝 postfix 套件
    [root@kvm8 ~]# yum install postfix ## 預設應已安裝
    

  2. postfix 主要設定檔在 /etc/postfix 目錄下
    1. access:存取控制,可以指定那些主機可以使用 Postfix。
    2. main.cf:Postfix 主要設定檔。
    3. master.cf:指定 Postfix 每個程序如何完成郵件傳遞。
    4. transport:對應 email addresses 到轉傳的主機。
    5. header_checks:過濾郵件標題,例如寄信者。
    6. body_checks:過濾郵件內容。
    7. /etc/aliases:設定用戶別名。
  3. 編輯設定檔 /etc/postfix/main.cf
    [root@mail1 ~]# vim /etc/postfix/main.cf 
    # 設定郵件伺服器主機名稱
    myhostname = mail.deyu.wang
    # 設定網域
    mydomain = deyu.wang
    # 指定郵件顯示網域
    myorigin = $mydomain
    # 設定可以連接郵件伺服器的網路或主機
    mynetworks = 192.168.122.0/24
    # 設定接受郵件的來源為所有
    inet_interfaces = all
    # 設定轉傳的郵件伺服器,若不設定郵件直接傳送至目的主機,可能無法送達。
    relayhost = 192.168.122.1
    # 設定別名對應檔及資料庫
    alias_maps = hash:/etc/aliases
    alias_database = hash:/etc/aliases
    # 設定郵件標頭及內容過濾規則
    header_checks = regexp:/etc/postfix/header_checks
    body_checks = regexp:/etc/postfix/body_checks
    

  4. 編輯郵件別名設定檔
    [root@mail1 ~]# vim /etc/aliases
    
    root: deyu1,deyu2
    ## 要傳送給 root 的郵件,轉寄給 deyu1 及 deyu2
    

  5. 更新郵件別名資料庫
    [root@kvm8 ~]# newaliases
    /etc/aliases: 77 aliases, longest 10 bytes, 775 bytes total
    

  6. 編輯郵件表頭過濾檔
    [root@mail1 ~]# vim /etc/postfix/header_checks 
    
    # 主旨包含 "廣告" 的郵件皆丟棄,並記錄為drop header deny
    /^Subject:.*廣告/   DISCARD  drop header deny
    # 來自 "123.abc.com" 的郵件皆丟棄,並記錄為drop header deny
    /^From:.*@123.abc.com/   DISCARD  drop header deny
    

  7. 編輯郵件內容過濾檔
    [root@mail1 ~]# vim /etc/postfix/body_checks 
    
    # 內容包含 "網址 http://123.abc.com" 的郵件皆丟棄,
    # 並記錄為 Commercial unavailable body
    /http:\/\/123\.abc\.com/  DISCARD Commercial unavailable body
    

  8. 啟動 postfix 服務
    [root@kvm8 ~]# /etc/init.d/postfix restart
    

  9. 設定開機啟動 postfix 服務
    [root@kvm8 ~]# chkconfig postfix on