郵件系統(tǒng)是Linux網(wǎng)絡(luò)應(yīng)用的重要組成部分。完整的郵件系統(tǒng)包括底層操作系統(tǒng)、郵件傳送代理MTA、郵件分發(fā)代理MDA和郵件用戶代理MUA。
目前來看,Linux郵件系統(tǒng)面臨的主要危險(xiǎn)是垃圾郵件、Linux病毒和DoS攻擊。本文將重點(diǎn)介紹Linux郵件服務(wù)器的防垃圾郵件策略。
垃圾郵件的防范
目前廣泛使用的防垃圾郵件技術(shù)有:
(1)SMTP用戶認(rèn)證:一種常見并十分有效的方法,在郵件傳送代理(MTA)上對(duì)來自本地網(wǎng)絡(luò)以外的互聯(lián)網(wǎng)的發(fā)信用戶進(jìn)行SMTP認(rèn)證,僅允許通過認(rèn)證的用戶進(jìn)行遠(yuǎn)程轉(zhuǎn)發(fā)。這樣既能夠有效避免郵件傳送代理服務(wù)器為垃圾郵件發(fā)送者所利用,又為出差在外或在家工作的員工提供了便利。
如果不采取SMTP認(rèn)證,在不犧牲安全的前提下,設(shè)立面向互聯(lián)網(wǎng)的Web郵件網(wǎng)關(guān)也是可行的。此外,如果SMTP服務(wù)和POP3服務(wù)集成在同一服務(wù)器上,在用戶試圖發(fā)信之前對(duì)其進(jìn)行POP3訪問驗(yàn)證(POP before SMTP)是一種更加安全的方法。
(2)關(guān)閉Open Relay:現(xiàn)在依然存在并非少數(shù)的開放Open Relay服務(wù)器,所以,關(guān)閉Open Relay功能對(duì)反垃圾郵件效果顯著。
(3)實(shí)時(shí)黑名單過濾:前面介紹的防范措施對(duì)使用自身合法域名的垃圾郵件無效,這時(shí)可以使用黑名單服務(wù)列表。針對(duì)每個(gè)進(jìn)入的郵件信息,MTA程序獲取遠(yuǎn)程服務(wù)器的地址,并且查詢遠(yuǎn)程互聯(lián)網(wǎng)服務(wù)器對(duì)該地址進(jìn)行認(rèn)證。如果該地址在垃圾郵件主機(jī)列表中,則MTA拒絕接受這些郵件信息。其中使用BRL認(rèn)證過程如圖1所示。
(4)內(nèi)容過濾:MTA、MUA、MDA過濾有自己的特點(diǎn),通常幾種方法同時(shí)使用。
◆ MTA過濾:大部分MTA提供某種過濾,因?yàn)樗鼈冊(cè)陔娮余]件的前端,通常更容易控制郵件的到達(dá)。
◆ MDA過濾:大多數(shù)MTA不對(duì)郵件內(nèi)容過濾,對(duì)信件內(nèi)容的過濾就由MDA來完成,許多復(fù)雜的過濾器都是使用MDA過濾器做的。
◆ MUA過濾:MDA位于郵件服務(wù)器上,而許多用戶希望從郵件界面管理過濾規(guī)則,因此需要MUA過濾。主流的MUA如Windows下的Outlook、Foxmail和Linux下的Evolution都帶有過濾功能。
◆ 專用工具:如SpamAssassin。
◆ 商業(yè)軟件:如趨勢(shì)科技IMSS 5.5(整合了垃圾郵件防治服務(wù)SPS)。
應(yīng)用實(shí)例
Sendmail是RedHat Linux以及大多數(shù)類Unix操作系統(tǒng)的郵件傳送代理,因此是目前配置最廣泛的郵件服務(wù)器。下面以RedHat Linux 9.0使用的Sendmail為例,介紹上面幾種技術(shù)應(yīng)對(duì)垃圾郵件的危害。
(1)關(guān)閉Sendmail的Relay功能
所謂Relay,就是指別人能用這臺(tái)SMTP郵件服務(wù)器給任何人發(fā)信,這樣別有用心的垃圾發(fā)送者就可以使用這臺(tái)郵件服務(wù)器大量發(fā)送垃圾郵件,而最后別人投訴的不是垃圾發(fā)送者,而是這臺(tái)服務(wù)器,因此必須關(guān)閉Relay。
其方法是:到Linux服務(wù)器的/etc/mail目錄編輯access文件,去掉“*relay”之類的設(shè)置,只留“localhost relay”和“127.0.0.1 relay”兩條即可。注意,修改access文件后還要使用如下命令使修改生效:
|
(2)在Sendmail中添加RBL功能
RBL(Realtime Blackhole List)是實(shí)時(shí)黑名單。常用的RBL服務(wù)器地址有relays.ordb.org、bl.spamcop.net、dun.dnsrbl.net及dnsbl.sorbs.net等。查詢和刪除RBL中的IP地址可以去http://openrbl.org和http://ordb.org。
RBL將收集到的專發(fā)垃圾郵件的IP地址加入他們的黑名單,只要在Sendmail中加入RBL認(rèn)證功能,就會(huì)使郵件服務(wù)器在每次收信時(shí)都自動(dòng)到RBL服務(wù)器上去查實(shí),如果信件來源于黑名單,則Sendmail會(huì)拒收郵件,從而使單位的用戶少受垃圾郵件之苦。
在Sendmail中添加RBL認(rèn)證,需要對(duì)Sendmail.mc添加以下內(nèi)容:
|
最后執(zhí)行“m4 Sendmail.mc> Sendmail.cf”和“service Sendmail restart”兩條命令,使有關(guān)Sendmail的修改生效。
(3)打開Sendmail的SMTP
◆ 服務(wù)器端設(shè)置
關(guān)掉了Relay功能,用戶就不能使用客戶端軟件發(fā)信,此時(shí)需要Sendmail配置,開放其SMTP認(rèn)證功能,再在客戶端如Outlook Express、Foxmail等當(dāng)中打開SMTP認(rèn)證,這樣就可以正常SMTP服務(wù)器了。在RedHat Linux 9.0中配置SMTP認(rèn)證非常方便,首先用命令檢查有沒有安裝cyrus-sasl軟件包。
|
如果沒有安裝的話,用命令“rpm -ivh cyrus-sasl*.rpm”安裝所有軟件包,接著打開/etc/mail/Sendmail.mc文件,將如下命令:
|
修改為:
|
然后產(chǎn)生cf文件,并進(jìn)行測(cè)試:
|
NETUNIX NEWDB NIS PIPELINING SASL SCANF STARTTLS TCPWRAPPERS #修改成功標(biāo)志
下一步測(cè)試,以Telnet到TCP 25 端口的方式:
|
注意有沒有以下的信息出現(xiàn):
|
Outlook Express和Foxmail使用LOGIN認(rèn)證,Netscape Mail使用PLAIN認(rèn)證。
◆ 客戶端設(shè)置
在Outlook Express主窗口,單擊“工具(T)”選單,在下拉選單中選中“賬號(hào)(A)”。在“Internet賬號(hào)”窗口中,選定某一郵件賬號(hào),單擊“屬性(P)”。在彈出的賬號(hào)“屬性”窗口中,選擇“服務(wù)器”選項(xiàng)卡,選中“我的服務(wù)器要求身份驗(yàn)證(V)”。單擊旁邊的“設(shè)置(E)”按鈕,在“外發(fā)郵件服務(wù)器”窗口中選擇“使用與接收郵件服務(wù)器相同的設(shè)置(U)”。按“確定”后,設(shè)置便完成了。
新聞熱點(diǎn)
疑難解答
網(wǎng)友關(guān)注