postfix郵件服務器的關鍵安全策略

郵件系統是Linux網絡應用的重要組成,一個完整的郵件系統包括三個部分:底層操做系統(Linux Operation),郵件傳送代理(Mail Transport Agent,MTA),郵件分
html

發代理(Mail Delivery Agent,MDA),郵件用戶代理(Mail User Agent,MUA)。node

Postfix是一個很是優秀的MTA,她素以高效、安全的特色而著稱。Postfix是做者在UNIX上所見過的MTA中在反垃圾郵件(Anti-Spam或Anti-UCE)方面作得最好的一個,甚至有不少公司在Postfix代碼的基礎上進行二次開發而推出反垃圾郵件網關產品。MTA的反垃圾郵件功能,實際上就是在MTA處理過程當中對會話進行過濾。這個過濾不但過濾了發往自身的垃圾郵件,並且還防止了自身被惡意利用發送垃圾郵件。Postfix實現了目前全部主要的MTA過濾技術。postfix是Wietse Venema在IBM的GPL協議之下開發的MTA(郵件傳輸代理)軟件。和Sendmail相比Postfix更快、更容易管理、更靈活、更安全,同時還與sendmail保持足夠的兼容性。Sendmail相比Postfix對比見表1.linux

表1 Sendmail與Postfix的對比算法

MTA
成熟性
安全性
特點
性能
Sendmail兼容性
模塊化設計
Postfix
支持
Sendmail

垃圾郵件(SPAM) 也稱做UCE (Unsolicited Commercial Email,未經許可的商業電子郵件) 或UBE (Unsolicited Bulk Email,未經許可的大量電子郵件) 。中國互聯網協會對垃圾郵件給出了一個正式的定義,只要是符合下述四條之一的電子郵件均可被稱爲垃圾郵件:shell

(1)收件人事先沒有提出要求或贊成接收的廣告、電子刊物、各類形式的宣傳品等宣傳性的電子郵件。數據庫

(2)收件人沒法拒收的電子郵件。瀏覽器

(3)隱藏發件人身份、地址、標題等信息的電子郵件;。sass

(4)含有虛假的信息源、發件人、路由等信息的電子郵件。 
垃圾電子郵件成爲了人們最頭疼的問題之一。在Windows操做系統中也許您已經嘗夠了垃圾郵件給您帶來的苦頭,不要覺得在Linux操做系統平臺中就能避免垃圾電子郵件給咱們帶來的騷擾,反擊和過濾垃圾電子安全

郵件是一件很重要的工做。下面是一些在Linux中普遍使用的防垃圾郵件技術。服務器

(1)SMTP用戶認證

目前常見並十分有效的方法是,在郵件傳送代理(Mail Transport Agent,MTA)上對來自本地網絡之外的互聯網的發信用戶進行SMTP認證,僅容許經過認證的用戶進行遠程轉發。這樣既可以有效避免郵件傳送代理服務器爲垃圾郵件發送者所利用,又爲出差在外或在家工做的員工提供了便利。若是不採起SMTP認證,則在不犧牲安全的前提下,設立面向互聯網的Web郵件網關也是可行的。此外,若是SMTP服務和POP3服務集成在同一服務器上,在用戶試圖發信以前對其進行POP3訪問驗證(POP before SMTP)就是一種更加安全的方法,但在應用的時候要考慮到當前支持這種認證方式的郵件客戶端程序還很少。

(2)逆向名字解析

不管哪種認證,其目的都是避免郵件傳送代理服務器被垃圾郵件發送者所利用,但對於發送到本地的垃圾郵件仍然迫不得已。要解決這個問題,最簡單有效的方法是對發送者的IP地址進行逆向名字解析。經過DNS查詢來判斷髮送者的IP與其聲稱的名字是否一致,例如,其聲稱的名字爲mx.hotmail.com,而其鏈接地址爲20.200.200.200,與其DNS記錄不符,則予以拒收。這種方法能夠有效過濾掉來自動態IP的垃圾郵件,對於某些使用動態域名的發送者,也能夠根據實際狀況進行屏蔽。可是上面這種方法對於藉助Open Relay的垃圾郵件依然無效。對此,更進一步的技術是假設合法的用戶只使用本域具備合法互聯網名稱的郵件傳送代理服務器發送電子郵件。例如,若發件人的郵件地址爲someone@yahoo.com,則其使用的郵件傳送代理服務器的Internet名字應具備yahoo.com 的後綴。這種限制並不符合SMTP協議,但在多數狀況下是切實有效的。須要指出的是,逆向名字解析須要進行大量的DNS查詢。

