IT貓撲網(wǎng):您身邊最放心的安全下載站! 最新更新|軟件分類|軟件專題|手機(jī)版|論壇轉(zhuǎn)貼|軟件發(fā)布

您當(dāng)前所在位置: 首頁(yè)操作系統(tǒng)LINUX → Linux操作系統(tǒng)下防垃圾郵件基本功能

Linux操作系統(tǒng)下防垃圾郵件基本功能

時(shí)間:2015-06-28 00:00:00 來源:IT貓撲網(wǎng) 作者:網(wǎng)管聯(lián)盟 我要評(píng)論(0)

垃圾電子郵件成為了人們最頭疼的問題之一。在Windows操作系統(tǒng)中也許您已經(jīng)嘗夠了垃圾郵件給您帶來的苦頭,不要以為在Linux操作系統(tǒng)平臺(tái)中就能避免垃圾電子郵件給我們帶來的騷擾,反擊和過濾垃圾電子郵件是一件很重要的工作。下面介紹一些在Lin_art_center>ux中廣泛使用的防垃圾郵件技術(shù)。

(1)SMTP用戶認(rèn)證

目前常見并十分有效的方法是,在郵件傳送代理(Mail Transport Agent,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)就是一種更加安全的方法,但在應(yīng)用的時(shí)候要考慮到當(dāng)前支持這種認(rèn)證方式的郵件客戶端程序還不多。

(2)逆向名字解析

無(wú)論哪一種認(rèn)證,其目的都是避免郵件傳送代理服務(wù)器被垃圾郵件發(fā)送者所利用,但對(duì)于發(fā)送到本地的垃圾郵件仍然無(wú)可奈何。要解決這個(gè)問題,最簡(jiǎn)單有效的方法是對(duì)發(fā)送者的IP地址進(jìn)行逆向名字解析。通過DNS查詢來判斷發(fā)送者的IP與其聲稱的名字是否一致,例如,其聲稱的名字為mx.hotmail.com,而其連接地址為20.200.200.200,與其DNS記錄不符,則予以拒收。這種方法可以有效過濾掉來自動(dòng)態(tài)IP的垃圾郵件,對(duì)于某些使用動(dòng)態(tài)域名的發(fā)送者,也可以根據(jù)實(shí)際情況進(jìn)行屏蔽。但是上面這種方法對(duì)于借助Open Relay的垃圾郵件依然無(wú)效。對(duì)此,更進(jìn)一步的技術(shù)是假設(shè)合法的用戶只使用本域具有合法互聯(lián)網(wǎng)名稱的郵件傳送代理服務(wù)器發(fā)送電子郵件。例如,若發(fā)件人的郵件地址為[email protected],則其使用的郵件傳送代理服務(wù)器的Internet名字應(yīng)具有yahoo.com 的后綴。這種限制并不符合SMTP協(xié)議,但在多數(shù)情況下是切實(shí)有效的。 需要指出的是,逆向名字解析需要進(jìn)行大量的DNS查詢。

(3)實(shí)時(shí)黑名單過濾

以上介紹的防范措施對(duì)使用自身合法域名的垃圾郵件仍然無(wú)效。對(duì)此比較有效的方法就是使用黑名單服務(wù)了。黑名單服務(wù)是基于用戶投訴和采樣積累而建立的、由域名或IP組成的數(shù)據(jù)庫(kù),最著名的是RBL、DCC和Razor等,這些數(shù)據(jù)庫(kù)保存了頻繁發(fā)送垃圾郵件的主機(jī)名字或IP地址,供MTA進(jìn)行實(shí)時(shí)查詢以決定是否拒收相應(yīng)的郵件。但是,目前各種黑名單數(shù)據(jù)庫(kù)難以保證其正確性和及時(shí)性。例如,北美的RBL和DCC包含了我國(guó)大量的主機(jī)名字和IP地址,其中有些是早期的Open Relay造成的,有些則是由于誤報(bào)造成的。但這些遲遲得不到糾正,在一定程度上阻礙了我國(guó)與北美地區(qū)的郵件聯(lián)系,也妨礙了我國(guó)的用戶使用這些黑名單服務(wù)。

(4)內(nèi)容過濾

