fedora linux 上安裝 milter-greylist 的步驟

milter-greylist 是利用廣告信發信程式為了盡量快點發信,所以不會重送這個原理來運作的。當他不確定對是否是可信賴的郵件主機時,就請對方等一下再送,會自動重送的,就是可信賴的主機。我們裝起來測試後,果然好用。這個系統與MailScanner不相衝突,所以頗有安裝的價值。 

本來希望按照joshua提供的方法安裝 4.0 版的 milter-greylist,不過我們實在沒有時間一一追蹤新版本的更新,所以最後還是先用 yum search milter-greylist 找到直接 fedora 7 的 milter-greylist 套件。以下就紀錄如何安裝之:

變身成 root 

1.先安裝套件  yum install milter-greylist

2.修改控制檔 vi /etc/mail/greylist.conf

  a.信望愛有多台MX peer mail server,所以要改底下這段

  # MX peering
  peer 主機IP1
  peer 主機IP2

 b.改網路區段

 list "my network" addr { 127.0.0.1/8 10.0.0.0/8 192.0.2.0/24 }  

c.把 grey user 拿掉,照說明書是要利用這裡慢慢測試,不過這是小抄,已經都測試過,直接處理掉就是了

 list "grey users" rcpt {  \
        user1@example.com \
        user2@example.com \
        user3@example.com \
}

d.修改最底下

acl greylist list "grey users" delay 30m autowhite 3d
acl whitelist default

改成

acl greylist default  delay 5m autowhite 3d
#acl whitelist default
意思就是所有的信件都當成 greylist ,要對方延遲五分鐘再送,如果對方真的聽話,就將他放入白名單三天

 3.設定開機自動啟動,順便測試看看,我們的伺服器是跑 runlevel 3

 /sbin/chkconfig –level 3 milter-greylist on

/etc/init.d/milter-greylist start

4.修改 sendmail.mc 以修改 sendmail.cf (請注意,你的sendmail.cf必須是由 sendmail.mc產生的,不然就慘了)

  cd /etc/mail

   在  define(`confDEF_USER_ID’,“8:12”)dnl之前插入

  INPUT_MAIL_FILTER(`greylist’, `S=local:/var/run/milter-greylist/milter-greylist.sock’)
define(`confMILTER_MACROS_CONNECT’, `j, {if_addr}’)
define(`confMILTER_MACROS_HELO’, `{verify}, {cert_subject}’)
define(`confMILTER_MACROS_ENVFROM’, `i, {auth_authen}’)
define(`confMILTER_MACROS_ENVRCPT’, `{greylist}’)

然後 m4 sendmail.mc > sendmail.cf 

5.重新跑 sendmail

 以信望愛站來說是  /etc/init.d/MailScanner restart

一般可能是 /etc/init.d/sendmail restart 

6.檢驗成果

    當然,收發信件必須先正常,然後可以去  /var/lib/milter-greylist/db 檢查 greylist.db 這個檔案,就可以看到灰名單是否正常運作。

分類: 技術小抄。這篇內容的永久連結

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

這個網站採用 Akismet 服務減少垃圾留言。進一步瞭解 Akismet 如何處理網站訪客的留言資料