(3)實時黑名單過濾

以上介紹的防範措施對使用自身合法域名的垃圾郵件仍然無效。對此比較有效的方法就是使用黑名單服務了。黑名單服務是基於用戶投訴和採樣積累而創建的、由域名或IP組成的數據庫,最著名的是RBL、DCC和Razor等,這些數據庫保存了頻繁發送垃圾郵件的主機名字或IP地址,供MTA進行實時查詢以決定是否拒收相應的郵件。可是,目前各類黑名單數據庫難以保證其正確性和及時性。例如,北美的RBL和DCC包含了我國大量的主機名字和IP地址,其中有些是早期的Open Relay形成的,有些則是因爲誤報形成的。但這些遲遲得不到糾正,在必定程度上阻礙了我國與北美地區的郵件聯繫,也妨礙了我國的用戶使用這些黑名單服務。其中使用BRL認證過程見圖1.

圖1 使用BRL過濾垃圾郵件的過程

(4)內容過濾

即便使用了前面諸多環節中的技術,仍然會有至關一部分垃圾郵件漏網。對此狀況,目前最有效的方法是基於郵件標題或正文的內容過濾。其中比較簡單的方法是,結合內容掃描引擎,根據垃圾郵件的經常使用標題語、垃圾郵件受益者的姓名、電話號碼、Web地址等信息進行過濾。更加複雜但同時更具智能性的方法是,基於貝葉斯機率理論的統計方法所進行的內容過濾,該算法最先由Paul Graham提出(http://www.paulgraham.com/spam.html),並使用他本身設計的Arc語言實現。這種方法的理論基礎是經過對大量垃圾郵件中常見關鍵詞進行分析後得出其分佈的統計模型,並由此推算目標郵件是垃圾郵件的可能性。這種方法具備必定的自適應、自學習能力,目前已經獲得了普遍的應用。最有名的垃圾郵件內容過濾是Spamassassin,它使用Perl語言實現,集成了以上兩種過濾方法,能夠與當前各類主流的MTA集成使用。內容過濾是以上全部各類方法中耗費計算資源最多的,在郵件流量較大的場合,須要配合高性能服務器使用。 下面以RHEL 4.0爲例,介紹上面幾種技術應對安全隱患。
安裝postfix

一、查詢Sendmail是否安裝:

#rpm -qa |grep sendmail

二、強行卸載Sendmail

# rpm -e sen

dmail sendmail-cf sendmail-doc –nodeps

三、用如下命令殺死運行中的sendmail進程:

# kill all sendmail

四、下載安裝Posfix

#wget ftp://ftp.midvalleyhosting.com/pub/postfix/official/postfix-2.1.4.t ar.gz /tmp

#tar -vxf postfix-2.1.4.tar.gz

#cd postfix-2.1.4

5.編譯源代碼包

# make

6.創建一個新用戶「postfix」,該用戶必須具備惟一的用戶ID號和組ID號,同時應該讓該用戶不能登陸到系統,也即不爲該用戶指定可執行的登陸外殼程序和可用的用戶宿主目錄。咱們能夠先用adduser postfix 添加用戶再編輯/etc/passwd文件中的相關條目以下所示:

# useradd postfix

# postfix:*:12345:12345:postfix:/no/where:/no/shell

#groupadd postdrop

7.肯定/etc/aliases文件中包含以下的條目:

# postfix: root

8. 以root用戶登陸,在/tmp/ postfix目錄下執行命令:

# ./INSTALL.sh

9.啓動postfix

# postfix start

postfix的配置文件位於/etc/postfix下,這四個文件就是postfix最基本的配置文件,它們的區別在於:mail.cf:是postfix主要的配置文件。Install.cf:包含安裝過程當中安裝程序產生的postfix初始化設置。master.cf:是postfix的master進程的配置文件,該文件中的每一行都是用來配置postfix的組件進程的運行方式。postfix-script:包裝了一些postfix命令,以便咱們在linux環境中安全地執行這些postfix命令。

十、使用postfix自己規則拒收垃圾郵件:

一、 使用頭信息過濾郵件:

一般咱們可使用例如To、From、Subject等這樣標準的郵件頭來拒收垃圾郵件。在mail.cf中加入一行:header_checks = regexp:/etc/postfix/header_checks,它告訴postfix讀取名爲/etc/postfix/reject-headers的文件, 由於缺省地,postfix不進行信頭過濾。

格式是:regexp REJECT ;其中regexp是常規表達式,下面是一個標準的/etc/postfix/reject-headers文件其中通常如下包括內容:

/^To You @xoom\.com $/ REJECT

/^From mailer-daemon @myclient.com $ / REJECT

/^Subject: Make menoey fast / REJECT
以上三行分別說明:

一、拒收郵件頭中包括字符串:You @xoom\.com 的郵件。

二、拒收來自mailer-daemon @myclient.com的郵件。

三、拒

收郵件主題:包括Make menoey fast內容的郵件。

二、 經過阻止IP地址或主機名方式訪問郵件服務器來拒收郵件:

(1) 在main.cf配置文件中使用如下行定義網絡地址「

# mynetwork=192.168.1.0/24

表示除非客戶端的ip地址符合$mynetworks參數定義的範圍則接受該客戶端的鏈接請求,才轉發該郵件。

(2) 添加一行拒絕本地網絡之外的主機訪問本地郵件服務器:

smtpd_client_restrictions = permit_mynetworks, reject_unknown_client

(3)在postfix中添加RBL功能

RBL(Realtime Blackhole List)是實時黑名單。國外有一些機構提供RBL服務,它們把收集到的專發垃圾郵件的IP地址加入他們的黑名單,咱們只要在postfix中加入RBL認證功能,就會使咱們的郵件服務器在每次收信時都自動到RBL服務器上去查實,若是信件來源於黑名單,則postfix會拒收郵件,從而少受垃圾郵件之苦。一般在mail.cf加入

map_rb1_domains=mail-abuse.org

smtp_client_restrictions=reject_map1_rb1

其中第一行設置須要聯繫獲得的RBL列表的全部主機,接着設置須要進行應用的限制。而後存盤,重新啓動postfix服務器。

國外比較有名的RBL是http//www.ordb.org,他們的RBL可無償使用,去年國內的http://anti-spam.org.cn也提供相似的服務,但它必須先註冊才能使用免費。

另外垃圾郵件的防範必須掌握好尺度,postfix自己提供了header_check、body_check、access、classes等方式來拒絕郵件,能夠參考以下地址的樣例,結合本身的狀況進行修改也能阻止一部分垃圾郵件: 
http://www.securitysage.com/guides/postfix_uce_header.html 
http://www.securitysage.com/guides/postfix_uce_body.html 
http://www.securitysage.com/guides/postfix_uce_access.html 
http://www.securitysage.com/guides/postfix_uce_class.html 
不過以上配置文件須要管理員根據本身狀況手工進行修改,若是直接採用的話,那麼國內不少郵件你將收不到。

2、安裝IMSS

趨勢科技的IMSS(InterScan Messaging Security Suite)版整合了垃圾郵件防治服務SPS(Spam Prevention Solution)2.0版。通常來講,過濾服務器上的垃圾郵件主要採起以下兩種方法:一是根據設置的規則直接拒收垃圾郵件;二是將郵件接收下來後再實施過濾。相比來看,前一種方法具備更高的效率,對郵件直接拒收,既節省網絡帶寬,又可減少服務器的性能開銷。可是,這樣作經常容易「殃及無辜」,使郵件用戶丟失信件。後一種方法儘管效率不高,卻可能減小出錯的頻率。若是服務器首先對接收下來的郵件進行有效分析,而後再交由用戶進行選擇,那麼用戶就不會爲E-mail的無端丟失而煩惱。IMSS屬於後者。
IMSS主要功能:

1. 利用數據庫對比實現垃圾郵件過濾 :提供被動式的垃圾郵件攔阻方式,利用創建垃圾郵件的黑名單數據庫,根據來源的IP地址、網域,寄件人的電子郵件地址或是內容、標頭所含的關

鍵詞等作爲數據庫的基礎。再將寄達的電子郵件與這已知的垃圾郵件數據庫比對,藉以判別是否爲垃圾郵件而後再來作攔阻的動做

2. 智能型判斷過濾垃圾郵件 :提供啓發式(Heuristic)掃描引擎,實現主動式的智能攔阻方式,根據郵件的多項特徵,包括內容、標頭、格式等來判斷這封email會不會是封垃圾郵件,再來針對這封電子郵件作處理。能夠用來辨識和監測已識別及未識別的新型垃圾郵件。

3. 支持彈性設定垃圾郵件過濾器規則 :爲了規避誤判風險,當SPS檢測出垃圾郵件以後,還會依照確信程度的不一樣分做四種等級,再依據設定進行「只作標記」、「隔離郵件」及「直接刪除」操做。

4. 支持黑名單及白名單功能 :支持黑名單(惡意郵件地址)及白名單(可信郵件地址)功能 。能夠針對郵件來源網域,寄件者甚至是電子郵件自己的關鍵詞來作特別處理的動做。這項功能能夠實現針對某些網域或是寄件者的信件設定規則,不只要嚴加看管,必要狀況下能夠直接列入拒絕往來列表。

5. 實現與IMSS郵件病毒過濾網關集成: 經過產品的深度集成,能夠實現多種判別條件的組合,可以更準確、更高效地進行網關級的郵件過濾,更完善地保護企業內部網絡資源。

6. 多平臺支持(Windows 2000/200三、Linux、Unix)。

硬件配置:CPU:Intel Pentium III processor 1 GHz 以上處理器,Memory:1 GB RAM,Disk Space:最小 2 GB 硬盤空間.交換空間2GB。

1. 修改/etc/postfix/main.cf中以下參數,更改成:

myhostname = trendmicro.com.cn

mydomain = trendmicro.com.cn

myorigin = trendmicro.com.cn

inet_interfaces=all

mydestination = trendmicro.com.cn

local_recipient_maps =

//黑色域名部分請填寫對應的domain name.

2. 在 /var/spool/postfix目錄下新建etc目錄,並運行:

# cp /etc/resolv.conf /var/spool/postfix/etc/

三、下載安裝IMSS 5.5

下載以前須要到軟件官方網站,註冊而且獲得一個AC—CODE,您須要提供以上激活碼以獲得病毒碼及其餘安全補丁的下載.下載連接:http://www.trendmicro.com/ftp/products/interscan/imss55linux1064.tar.gz

將下載文件拷貝到一個臨時目錄/tmp中。

# tar vxf imss55linux1064.tar.gz

#make;make install

#./isinst

系統提供了一個交換式的命令行界面,安裝中請選擇支持postfix,並根據實際狀況肯定是否安裝集中管理平臺(TMCM)。安裝結束系統提示能夠打開Web管理的IP地址和端口號:見圖2。


圖2 IMSS 5.5 安裝完成
四、命令行下的參數配置:

一、 一、/etc/postfix/main.cf文件末尾添加以下內容:

default_process_limit=200

imss_timeout=10m

imss_connect_timeout=1s

content_filter = imss:localhost:10025

imss_destination_recipient_limit=200

imss_destination_concurrency_limit=20

二、在/etc/postfix/master.cf文件末尾添加如下內容:

#IMSS: content filter smtp transport "imss" for IMSS

imss unix - - n - - smtp

-o disable_dns_lookups=yes

-o smtp_connect_timeout=$imss_connect_timeout

-o smtp_data_done_timeout=$imss_timeout

#IMSS: content filter loop back smtpd

localhost:10026 inet n - n - 20 smtpd

-o content_filter=

-o smtpd_timeout=$imss_timeout

-o local_recipient_maps=

-o myhostname=localhost.$mydomain

3. Relay 控制

a. 容許Relay的Domain設置:

編輯/etc/postfix/main.cf文件,在以下位置添加容許的任意Relay的Domain,如:

relay_domains = 263.net

b. 容許接受的Domain設置:

編輯/etc/postfix/main.cf文件,在以下位置添加容許接受的Domain

mydestination = trendmicro.com.cn

c. 不受Relay限制的地址設置

編輯/etc/postfix/main.cf文件,在以下位置添加容許接受的Domain

mynetworks = 10.11.240.0/24, 127.0.0.1

說明:所謂Relay就是指別人能用這臺SMTP郵件服務器,給任何人發信,這樣別有用心的垃圾發送者可使用筆者單位的這臺郵件服務器大量發送垃圾郵件,而最後別人投訴的不是垃圾發送者,而是單位的服務器。

參數relay_domains %26amp; mydestination的主要區別在於:

Postfix會轉發目的地符合 $relay_domains及其子域的郵件;

Postfix會接受目的地符合 $mydestination的郵件,而且在沒有smart host的狀況下嘗試對這些域進行本地落地處理,於是,爲了能正常的接受這些郵件,必定要對齊設置smart host;IMSS UNIX的Relay 控制界面設置中的域,便是$mydestination參數值,於是,必定要在IMSS的Domain-Based Delivery中作相應Deliver設置。

五、從新啓動Postfix服務器:

#postfix start

從新讓postfix讀取更改後的配置只需運行「postfix reload」便可。

打開服務

器的8081端口:

# iptables -A FORWARD -i eth0 -p tcp --dport 8081 -j ACCEPT

iptables -A FORWARD -i eth0 -p udp --dport 8081 -j ACCEPT

六、啓用Web方式管理:

服務器重新啓動完畢,能夠進行Web方式管理,開Web瀏覽器中輸入:http://yourip:8081/IMSS.html或者http://yourhost:8445/IMSS.html 便可。第一次進入Web界面時系統提示輸入密碼,此時密碼是空的,能夠直接用鼠標點擊「Enter」鍵進入Web管理界面後,立刻設定管理員密碼。見圖3。

圖-3 首次登錄界面

點擊「Policy Manager」選項,下面就能夠制定本身的郵件服務器郵件管理策略,見圖4。

圖-4 基於Web方式的IMSS 5.5的郵件管理策略界面
5 、軟件升級

能夠採起兩種方法Web方式和命令行,這裏筆者喜歡在命令行下操做:

下載升級布丁,連接:http://www.trendmicro.com/ftp/products/

patches/isem522-imss55-linux-patch1.tar.gz

#mv isem522-imss55-linux-patch1.tar.gz /tmp

#cd /tmp

#gunzip isem522-imss55-linux-patch1.tar.gz

#./patchinstall install

軟件升級過程當中IMSS5.5服務將暫時停止,升級後系統會自動啓動IMSS 5.5服務。見圖-5。

圖5 升級IMSS數據庫

3、使用專用工具防止垃圾郵件

還能夠利用其餘的專用工具來防止垃圾郵件,比較著名的有由Matt Sergeant、Craig Hughes和Justin Mason於發佈的SpamAssassin(SA)。目前最新版本是3.0.2,它是較爲流行的反垃圾郵件軟件,據SpamAssassin供應商 Deersoft的統計,目前大約有3萬臺Unix服務器上使用了SpamAssassin。SpamAssassin利用Perl語言來對郵件內容進行規則匹配,從而達到判斷過濾垃圾郵件的目的。它的判斷方式是基於評分的方式,也就是說若是這封郵件符合某條規則,則給與必定分值;當累計的分值超過了必定限度時,則斷定該郵件爲垃圾郵件。對Sendmail、Qmail、Postfix和Exim等各類郵件平臺都適用。當它被最終用戶或系統管理員調用時,它能夠方便地與大多數流行的郵件處理系統進行接口互連。SpamAssassin在對一封信件應用了各項規則以後,生成一個分值來表示其爲垃圾郵件的可能性。它能夠設置上百條規則,包括對郵件頭的處理、對郵件內容的處理及對郵件結構的處理等。每條規則都對應一個分值(可正、可負),每封信件的分值就是所匹配規則的分值之和。若是分值爲負,表示這封信件是正常的;相反,若是分值爲正,則表示信件有問題。若是超過了某個默認的分值,過濾器就會標識其可能爲垃圾郵件,而後交由用戶作出最終抉擇。SpamAssassin的安裝過程比較簡單。啓動SpamAssassin服務器:

# service spamassassin start (啓動SpamAssassin服務器)

Starting spamd: [ 肯定 ]

配置過程:

SpamAssassin預設了許多默認規則,能夠在/usr/share/spamassassin下找到,用戶想添加本身的規則,能夠配置經過/etc/mail/spamassassin/local.cf文件實現。要在其中添加白名單(便可以確信不會發送垃圾郵件的發件人列表)。設置代碼以下:

whitelist_from_rcvd people@basic.com

whitelist_from_rcvd @ people.com

  以上兩條規則將people@basic.com 郵箱和@ people.com 整個域加入了白名單。下面還要把SpamAssassin與Sendmail(此處以Postfix爲例、Qmail略有不一樣)整合在一塊兒。最簡單的方法是使用procmail來調用SpamAssassin過濾器。procmail來調用SpamAssassin的過程見圖6。

圖6 procmail來調用SpamAssassin的過程
添加如下內容到/etc/procmailrc文件:

:0fw

| /usr/bin/spamassassin

:0

* X-Spam-Status: Yes

spam

若是但願SpamAssassin不檢查大郵件,能夠對其作出限制,添加一行:

:0fw * < 1000000 | /usr/bin/spamassassin

這段代碼表示把郵件檢查的大小限制在1000K字節之內。SpamAssassin還提供了一個專門的spamd後臺守護程序,能夠設置爲系統啓動時自動啓動它。在Mail-SpamAssassin-3.-0.2/spamd/下有一個redhat-rc-script.sh腳本,將此腳本放入Red Hat的啓動目錄/etc/rc.d/init.d/下便可。同時,還須要對/etc/procmailrc文件作以下修改:

:0fw

| /usr/bin/spamc -s 100000

這樣就能夠經過控制spamd進程來調整過濾器的運行狀態。配置完成後,能夠發郵件進行測試。若是看到在郵件頭出現與spam檢查相關的幾項內容,表示SpamAssassin已經開始發揮做用。

除了設置內部的規則以外,SpamAssassin也能夠訪問其它外部的垃圾郵件過濾規則集,這樣能夠進一步加強其適用性。Chinese_rules.cf是用於垃圾郵件過濾系統SpamAssassin的中文垃圾郵件過濾規則集。因爲之前沒有中文的過濾規則集,SpamAssassin對中文郵件過濾的準確性不高。CCERT反垃圾郵件研究小組推出了第一個基於SpamAssassin的中文垃圾郵件過濾規則集Chinese_rules.cf。該規則集每週更新一次。把Chinese_rules.cf複製到/usr/share/spamassassin配置文檔中的命令:

# wget -N -P /usr/share/spamassassin www.ccert.edu.cn/spam/sa/Chinese_rules.cf

自動更新:

CCERT每週更新一次規則集,更新使用CCERT反垃圾郵件服務在6個月內處理過的垃圾郵件爲樣本。常常更新Chinese_rules.cf會使過濾效果更好。

Linux有一個稱爲crond的守護程序,主要功能是週期性地檢查 /var/spool/cron目錄下的一組命令文件的內容,並在設定的時間執行這些文件中的命令。用戶能夠經過crontab 命令來創建、修改、刪除這些命令文件。例如用 crontab命令實現每週一08:35自動更新:

首先創建一個文件,文件名稱myproject(名稱本身設定):

#crontab -e

文件內容:

35 08 * * 1 wget -N -P /usr/share/spamassassin www.ccert.edu.cn/spam/sa/Chinese_rules.cf; /etc/init.d/init-script restart

用vi編輯後存盤退出。

(3)使用 crontab命令添加到任務列表中:

#crontab myproject

這樣Linux服務器會在每星期一的8點35分會自動下載Chinese_rules.cf更新規則。

SpamAssassin使用基於規則的垃圾郵件過濾技術,比分佈式黑名單運行得更快,由於分佈式黑名單須要查詢網絡服務器。對大多數用戶而言,它能捕捉幾乎全部的垃圾郵件,而不須要隔離合法郵件。實際上它還提供了無限的調整和定製選項。

4、其餘措施

1.隱藏郵件服務器IP地址

若是網絡中有專門發送郵件的中央郵件服務器,爲許多主機提供訪問,那麼必須隱藏郵件地址的主機名部分,(以postfix郵件服務器爲例)例如一條名爲:pc-jok.cao.com的主機上有一個jok用戶那麼它的郵件名稱是:jok@pc-jok.cao.com main.cf加入兩行:

masquerade_domain=$mydomian

masquerade_exceptions=root

第一行通知postfix郵件服務器對所在德 域容許地址化裝,經過$mydomian變量完成,這樣jok@pc-jok.cao.com變爲jok@cao.com,第二行將root用戶排除,即不對root用戶假裝。

2.防範DOS攻擊:

  DOS(拒絕服務攻擊)一段時間以來成爲許多單位郵件服務器的最大殺手。對於郵件服務器的拒絕服務攻擊原理很簡單,就是不斷地向郵件服務器發送大量的郵件,直到超過最大容量而崩潰爲止。拒絕服務攻擊有時並不是有針對性的黑客行爲,如今的病毒經常會利用自身的SMTP引擎,向感染電腦裏的存在的地址狂發大量郵件。若是中小企業認爲本身的公司小,不會成爲攻擊目標,這種想法已經不現實了。對於中小企業來講,要預防DOS攻擊比大型企業要容易,由於小型企業每每不會有太多的郵件來往,咱們能夠根據業務量的大小,限制每一個鏈接的郵件數,以及每封郵件的收件人數。這樣,用戶對於DOS攻擊就能夠作到儘早地發現並採起措施,而不會等到服務器崩潰的時候才發現被人實施了DOS攻擊。步驟以下:

2. 限制服務器使用的進程數目

能夠經過指定/etc/postfix/main.cf文件的下列參數來控制使用的併發進程總量:

default_process_limit = 50

這樣服務器被容許同時容許60個併發進程(例如smtp客戶端、smtp服務器端和本地分發)。若是但願增長同時接受1000條信息,能夠修改 /etc/postfix/ master.cf文件,使smtp服務的最大進程達到1000,以下所示:

#=============================================================

# service type private unpriv chroot wakeup maxproc command + args

# (yes) (yes) (yes) (never) (60)

# ===========================================

smtp inet n - n - 1000 smtpd

3.控制最大郵件尺寸

能夠修改/etc/postfix/main.cf以下參數控制郵件尺寸

message_size_limit = 1073741824

這樣服務器能夠處理最大郵件尺寸是1073741824字節 (10兆).

4. 控制同時發送一個遠程服務器的郵件數量

同時向遠程服務器發送太多SMTP鏈接是不合理的,也是危險的(可能會被認爲是
發送垃圾郵件)。一些大的ISP站點(AOL、 Yahoo!、 Hotmail)一般要求優
化等到許可才能使用發送併發鏈接。Postfix 也能經過下面參數設定一個站點的最
大併發鏈接數量:

default_destination_concurrency_limit = 20

這樣使到達單一站點的併發鏈接數量不能超過20個。

5.安裝防病毒軟件:

F-Prot Antivirus軟件包安裝和配置過程:軟件包格式: fp-linux-ws.rpm

軟件包的大小(KB):3970KB,下載地址:
http://files.f-prot.com/files/linux-x86/fp-linux-ws.rpm

安裝F-Prot Antivirus軟件包前,請先啓動SpamAssassin服務器:

Wget http://files.f-prot.com/files/linux-x86/fp-linux-ws.rpm

Wget -ivh fp-linux-ws.rpm

升級的F-Prot Antivirus病毒庫的操做:

# cd /usr/local/f-prot/tools/

# ./check-updates.pl (升級命令)

***************************************

* F-Prot Antivirus Updater *

***************************************

Nothing to be done...

總結:Postfix是目前比較流行的,擁有至關好的安全性和高效率的郵件系統。Postfix自身帶了不少反垃圾郵件的功能能夠阻止一部分垃圾郵件,可是面對日益癡狂的垃圾郵件仍是須要一些專業軟件的支持。

相關文章
相關標籤/搜索