即使使用了前面諸多環(huán)節(jié)中的技術(shù),仍然會(huì)有相當(dāng)一部分垃圾郵件漏網(wǎng)。對(duì)此情況,目前最有效的方法是基于郵件標(biāo)題或正文的內(nèi)容過濾。其中比較簡(jiǎn)單的方法是,結(jié)合內(nèi)容掃描引擎,根據(jù)垃圾郵件的常用標(biāo)題語(yǔ)、垃圾郵件受益者的姓名、電話號(hào)碼、Web地址等信息進(jìn)行過濾。更加復(fù)雜但同時(shí)更具智能性的方法是,基于貝葉斯概率理論的統(tǒng)計(jì)方法所進(jìn)行的內(nèi)容過濾,該算法最早由Paul Graham提出(http://www.paulgraham.com/spam.html),并使用他自己設(shè)計(jì)的Arc語(yǔ)言實(shí)現(xiàn)。這種方法的理論基礎(chǔ)是通過對(duì)大量垃圾郵件中常見關(guān)鍵詞進(jìn)行分析后得出其分布的統(tǒng)計(jì)模型,并由此推算目標(biāo)郵件是垃圾郵件的可能性。這種方法具有一定的自適應(yīng)、自學(xué)習(xí)能力,目前已經(jīng)得到了廣泛的應(yīng)用。最有名的垃圾郵件內(nèi)容過濾是Spamassassin,它使用Perl語(yǔ)言實(shí)現(xiàn),集成了以上兩種過濾方法,可以與當(dāng)前各種主流的MTA集成使用。內(nèi)容過濾是以上所有各種方法中耗費(fèi)計(jì)算資源最多的,在郵件流量較大的場(chǎng)合,需要配合高性能服務(wù)器使用。

Sendmail是Redhat Linux以及大多數(shù)類Unix操作系統(tǒng)的郵件傳送代理,因此它是目前配置最廣泛的郵件服務(wù)器。下面以Redhat Linux 9.0使用的Sendmail為例,介紹應(yīng)對(duì)垃圾郵件的幾種具體方法。

_art_center>

(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文件后還要使用命令使修改生效:makemap hash access.db < access。

(2)在Sendmail中添加RBL功能

RBL(Realtime Blackhole List)是實(shí)時(shí)黑名單。國(guó)外有一些機(jī)構(gòu)提供RBL服務(wù),常用的RBL服務(wù)器地址有relays.ordb.org、dnsbl.njabl.org、bl.spamcop.net、sbl.spamhaus.org、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)容:

FEATURE(`dnsbl',`relays.ordb.org',`″Email blocked using ORDB.org - see _addr}″">″')

最后執(zhí)行"m4 sendmail.mc>sendmail.cf"和"service sendmail restart"兩條命令,使有關(guān)Sendmail的修改生效。

(3)打開Sendmail的SMTP認(rèn)證功能

#p#副標(biāo)題#e#

1、服務(wù)器端設(shè)置

關(guān)掉了Relay功能,用戶就不能使用客戶端軟件發(fā)信,此時(shí)需要Sendmail配置,開放其SMTP認(rèn)證功能,再在客戶端如Outlook Express 、foxmail等當(dāng)中打開SMTP認(rèn)證,這樣就可以正常SMTP服務(wù)器了。在Red Hat Linux 9.0中配置SMTP認(rèn)證非常方便,首先用命令檢查有沒有安裝cyrus-sasl軟件包。

#rpm -qa|grep sasl

cyrus-sasl-2.1.10-4

cyrus-sasl-plain-2.1.10-4

cyrus-sasl-devel-2.1.10-4

cyrus-sasl-md5-2.1.10-4

如果沒有安裝的話,用命令"rpm -ivh cyrus-sasl*.rpm"安裝所有軟件包,接著打開/etc/mail/sendmail.mc文件,修改如下三行:

dnl TRUST_AUTH_MECH(`DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl

dnl define(`confAUTH_MECHANISMS',`DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl

DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1,Name=MTA')dn1

修改為:

TRUST_AUTH_MECH(`DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl

define(`confAUTH_MECHANISMS',`DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl

DAEMON_OPTIONS(`Port=smtp,Addr=192.168.1.200,Name=MTA')dn1

然后產(chǎn)生cf文件,并進(jìn)行測(cè)試:

#m4 sendmail.mc > sendmail.cf

#service sendmail restat

# sendmail d0.1 -bv root |grep SASL

NETUNIX NEWDB NIS PIPELINING SASL SCANF STARTTLS TCPWRAPPERS #修改成功標(biāo)志

下一步測(cè)試,以Telnet到TCP 25端口的方式:

#telnet localhost 25

ehlo localhost

注意有沒有以下的信息出現(xiàn).

250-xxxxxxxx

250-xxxxxxx

250-AUTH LOGIN CRAM-MD5 DIGEST-MD5

250-xxxxxx

Outlook Express 和Foxmail 使用LOGIN認(rèn)證,Netscape Mail使用PLAIN認(rèn)證。

2、客戶端設(shè)置

在Outlook Express主窗口,單擊"工具(T)"選單,在下拉選單中選中"賬號(hào)(A)"。在"Internet賬號(hào)"窗口中,選定某一郵件賬號(hào),單擊"屬性(P)"。在彈出的賬號(hào)"屬性"窗口中(見圖3),選擇"服務(wù)器"選項(xiàng)卡,選中"我的服務(wù)器要求身份驗(yàn)證(V)"。單擊旁邊的"設(shè)置(E)"按鈕,在"外發(fā)郵件服務(wù)器"窗口中選擇"使用與接收郵件服務(wù)器相同的設(shè)置(U)"。按"確定"后,設(shè)置便完成了。

(4)使用專用工具防止垃圾郵件

除了利用sendmail的自帶功能,還能夠利用其他的專用工具來防止垃圾郵件,比較著名的有由Matt Sergeant、Craig Hughes和Justin Mason于發(fā)布的SpamAssassin(SA)。目前最新版本是3.0.2,它是較為流行的反垃圾郵件軟件,據(jù)SpamAssassin供應(yīng)商 Deersoft的統(tǒng)計(jì),目前大約有3萬(wàn)臺(tái)Unix服務(wù)器上使用了SpamAssassin。SpamAssassin利用Perl語(yǔ)言來對(duì)郵件內(nèi)容進(jìn)行規(guī)則匹配,從而達(dá)到判斷過濾垃圾郵件的目的。它的判斷方式是基于評(píng)分的方式,也就是說如果這封郵件符合某條規(guī)則,則給與一定分值;當(dāng)累計(jì)的分值超過了一定限度時(shí),則判定該郵件為垃圾郵件。對(duì)Sendmail、Qmail、Postfix和Exim等各種郵件平臺(tái)都適用。當(dāng)它被最終用戶或系統(tǒng)管理員調(diào)用時(shí),它可以方便地與大多數(shù)流行的郵件處理系統(tǒng)進(jìn)行接口互連。SpamAssassin在對(duì)一封信件應(yīng)用了各項(xiàng)規(guī)則之后,生成一個(gè)分值來表示其為垃圾郵件的可能性。它可以設(shè)置上百條規(guī)則,包括對(duì)郵件頭的處理、對(duì)郵件內(nèi)容的處理及對(duì)郵件結(jié)構(gòu)的處理等。每條規(guī)則都對(duì)應(yīng)一個(gè)分值(可正、可負(fù)),每封信件的分值就是所匹配規(guī)則的分值之和。如果分值為負(fù),表示這封信件是正常的;相反,如果分值為正,則表示信件有問題。如果超過了某個(gè)默認(rèn)的分值,過濾器就會(huì)標(biāo)識(shí)其可能為垃圾郵件,然后交由用戶做出最終抉擇。SpamAssassin的安裝使用過程比較簡(jiǎn)單,在互聯(lián)網(wǎng)上有專業(yè)文章介紹,更加專業(yè)的敘述可以查看:O'Reilly出版的 SpamAssassin,書號(hào) ISBN : 0-596-00707-8,2004。這里就不贅述了。

關(guān)鍵詞標(biāo)簽:Linux,操作系統(tǒng),垃圾郵

相關(guān)閱讀

文章評(píng)論
發(fā)表評(píng)論

熱門文章 安裝紅帽子RedHat Linux9.0操作系統(tǒng)教程 安裝紅帽子RedHat Linux9.0操作系統(tǒng)教程 Tomcat9.0如何安裝_Tomcat9.0環(huán)境變量配置方法 Tomcat9.0如何安裝_Tomcat9.0環(huán)境變量配置方法 多種操作系統(tǒng)NTP客戶端配置 多種操作系統(tǒng)NTP客戶端配置 Linux操作系統(tǒng)修改IP Linux操作系統(tǒng)修改IP

相關(guān)下載

    人氣排行 Linux下獲取CPUID、硬盤序列號(hào)與MAC地址 dmidecode命令查看內(nèi)存型號(hào) linux tc實(shí)現(xiàn)ip流量限制 安裝紅帽子RedHat Linux9.0操作系統(tǒng)教程 linux下解壓rar文件 lcx.exe、nc.exe、sc.exe入侵中的使用方法 Ubuntu linux 關(guān)機(jī)、重啟、注銷 命令 查看linux服務(wù)器硬盤IO讀寫負(fù)載