服務(wù)器安全維護(hù)
- 發(fā)布于:2023-02-11
- 共 191 人圍觀
站點(diǎn)安全應(yīng)該包括幾部分:物理安全、網(wǎng)絡(luò)安全、系統(tǒng)安全以及安全管理,下面從這幾方面予以闡述。
一. 物理安全
服務(wù)器運(yùn)行的物理安全環(huán)境是很重要的,很多人忽略了這點(diǎn)。物理環(huán)境主要是指服務(wù)器托管機(jī)房的設(shè)施狀況,包括通風(fēng)系統(tǒng)、電源系統(tǒng)、防雷防火系統(tǒng)以及機(jī)房的溫度、濕度條件等。這些因素會(huì)影響到服務(wù)器的壽命和所有數(shù)據(jù)的安全。我不想在這里討論這些因素,因?yàn)樵谶x擇IDC時(shí)你自己會(huì)作出決策。
在這里著重強(qiáng)調(diào)的是,有些機(jī)房提供專(zhuān)門(mén)的機(jī)柜存放服務(wù)器,而有些機(jī)房只提供機(jī)架。所謂機(jī)柜,就是類(lèi)似于家里的櫥柜那樣的鐵柜子,前后有門(mén),里面有放服務(wù)器的拖架和電源、風(fēng)扇等,服務(wù)器放進(jìn)去后即把門(mén)鎖上,只有機(jī)房的管理人員才有鑰匙打開(kāi)。而機(jī)架就是一個(gè)個(gè)鐵架子,開(kāi)放式的,服務(wù)器上架時(shí)只要把它插到拖架里去即可。這兩種環(huán)境對(duì)服務(wù)器的物理安全來(lái)說(shuō)有著很大差別,顯而易見(jiàn),放在機(jī)柜里的服務(wù)器要安全得多。
如果你的服務(wù)器放在開(kāi)放式機(jī)架上,那就意味著,任何人都可以接觸到這些服務(wù)器。別人如果能輕松接觸到你的硬件,還有什么安全性可言?以下是幾個(gè)不安全的事例:
很多Windows服務(wù)器采用終端服務(wù)進(jìn)行管理,在一個(gè)機(jī)架式的機(jī)房里,你可以隨便把顯示器接在哪臺(tái)服務(wù)器上。如果你碰巧遇到某臺(tái)機(jī)器的管理員或使用者正通過(guò)終端使用這臺(tái)機(jī)器,那么他的操作你可以一覽無(wú)余。甚至,你可以把鍵盤(pán)接上去,把他kill off,然后完全控制這臺(tái)機(jī)器。當(dāng)然,這種事情比較少見(jiàn),但不意味著不可發(fā)生。
另外,很多Unix系統(tǒng)的管理員在離開(kāi)機(jī)房時(shí),沒(méi)有把root或其他帳號(hào)的shell從鍵盤(pán)退出,這樣你只要把鍵盤(pán)和顯示器接上去,就完全可以獲取這個(gè)shell的權(quán)限。這可比遠(yuǎn)程攻擊獲取系統(tǒng)權(quán)限容易得太多。我有次在機(jī)房時(shí)想要一個(gè)unix shell臨時(shí)使用一下,于是我把顯示器在旁邊機(jī)架的幾臺(tái)服務(wù)器上接了一下,很快就發(fā)現(xiàn)一個(gè)沒(méi)有退出的root shell,我把鍵盤(pán)接上去,做完我自己的事后,幫他退出了這個(gè)shell。如果我是一個(gè)不安好心的人,我完全可以在他的服務(wù)器里不帶任何痕跡的安裝一個(gè)木馬(RootKit)。
某天我看到一個(gè)公司的維護(hù)人員在機(jī)房調(diào)試專(zhuān)線(xiàn)時(shí),懷疑是協(xié)議轉(zhuǎn)換儀有問(wèn)題,于是他毫不猶豫的把旁邊一個(gè)機(jī)架上的協(xié)議轉(zhuǎn)換儀拔下來(lái),接到他自己的專(zhuān)線(xiàn)上用于調(diào)試。被破壞的服務(wù)器數(shù)據(jù)傳輸會(huì)中斷幾分鐘,這對(duì)某些公司可能是致命的,而他們的服務(wù)器管理人員可能到死也查不出原因!
還有,用一張Linux光盤(pán)引導(dǎo)Linux系統(tǒng),你可以毫無(wú)障礙的重新獲取主機(jī)的root權(quán)限;你可以無(wú)意中碰動(dòng)別人的電源,等等,不在這里贅述。所有這些是要說(shuō)明一點(diǎn),放在開(kāi)放機(jī)架上的服務(wù)器是不安全的。如果你的服務(wù)器硬件可以讓其他人輕易接觸,那么不出事是你的幸運(yùn),出事了你也找不到原因或找不到責(zé)任人。
而放在密封式機(jī)柜里的服務(wù)器會(huì)安全很多,一般情況下,你的所有服務(wù)器放在一起(同一個(gè)機(jī)柜或者幾個(gè)機(jī)柜)是明智之舉,機(jī)柜里不要有其他公司的服務(wù)器。如果你的服務(wù)器只有有限的幾臺(tái),那么放在機(jī)柜里也會(huì)安全很多。因?yàn)椴皇侨魏稳硕伎梢源蜷_(kāi)機(jī)柜接觸到你的硬件,就算同一個(gè)機(jī)柜的其他公司的服務(wù)器的維護(hù)人員有這個(gè)機(jī)會(huì),但風(fēng)險(xiǎn)也要小得多。而且,就算出事了,你也可以追查到責(zé)任人。
有一次我們的服務(wù)器因?yàn)殡娫磾嗟簦袛鄮讉€(gè)小時(shí),我們根據(jù)系統(tǒng)日志很快判斷出服務(wù)器的down機(jī)情況,在追查責(zé)任時(shí),我首先想到是IDC機(jī)房的維護(hù)人員的責(zé)任,因?yàn)樵谖覀兡莻€(gè)機(jī)柜里沒(méi)有其他公司的服務(wù)器,別人不會(huì)接觸到那里面的電源。后來(lái)經(jīng)查實(shí),果然是該IDC的電工在弄電時(shí)不小心把我們的服務(wù)器電源斷掉,他們向我們出具了道歉聲明。而如果在一個(gè)開(kāi)放式機(jī)架的機(jī)房里,碰到這樣的情況你無(wú)從查起。
如果你的服務(wù)器只能放在開(kāi)放式機(jī)架的機(jī)房,那么你可以這樣做:1)將電源用膠帶綁定在插槽上,這樣避免別人無(wú)意中碰動(dòng)你的電源;2)安裝完系統(tǒng)后,重啟服務(wù)器,在重啟的過(guò)程中把鍵盤(pán)和鼠標(biāo)拔掉,這樣在系統(tǒng)啟動(dòng)后,普通的鍵盤(pán)和鼠標(biāo)接上去以后不會(huì)起作用(USB鼠標(biāo)鍵盤(pán)除外)3)跟機(jī)房值班人員搞好關(guān)系,不要得罪機(jī)房里其他公司的維護(hù)人員。這樣做后,你的服務(wù)器至少會(huì)安全一些。
二. 網(wǎng)絡(luò)安全
網(wǎng)絡(luò)安全是指你機(jī)房的服務(wù)器要有合理的安全拓?fù)浣Y(jié)構(gòu)。安全的網(wǎng)絡(luò)環(huán)境會(huì)讓你的系統(tǒng)管理任務(wù)輕松很多,否則你會(huì)時(shí)刻提心吊膽。例如,如果你的NFS服務(wù)器直接面對(duì)互聯(lián)網(wǎng),那么你的麻煩就來(lái)了。因此,在服務(wù)器的前面,至少要有網(wǎng)絡(luò)屏蔽設(shè)施,或稱(chēng)為防火墻。
從頭部署新的防火墻策略是一件復(fù)雜的事情,你要綜合考慮許多方面。一般來(lái)說(shuō),防火墻有兩種工作模式,稱(chēng)為路由模式和透明模式,在路由模式下,防火墻就象一個(gè)路由器,能進(jìn)行數(shù)據(jù)包的路由。不同的是,它能識(shí)別網(wǎng)絡(luò)第四層協(xié)議(即傳輸層)的信息,因此它能基于TCP/UDP端口來(lái)進(jìn)行過(guò)濾。在該模式下,防火墻本身要配備兩個(gè)或多個(gè)網(wǎng)絡(luò)地址,你的網(wǎng)絡(luò)結(jié)構(gòu)會(huì)被改變。在透明模式下,防火墻更象一個(gè)網(wǎng)橋,它不干涉網(wǎng)絡(luò)結(jié)構(gòu),從拓?fù)渲锌磥?lái),它似乎是不存在的(因此稱(chēng)為透明)。但是,透明模式的防火墻同樣具備數(shù)據(jù)包過(guò)濾的功能。透明模式的防火墻不具備IP地址。這兩種模式的防火墻都提供網(wǎng)絡(luò)訪(fǎng)問(wèn)控制功能,例如你可以在防火墻上設(shè)置,過(guò)濾掉來(lái)自因特網(wǎng)的對(duì)服務(wù)器的NFS端口的訪(fǎng)問(wèn)請(qǐng)求。
在網(wǎng)絡(luò)中使用哪種工作模式的防火墻取決于你的網(wǎng)絡(luò)環(huán)境。一般來(lái)說(shuō),如果你的服務(wù)器使用真實(shí)IP地址(該地址一般是IDC分配給你的),會(huì)選擇防火墻的透明模式。因?yàn)樵谠撃J较拢愕姆?wù)器看起來(lái)象直接面對(duì)互聯(lián)網(wǎng)一樣,所有對(duì)服務(wù)器的訪(fǎng)問(wèn)請(qǐng)求都直接到達(dá)服務(wù)器。當(dāng)然,在數(shù)據(jù)包到達(dá)服務(wù)器之前會(huì)經(jīng)過(guò)防火墻的檢測(cè),不符合規(guī)則的數(shù)據(jù)包會(huì)被丟棄掉(從服務(wù)器編程的角度看,它不會(huì)覺(jué)察到數(shù)據(jù)包實(shí)際已被處理過(guò))。
實(shí)際上為了安全起見(jiàn),很多服務(wù)器都采用私有IP地址(例如172.16.0.0/16和192.168.0.0/24都屬于私有IP地址),如果這些服務(wù)器不必對(duì)外提供服務(wù),那么就最安全不過(guò)了,如果要對(duì)外提供服務(wù),就有必要通過(guò)防火墻的NAT(網(wǎng)絡(luò)地址轉(zhuǎn)換)來(lái)滿(mǎn)足來(lái)自因特網(wǎng)的訪(fǎng)問(wèn)要求。NAT是防火墻的一項(xiàng)功能,它實(shí)際上工作在路由模式下。大多數(shù)防火墻都會(huì)區(qū)分所謂的正向NAT和反向NAT,所謂正向NAT就是指從內(nèi)網(wǎng)出去的數(shù)據(jù)包,在經(jīng)過(guò)防火墻后,包頭會(huì)被改寫(xiě),源IP被改寫(xiě)成防火墻上綁定的IP地址(或地址池,肯定是公網(wǎng)真實(shí)IP),源端口也會(huì)有所改變,回來(lái)的數(shù)據(jù)包經(jīng)過(guò)同樣處理,這樣就保證內(nèi)網(wǎng)具有私有IP的主機(jī)能夠與因特網(wǎng)進(jìn)行通信。在反向NAT的實(shí)現(xiàn)中,會(huì)將服務(wù)器的公網(wǎng)IP綁定在出口處的防火墻上,服務(wù)器只會(huì)使用一個(gè)私有IP,防火墻會(huì)在它的公網(wǎng)IP和這個(gè)私有IP之間建立一個(gè)映射,當(dāng)外網(wǎng)對(duì)這臺(tái)服務(wù)器的請(qǐng)求到達(dá)防火墻時(shí),防火墻會(huì)把它轉(zhuǎn)發(fā)給該服務(wù)器。當(dāng)然,在轉(zhuǎn)發(fā)之前,會(huì)先匹配防火墻規(guī)則集,不符合規(guī)則的數(shù)據(jù)包將被丟棄。
使用反向NAT,會(huì)大大提高服務(wù)器的安全性。因?yàn)槿魏斡脩?hù)的訪(fǎng)問(wèn)都不是直接面對(duì)服務(wù)器,而是先要經(jīng)過(guò)防火墻才被轉(zhuǎn)交。而且,服務(wù)器使用私有IP地址,這總比使用真實(shí)地址要安全。在抗拒絕服務(wù)攻擊上,這種方式的成效更顯然。但是,相對(duì)于透明模式的防火墻,采用反向NAT方式的防火墻會(huì)影響網(wǎng)絡(luò)速度。如果你的站點(diǎn)訪(fǎng)問(wèn)流量超大,那么就不要使用該種方式。值得一提的是,CISCO的PIX在NAT的處理上性能異常卓越。
另外一種情況是,服務(wù)器使用真實(shí)IP地址,防火墻配置成路由模式,不使用它的NAT功能。這種情況雖然可以實(shí)現(xiàn),但會(huì)使你的網(wǎng)絡(luò)結(jié)構(gòu)變得很復(fù)雜,似乎也不會(huì)帶來(lái)效益的提高。
大多數(shù)IDC的機(jī)房不提供防火墻服務(wù),你需要自己購(gòu)買(mǎi)和配置使用防火墻。你完全可以按透明模式或NAT模式來(lái)配置,具體怎么配取決于你的實(shí)際情況。有些IDC公司會(huì)提供防火墻服務(wù),作為他們吸引客戶(hù)的一個(gè)手段。一般來(lái)說(shuō),他們的防火墻服務(wù)會(huì)收費(fèi)。
如果你的服務(wù)器在IDC提供的公共防火墻后面,那么就有必要仔細(xì)考慮你的內(nèi)網(wǎng)結(jié)構(gòu)了。如果IDC提供給你的防火墻使用透明模式,也即是你的服務(wù)器全部使用真實(shí)IP地址,在這種情況下,除非你的服務(wù)器數(shù)量足夠多(象我們?cè)诒本┯?00多臺(tái)),那么在你的邏輯網(wǎng)段里肯定還有其他公司的主機(jī)存在。這樣,雖然有防火墻,你的系統(tǒng)管理任務(wù)也不會(huì)輕松多少,因?yàn)槟阋艿酵痪W(wǎng)段里其他公司主機(jī)的威脅。例如,你的服務(wù)器的IP地址段是211.139.130.0/24,你使用了其中的幾個(gè)地址,那么在這個(gè)網(wǎng)段里還會(huì)有200多臺(tái)其他公司的主機(jī),它們與你的主機(jī)同處于一個(gè)防火墻之后,雖然防火墻可以屏蔽來(lái)自因特網(wǎng)的某些訪(fǎng)問(wèn),然而,內(nèi)部這些主機(jī)之間的相互訪(fǎng)問(wèn)卻沒(méi)有任何屏蔽措施。于是,其他公司不懷好意的人可以通過(guò)他們的主機(jī)來(lái)攻擊你。或者,網(wǎng)絡(luò)中一臺(tái)主機(jī)被黑客入侵,則所有服務(wù)器都會(huì)面臨嚴(yán)重威脅。在這樣的網(wǎng)絡(luò)中,你不要運(yùn)行NFS、Sendmail、BIND這樣的危險(xiǎn)服務(wù)。
這種問(wèn)題的解決方法是自己購(gòu)買(mǎi)防火墻,并配置使用透明模式,不要使用公用防火墻的透明模式。
有的IDC公司會(huì)給你提供NAT方式的防火墻,你需要在服務(wù)器上設(shè)置私有IP地址,然后由防火墻來(lái)給服務(wù)器做地址轉(zhuǎn)換。這種情況與上述情況存在同樣的問(wèn)題,那就是,在你的服務(wù)器所在的邏輯網(wǎng)段里還有其他公司的主機(jī)。例如在172.16.16.0/24這個(gè)網(wǎng)段可容納254臺(tái)主機(jī),你的服務(wù)器使用了其中的幾個(gè)IP,那么可能還有200多臺(tái)其他公司的主機(jī)與你的服務(wù)器在同一個(gè)網(wǎng)段里。這樣,雖然對(duì)外有防火墻保護(hù),但無(wú)法防范來(lái)自?xún)?nèi)網(wǎng)的攻擊。
要解決這個(gè)問(wèn)題,你不必自己購(gòu)買(mǎi)防火墻。既然私有IP是可以任意分配的,那么你可以向IDC單獨(dú)要一個(gè)網(wǎng)段,例如172.16.19.0/24網(wǎng)段,把你的服務(wù)器都放在這個(gè)網(wǎng)段里,其中不要有其他公司的主機(jī)。這樣一來(lái),你的內(nèi)網(wǎng)也無(wú)懈可擊了。
實(shí)際上,如果你有一個(gè)大的UNIX主機(jī)的網(wǎng)絡(luò),那么沒(méi)必要讓每臺(tái)主機(jī)都在防火墻上打開(kāi)登陸端口。你可以特別設(shè)置一臺(tái)或兩臺(tái)主機(jī)做為登陸入口,對(duì)其他主機(jī)的訪(fǎng)問(wèn)都必須使用入口主機(jī)作為跳板。這樣做犧牲了使用的方便性,但帶來(lái)更強(qiáng)的安全性。當(dāng)然,前提是你必須管理好入口主機(jī)。有一種電子令牌卡適合這種應(yīng)用,它是一張隨身攜帶的卡,每隔一段時(shí)間(這個(gè)時(shí)間通常很小,幾分鐘或者幾十秒)動(dòng)態(tài)產(chǎn)生一個(gè)口令,你只有使用這個(gè)口令才能登陸主機(jī),并且該口令很快就會(huì)失效。
不僅是UNIX主機(jī),對(duì)Windows主機(jī)的終端管理也可以采用這種跳板的方式。但Windows的終端比UNIX的shell要麻煩得多,如果你不愿犧牲太多的方便性,那么就不要這樣做。
三. 系統(tǒng)安全
系統(tǒng)安全是站點(diǎn)安全的主要部分。如果你的系統(tǒng)存在明顯漏洞,那么再好的物理環(huán)境和網(wǎng)絡(luò)環(huán)境也保不了你。一個(gè)很明顯的問(wèn)題是,如果你的WEB服務(wù)器存在安全漏洞,你在沒(méi)有將其修補(bǔ)的情況下對(duì)外提供服務(wù),那么不管你的防火墻有多堅(jiān)固,也會(huì)很快被入侵。因此,系統(tǒng)管理員在保證系統(tǒng)功能穩(wěn)定的同時(shí),不得不花時(shí)間來(lái)研究系統(tǒng)的安全問(wèn)題。
我所接觸的服務(wù)器主要有Windows2000 Server、Freebsd、Linux和Solaris。第一種是微軟的產(chǎn)品,方便好用,但是,你必須要不斷的patch它。Freebsd是一種優(yōu)雅的操作系統(tǒng),它簡(jiǎn)潔的內(nèi)核和優(yōu)異的性能讓人感動(dòng)。Linux和Freebsd一樣,是免費(fèi)的操作系統(tǒng),它們都廣泛使用GNU(一個(gè)偉大的組織)的實(shí)用工具集,Linux容易上手,但不如Freebsd簡(jiǎn)潔。Solaris是SUN的商用操作系統(tǒng),關(guān)于SUN OS的文章在網(wǎng)上被貼得到處都是,但遺憾的是,它看起來(lái)并不快,而且,你也要經(jīng)常對(duì)它打補(bǔ)丁。
關(guān)于這幾種操作系統(tǒng)的安全,每種都可以寫(xiě)一本書(shū)。我不會(huì)在這里對(duì)它們進(jìn)行詳細(xì)描述,只講一些系統(tǒng)初始化安全配置。
1. Windows2000 Server的初始安全配置
Windows的服務(wù)器在運(yùn)行時(shí),都會(huì)打開(kāi)一些端口,如135、139、445等。這些端口用于Windows本身的功能需要,冒失的關(guān)閉它們會(huì)影響到Windows的功能。然而,正是因?yàn)檫@些端口的存在,給Windows服務(wù)器帶來(lái)諸多的安全風(fēng)險(xiǎn)。遠(yuǎn)程攻擊者可以利用這些開(kāi)放端口來(lái)廣泛的收集目標(biāo)主機(jī)信息,包括操作系統(tǒng)版本、域SID、域用戶(hù)名、主機(jī)SID、主機(jī)用戶(hù)名、帳號(hào)信息、網(wǎng)絡(luò)共享信息、網(wǎng)絡(luò)時(shí)間信息、Netbios名字、網(wǎng)絡(luò)接口信息等,并可用來(lái)枚舉帳號(hào)和口令。今年8月份和9月份,微軟先后發(fā)布了兩個(gè)基于135端口的RPC DCOM漏洞的安全公告,分別是MS03-026和MS03-039,該漏洞風(fēng)險(xiǎn)級(jí)別高,攻擊者可以利用它來(lái)獲取系統(tǒng)權(quán)限。而類(lèi)似于這樣的漏洞在微軟的操作系統(tǒng)中經(jīng)常存在。
解決這類(lèi)問(wèn)題的通用方法是打補(bǔ)丁,微軟有保持用戶(hù)補(bǔ)丁更新的良好習(xí)慣,并且它的Windows2000 SP4安裝后可通過(guò)Windows Update來(lái)自動(dòng)升級(jí)系統(tǒng)補(bǔ)丁。另外,在防火墻上明確屏蔽來(lái)自因特網(wǎng)的對(duì)135-139和445、593端口的訪(fǎng)問(wèn)也是明智之舉。
Microsoft的SQL Server數(shù)據(jù)庫(kù)服務(wù)也容易被攻擊,今年3月份盛行的SQL蠕蟲(chóng)即使得多家公司損失慘重,因此,如果安裝了微軟的SQL Server,有必要做這些事:1)更新數(shù)據(jù)庫(kù)補(bǔ)丁;2)更改數(shù)據(jù)庫(kù)的默認(rèn)服務(wù)端口(1433);3)在防火墻上屏蔽數(shù)據(jù)庫(kù)服務(wù)端口;4)保證sa口令非空。
另外,在Windows服務(wù)器上安裝殺毒軟件是絕對(duì)必須的,并且要經(jīng)常更新病毒庫(kù),定期運(yùn)行殺毒軟件查殺病毒。
不要運(yùn)行不必要的服務(wù),尤其是IIS,如果不需要它,就根本不要安裝。IIS歷來(lái)存在眾多問(wèn)題,有幾點(diǎn)在配置時(shí)值得注意:1)操作系統(tǒng)補(bǔ)丁版本不得低于SP3;2)不要在默認(rèn)路徑運(yùn)行WEB(默認(rèn)是c:/inetpub/wwwroot);3)以下ISAPI應(yīng)用程序擴(kuò)展可被刪掉:.ida .idq .idc .shtm .shtml .printer。
2. Freebsd的初始安全配置
Freebsd在設(shè)計(jì)之初就考慮了安全問(wèn)題,在初次安裝完成后,它基本只打開(kāi)了22(SSH)和25(Sendmail)端口,然而,即使是Sendmail也應(yīng)該把它關(guān)閉(因?yàn)闅v史上Sendmail存在諸多安全問(wèn)題)。方式是編輯/etc/rc.conf文件,改動(dòng)和增加如下四句:
sendmail_enable="NO"
sendmail_submit_enable="NO"
sendmail_outbound_enable="NO"
sendmail_msp_queue_enable="NO"
這樣就禁止了Sendmail的功能,除非你的服務(wù)器處于一個(gè)安全的內(nèi)網(wǎng)(例如在防火墻之后并且網(wǎng)段中無(wú)其他公司主機(jī)),否則不要打開(kāi)Sendmail。
禁止網(wǎng)絡(luò)日志:在/etc/rc.conf中保證有如下行:
syslogd_flags="-ss"
這樣做禁止了來(lái)自遠(yuǎn)程主機(jī)的日志記錄并關(guān)閉514端口,但仍允許記錄本機(jī)日志。
禁止NFS服務(wù):在/etc/rc.conf中有如下幾行:
nfs_server_enable="NO"
nfs_client_enable="NO"
portmap_enable="NO"
有些情況下很需要NFS服務(wù),例如用戶(hù)上傳圖片的目錄通常需要共享出來(lái)供幾臺(tái)WEB服務(wù)器使用,就要用到NFS。同理,要打開(kāi)NFS,必須保證你的服務(wù)器處于安全的內(nèi)網(wǎng),如果NFS服務(wù)器可以被其他人訪(fǎng)問(wèn)到,那么系統(tǒng)存在較大風(fēng)險(xiǎn)。
保證/etc/inetd.conf文件中所有服務(wù)都被注銷(xiāo),跟其他系統(tǒng)不同,不要由inetd運(yùn)行任何服務(wù)。將如下語(yǔ)句加進(jìn)/etc/rc.conf:
inetd_enable="NO"
所有對(duì)/etc/rc.conf文件的修改執(zhí)行完后都應(yīng)重啟系統(tǒng)。
如果要運(yùn)行Apache,請(qǐng)編輯httpd.conf文件,修改如下選項(xiàng)以增進(jìn)安全或性能:
1) Timeout 300--->Timeout 120
2) MaxKeepAliveRequests 256
3) ServerSignature on--->ServerSignature off
4) Options Indexes FollowSymLinks 行把indexes刪掉(目錄的Options不要帶index選項(xiàng))
5) 將Apache運(yùn)行的用戶(hù)和組改為nobody
6) MaxClients 150——>MaxClients 1500
(如果要使用Apache,內(nèi)核一定要重新編譯,否則通不過(guò)Apache的壓力測(cè)試,關(guān)于如何配置和管理WEB服務(wù)器請(qǐng)見(jiàn)我的另一篇文章)
如果要運(yùn)行FTP服務(wù),請(qǐng)安裝proftpd,它比較安全。在任何服務(wù)器上,都不要打開(kāi)匿名FTP。
3. Linux的初始安全配置
Linux安裝完成后,默認(rèn)會(huì)打開(kāi)一些不必要端口,運(yùn)行netstat –an |grep LISTEN命令看一下,會(huì)看到本機(jī)打開(kāi)的所有端口。除了必須的網(wǎng)絡(luò)端口如SSH、FTP和WEB,其他端口都關(guān)閉。如果你不熟悉這些端口對(duì)應(yīng)什么程序,那么請(qǐng)參看/etc/services文件,里面有端口和服務(wù)的對(duì)應(yīng)列表。
在Redhat 9.0默認(rèn)安裝完成后,請(qǐng)進(jìn)入/etc/rc2.d和/etc/rc3.d,將系統(tǒng)啟動(dòng)時(shí)打開(kāi)的不必要服務(wù)都在這里注銷(xiāo)掉。這些服務(wù)通常包括sendmail、NFS、rpc等,注銷(xiāo)的方法是將S打頭的相關(guān)服務(wù)文件重命名(注意不要命名為S或K 打頭的其他文件)。
例如將/etc/rc2.d/S80sendmail 改名為 X80sendmail
將/etc/rc3.d/S13portmap S14nfslock S28autofs S80sendmail 改名為 X13portmap X14nfslock X28autofs X80sendmail
RPC的安全問(wèn)題歷來(lái)很多,請(qǐng)注意一定不要打開(kāi)111端口。
改完后需要重啟Linux服務(wù)器。
如果你的Linux直接面對(duì)因特網(wǎng),那么可以配置它的防火墻來(lái)實(shí)現(xiàn)訪(fǎng)問(wèn)控制。Linux2.4內(nèi)核支持iptables,2.4以下支持ipchains,它們的語(yǔ)法差不多,都是很好的防火墻工具。例如,如果你只允許從因特網(wǎng)訪(fǎng)問(wèn)SSH和WWW服務(wù),那么可將如下語(yǔ)句加進(jìn)/etc/rc.d/rc.local文件:
/sbin/iptables -F
/sbin/iptables -A INPUT -p tcp -d 211.96.13.* --dport 80 -i eth0 -j ACCEPT
/sbin/iptables -A INPUT -p tcp -d 211.96.13.* --dport 22 -i eth0 -j ACCEPT
/sbin/iptables -A INPUT -i eth0 -j DROP
說(shuō)明:iptables –F刷新iptables規(guī)則表,接下來(lái)兩條語(yǔ)句允許任何人訪(fǎng)問(wèn)211.96.13.*這個(gè)地址的WWW和SSH服務(wù),最后一條DROP語(yǔ)句將不符合規(guī)則的其他訪(fǎng)問(wèn)過(guò)濾掉。
這樣系統(tǒng)在啟動(dòng)后即可自動(dòng)運(yùn)行防火墻規(guī)則。
通常在Freebsd或Linux上會(huì)運(yùn)行Mysql數(shù)據(jù)庫(kù)服務(wù),不要將數(shù)據(jù)庫(kù)服務(wù)端口(3306)暴露在防火墻之外。如果運(yùn)行Apache,同樣要做如Freebsd的修改。
4. Solaris的初始安全配置
關(guān)于Solaris的安全配置網(wǎng)上有一篇非常好的文章,叫做《The Solaris Security FAQ》,照著做就可以了。
1) 禁止root從網(wǎng)絡(luò)直接登陸:修改/etc/default/login文件,確保CONSOLE=/dev/console被設(shè)置,該行只允許root從控制臺(tái)登陸。將root用戶(hù)加入/etc/ftpusers,保證root不可以遠(yuǎn)程使用ftp。
2) 禁止rlogin和rsh訪(fǎng)問(wèn):刪除/etc/hosts.equiv和/.rhosts文件,從/etc/inetd.conf文件里注釋掉所有以r打頭的服務(wù)。
3) 帳號(hào)控制:刪除、鎖定或注釋掉不必要的系統(tǒng)帳號(hào),包括sys/uucp/nuucp/listen等
4) 改變/etc目錄的訪(fǎng)問(wèn)權(quán)限:該目錄下文件不應(yīng)該對(duì)同組用戶(hù)可寫(xiě),執(zhí)行:chmod –R g-w /etc (不推薦)
5) 在solaris2.5 以上版本的系統(tǒng)中,創(chuàng)建/etc/notrouter文件來(lái)關(guān)閉solaris默認(rèn)的路由轉(zhuǎn)發(fā)。
6) 禁止automounter:刪除/etc/auto_*配置文件,刪除/etc/init.d/autofs
7) 禁止NFS服務(wù):刪除/etc/dfs/dfstab,重命名/etc/rc3.d/S15nfs.server,重命名/etc/rc2.d/S73nfs.client (不要再以S打頭)
8) 禁止rpc服務(wù):重命名/etc/rc2.d/S71RPC
9) 修改/etc/inetd.conf文件,注釋掉大部分不必要服務(wù),只保留telnet和ftp服務(wù),然后重啟inetd進(jìn)程。
10) 給系統(tǒng)打補(bǔ)丁:包括各版本Solaris通用補(bǔ)丁和單個(gè)補(bǔ)丁集合。
11) 將如下三行加進(jìn)/etc/init.d/inetinit文件:
ndd -set /dev/ip ip_forward_directed_broadcasts 0
ndd -set /dev/ip ip_forward_src_routed 0
ndd -set /dev/ip ip_forwarding 0
這樣在系統(tǒng)啟動(dòng)后就關(guān)閉了IP轉(zhuǎn)發(fā)和IP源路由。
四. 服務(wù)器安全管理
4.1 安全管理應(yīng)做的事
安全管理是站點(diǎn)安全中最重要的一環(huán),離開(kāi)了管理,安全將變得不切實(shí)際。以下也許是Windows系統(tǒng)安全管理員每天應(yīng)做的事:
1. 檢查系統(tǒng)有無(wú)新增帳戶(hù),并了解其來(lái)源及用途;查看管理員組里有無(wú)新增帳戶(hù),該組的帳戶(hù)除系統(tǒng)最初設(shè)置外,以后不應(yīng)該增加帳戶(hù);
2. 在命令行狀態(tài)下,運(yùn)行netstat –an命令查看當(dāng)前連接及打開(kāi)的端口,查找可疑連接及可疑的端口;
3. 查看“任務(wù)管理器”,查找有無(wú)可疑的應(yīng)用程序或后臺(tái)進(jìn)程在運(yùn)行,并觀察CPU及內(nèi)存的使用狀態(tài);
4. 運(yùn)行注冊(cè)表編輯器,查找有無(wú)可疑的程序被加到windows的啟動(dòng)項(xiàng)里,并查看有無(wú)新增的可疑服務(wù);
5. 使用 Windows事件查看器查看“系統(tǒng)日志”“安全日志”和“應(yīng)用程序日志”,以發(fā)現(xiàn)有無(wú)可疑的事件或影響系統(tǒng)性能的事件;
6. 檢查共享目錄,不應(yīng)有對(duì)所有用戶(hù)可寫(xiě)的目錄存在;
7. 如果運(yùn)行Microsoft IIS,查看C:/WINNT/system32/LogFiles/下的WEB 服務(wù)器日志,以發(fā)現(xiàn)是否有試圖攻擊WEB的行為;
8. 不定期運(yùn)行殺毒軟件查殺病毒;
9. 經(jīng)常瀏覽微軟的網(wǎng)站,保持服務(wù)器的補(bǔ)丁同步更新,留意微軟發(fā)布的安全公告。
以下是Unix系統(tǒng)安全管理員應(yīng)經(jīng)常做的事:
1. 以root運(yùn)行l(wèi)ast,查看用戶(hù)在過(guò)去一段時(shí)間內(nèi)所發(fā)生的事件;
2. 查看/etc/passwd和/etc/shadow文件,以發(fā)現(xiàn)是否有新增用戶(hù),并追查用戶(hù)來(lái)源及用途;保證這兩個(gè)文件中的系統(tǒng)用戶(hù)(如Daemon bin sys adm lp uucp nuucp listen noaccess、mysql、sshd、nobody等)沒(méi)有自己的shell;檢查有無(wú)帳戶(hù)被提升到root權(quán)限(UID 0);
3. 運(yùn)行netstat –an |grep LISTEN查看有無(wú)可疑的打開(kāi)的端口;
4. 使用ps命令查看系統(tǒng)進(jìn)程,保證只有必要的進(jìn)程在運(yùn)行;
5. 檢查被cron運(yùn)行的程序,Solaris一般在/var/spool/cron目錄里,F(xiàn)reebsd一般在/var/cron里,初始化的crontable除root外,其他用戶(hù)不應(yīng)擁有;仔細(xì)查看root的crontable;
6. 使用vmstat和top查看系統(tǒng)資源占用狀況,對(duì)高資源占用的系統(tǒng)進(jìn)程要做謹(jǐn)慎處理;
7. 查看系統(tǒng)日志,包括Solaris下的/var/adm/messages和Freebsd下的/var/log/messages,以發(fā)現(xiàn)有無(wú)可疑的事件發(fā)生;
8. 查看系統(tǒng)安全日志,包括用戶(hù)登陸嘗試、驗(yàn)證失敗、可疑的IP地址登陸等,在solaris下是/var/log/authlog,freebsd下是/var/log/auth.log;
9. 運(yùn)行chkrootkit,以檢查系統(tǒng)是否被植入木馬程序;
10. 安裝了Apache的主機(jī),不定期查看Apache的訪(fǎng)問(wèn)日志和錯(cuò)誤日志, 以發(fā)現(xiàn)是否有試圖攻擊WEB的行為。
4.2 系統(tǒng)及服務(wù)的穩(wěn)定性
一些重要的服務(wù)器是片刻也不能停的,一旦發(fā)生服務(wù)器down機(jī)事故,而你又沒(méi)有及時(shí)發(fā)現(xiàn)和恢復(fù),那么你面對(duì)的將是鋪天蓋地的指責(zé)。系統(tǒng)安全管理的任務(wù)也許不是很重,但責(zé)任卻并不輕。因此,你有必要時(shí)刻了解服務(wù)器的存活狀況,一旦發(fā)生down機(jī)事件,你應(yīng)在第一時(shí)間知道。
有些好的IDC機(jī)房有服務(wù)器監(jiān)控系統(tǒng),一旦某臺(tái)機(jī)器down掉,它會(huì)發(fā)出警報(bào)。然后機(jī)房的值班人員會(huì)電話(huà)通知你,這樣你就能從容的處理事故。然而,并非所有的機(jī)房都有這樣的措施,很多時(shí)候還得依靠自己的小心。
在機(jī)房網(wǎng)絡(luò)中,應(yīng)該有一它網(wǎng)管機(jī)器,這臺(tái)機(jī)器最好是Unix系統(tǒng),因?yàn)槟憧梢栽谏厦婢帉?xiě)腳本來(lái)監(jiān)控網(wǎng)絡(luò),并通過(guò)sendmail發(fā)送郵件給自己。這臺(tái)機(jī)器可以是一臺(tái)服務(wù)器,象前面講過(guò)的登陸入口服務(wù)器,就完全可以充當(dāng)網(wǎng)管機(jī);也可以是一臺(tái)配置很低的普通PC,能運(yùn)行Linux或Freebsd就可以了。有必要在上面運(yùn)行sendmail,因?yàn)樗獙?duì)外發(fā)送郵件。當(dāng)然,sendmail有一些安全問(wèn)題,因此在運(yùn)行它之前,你必須確認(rèn)服務(wù)器處于安全的網(wǎng)絡(luò):在防火墻之后,且同一網(wǎng)段中沒(méi)有其他公司的服務(wù)器。否則,就不要運(yùn)行它。當(dāng)然,你也可以配置sendmail綁定在127.0.0.1端口,不接受網(wǎng)絡(luò)請(qǐng)求(在Linux默認(rèn)安裝的sendmail不接受網(wǎng)絡(luò)請(qǐng)求,F(xiàn)reebsd中可以在rc.conf文件中設(shè)置使sendmail綁定在127.0.0.1端口),這樣的sendmail會(huì)安全很多。
然后你可以寫(xiě)一個(gè)簡(jiǎn)單的腳本來(lái)監(jiān)控網(wǎng)絡(luò)主機(jī)生存狀況。在Unix主機(jī)上,使用shell或perl都很容易編寫(xiě)腳本,但是,shell腳本用于系統(tǒng)管理更簡(jiǎn)單明了,除非你要進(jìn)行復(fù)雜的數(shù)學(xué)計(jì)算或文本處理。如下這個(gè)shell腳本很簡(jiǎn)單,卻很實(shí)用:
#!/bin/sh
# script name:nping
# use this script to confirm the hosts are alive or not
HOST01="xxx.xxx.xxx.xxx"
HOST02="xxx.xxx.xxx.xxx"
HOST03="xxx.xxx.xxx.xxx"
HOST04="xxx.xxx.xxx.xxx"
HOST05="xxx.xxx.xxx.xxx"
HOST06="xxx.xxx.xxx.xxx"
HOST07="xxx.xxx.xxx.xxx"
HOST08="xxx.xxx.xxx.xxx"
HOST09="xxx.xxx.xxx.xxx"
HOST10="xxx.xxx.xxx.xxx"
for LOOP in $HOST01 $HOST02 $HOST03 $HOST04 $HOST05 $HOST06 $HOST07 $HOST08 $HOST09 $HOST10
do
if !/sbin/ping -c 2 $LOOP >/dev/null 2>&1;then
echo "Warning:The host $LOOP seems down" >> error.log
fi
done
if [ -f error.log ];then
cat error.log |mail -s "Warning:Host Down" yourname@yourmail.com
rm –rf error.log
fi
該腳本執(zhí)行一個(gè)簡(jiǎn)單的ping操作,以判斷目標(biāo)主機(jī)是否存活,如果目標(biāo)主機(jī)停止響應(yīng),則向管理員發(fā)送郵件報(bào)警。
你可以在任務(wù)里設(shè)定每隔一段時(shí)間執(zhí)行一次該腳本,由于ping對(duì)內(nèi)網(wǎng)的影響很小,因此這個(gè)時(shí)間可以短一些,我把它設(shè)為1小時(shí)。
然而,有的時(shí)候,你可能關(guān)心的不止是服務(wù)器是否存活,更想了解它的服務(wù)狀態(tài)是否正常,這個(gè)時(shí)候,你可以使用一個(gè)工具來(lái)判斷服務(wù)器的開(kāi)放服務(wù)狀態(tài),這個(gè)工具就是被Unix系統(tǒng)管理員廣泛使用的網(wǎng)絡(luò)端口掃描工具Nmap(可以從http://www.insecure.org/nmap/ 下載最新版本)。它的使用很簡(jiǎn)單,安裝完成后直接在命令行下執(zhí)行:nmap IP,就可以得到目標(biāo)主機(jī)的開(kāi)放TCP端口狀況。當(dāng)然,Nmap的功能遠(yuǎn)不止如此,它還可以執(zhí)行UDP、SYN、FIN、RPC等掃描,它的半開(kāi)放掃描可繞過(guò)防火墻的過(guò)濾,并可根據(jù)操作系統(tǒng)指紋判斷目標(biāo)系統(tǒng)類(lèi)型。在這里只要利用到Nmap的TCP掃描就夠了。然后,你可以編寫(xiě)一個(gè)腳本來(lái)定期檢測(cè)服務(wù)器的開(kāi)放端口狀況,并將結(jié)果Email給管理員。我編寫(xiě)的如下:
#!/bin/sh
# script name:nscan
# use this script to check the services status on local servers
HOST01="xxx.xxx.xxx.xxx"
HOST02="xxx.xxx.xxx.xxx"
HOST03="xxx.xxx.xxx.xxx"
HOST04="xxx.xxx.xxx.xxx"
HOST05="xxx.xxx.xxx.xxx"
HOST06="xxx.xxx.xxx.xxx"
HOST07="xxx.xxx.xxx.xxx"
SQL_PORT="2433/tcp"
MSRDP_PORT="3389/tcp"
PCANYWH_PORT="5631/tcp"
for LOOP in $HOST01 $HOST02 $HOST03 $HOST04 $HOST05 $HOST06 $HOST07
do
nmap -sT $LOOP >nmap.tmp 2>&1
for PORT in $SQL_PORT $MSRDP_PORT $PCANYWH_PORT
do
if ! grep $PORT nmap.tmp >/dev/null 2>&1;then
echo “Warning:The port $PORT is seem to down on $LOOP” >>$LOOP.error
fi
done
if [ ! -f $LOOP.error ];then
echo "The services running on $LOOP are nomal!"
else
cat $LOOP.error >>nscan.err 2>&1
rm -rf $LOOP.error
fi
rm -rf nmap.tmp
done
if [ -f nscan.err ];then
cat nscan.err |mail –s “Host Services Down” yourname@yourmail.com
rm –rf nscan.err
fi
該腳本只是判斷MS SQL Server、MS終端服務(wù)和Pcanywhere服務(wù)是否正常,如果不正常,就向管理員發(fā)送郵件報(bào)警。如果你需要檢查其他的服務(wù)端口,修改該腳本即可。
你也可以配置任務(wù)來(lái)定期執(zhí)行該腳本,不過(guò)請(qǐng)注意,Nmap掃描會(huì)影響網(wǎng)絡(luò),因此檢測(cè)的時(shí)間間距不要太小。當(dāng)然,在Unix系統(tǒng)下,有好些方法可以判斷目標(biāo)系統(tǒng)的開(kāi)放端口狀況,但使用Nmap掃描看起來(lái)也不錯(cuò)。
4.3 日志管理
不管是Windows系統(tǒng)還是Unix系統(tǒng),都有自己的事件日志。在Windows下使用事件查看器可以清楚的了解系統(tǒng)運(yùn)行的各項(xiàng)狀態(tài),它包括應(yīng)用程序日志、安全日志和系統(tǒng)日志。你應(yīng)經(jīng)常閱讀這些日志,尤其是一些紅色標(biāo)記的錯(cuò)誤信息。根據(jù)這些錯(cuò)誤提示發(fā)現(xiàn)問(wèn)題和解決問(wèn)題是Windows系統(tǒng)管理員應(yīng)做的事。
如果服務(wù)器不加入域,那么一般來(lái)說(shuō)系統(tǒng)錯(cuò)誤信息很少;如果在機(jī)房的服務(wù)器組成一個(gè)域,那么從日志里可能會(huì)經(jīng)常看到各種錯(cuò)誤提示,尤其是在域控制器有問(wèn)題的時(shí)候。管理好一個(gè)域不是一件太容易的事,它憑空給系統(tǒng)管理員增加很多困難。如果你真碰到這樣的問(wèn)題,建議你到google上面去查找答案,一般來(lái)說(shuō),你碰到的問(wèn)題別人肯定也遇見(jiàn)過(guò)了,因特網(wǎng)上有很多熱心的人愿意解答困難者的問(wèn)題(尤其是國(guó)外的技術(shù)站點(diǎn))。
讀Windows的日志不浪費(fèi)你太多精神,因?yàn)樗挤珠T(mén)別類(lèi)整理得很清楚,有什么錯(cuò)誤能一目了然的看出來(lái)。每天快速翻一下它的日志是可行的,如果你的服務(wù)器磁盤(pán)有壞道,也能從日志里體現(xiàn)出來(lái),為你及早更換磁盤(pán)、避免數(shù)據(jù)災(zāi)難贏得了時(shí)間。
在Unix系統(tǒng)下,讀日志要費(fèi)勁一些,因?yàn)閁nix系統(tǒng)通常把一些通用的日志信息寫(xiě)到messages文件里,導(dǎo)致這個(gè)文件里雜七雜八什么都有,包括應(yīng)用程序信息、用戶(hù)驗(yàn)證信息、網(wǎng)絡(luò)連接信息、內(nèi)核信息等等,在瀏覽它們時(shí)比較費(fèi)勁。然而,這不意味著你可以不管它們。實(shí)際上,日志文件是系統(tǒng)偵錯(cuò)時(shí)的唯一依據(jù)。某天你的Unix系統(tǒng)崩潰了,在居喪之余,不要忘了去分析它的日志,或許可以為你找到原因。
在Unix系統(tǒng)下,有一個(gè)日志分析軟件叫Swatch,它能很好的幫你裁減和分析日志,減輕系統(tǒng)管理員的負(fù)擔(dān)。關(guān)于它的安裝和使用我不在這里詳敘,因?yàn)槲易约翰](méi)有使用它。我自己編寫(xiě)腳本用于查看日志,使用awk語(yǔ)句照樣能將日志文件裁減到合理的程度。這個(gè)腳本的樣式我不在這里描述,因?yàn)椴煌南到y(tǒng)和網(wǎng)絡(luò)環(huán)境所產(chǎn)生的條件并不一樣。
在UNIX系統(tǒng)下,另外一個(gè)日志文件也很值得關(guān)注,它記載了用戶(hù)的登陸和驗(yàn)證信息,該文件一般位于/var/log下,名為authlog或者auth.log,只有root才可以對(duì)它進(jìn)行讀寫(xiě)。
如果系統(tǒng)中安裝了Apache,那么經(jīng)常查看Apache的錯(cuò)誤日志和訪(fǎng)問(wèn)日志也值得推薦。從這兩個(gè)日志里,你可以發(fā)現(xiàn)很多有趣信息,因特網(wǎng)上對(duì)WEB站點(diǎn)的攻擊從來(lái)沒(méi)有終止過(guò)(從這里也可以找到大量試圖攻擊IIS的信息)。
4.4 用戶(hù)管理
用戶(hù)管理通常是指系統(tǒng)的用戶(hù)帳戶(hù)管理,不管是UNIX系統(tǒng)還是Windows系統(tǒng),帳戶(hù)安全是系統(tǒng)安全的關(guān)鍵。系統(tǒng)中應(yīng)保持固定數(shù)量的用戶(hù)帳戶(hù),作為系統(tǒng)管理員,應(yīng)清楚每一個(gè)帳戶(hù)的使用者和用途。用戶(hù)新申請(qǐng)帳戶(hù)應(yīng)該有個(gè)流程,規(guī)范的管理總比不規(guī)范好。
在Unix系統(tǒng)上,大多數(shù)系統(tǒng)帳戶(hù)平時(shí)是沒(méi)什么用的,包括:bin daemon adm lp mail news uucp operator games gopher rpc等,如果你不把它們刪除,那么也不要讓它們擁有真正的shell,檢查/etc/passwd文件,看看這些帳戶(hù)的最后一個(gè)域(shell)是否被置/sbin/nologin或/bin/false。經(jīng)常檢查帳戶(hù)的權(quán)限,普通帳戶(hù)不應(yīng)該在root組(gid=0),更不應(yīng)擁有root權(quán)限(uid=0)。可以寫(xiě)一個(gè)腳本來(lái)替你檢查,如下所示:
#!/bin/sh
# script name:checkuser
# check if there is any user who have real shell or have root id/gid
FILE=/etc/passwd
NUM=0
while read LINE
do
NUM=`expr $NUM + 1`
if [ $NUM -lt 3 ];then
continue
fi
USER=`echo $LINE |cut -d: -f1`
USER_SHELL=`echo $LINE |cut -d: -f7`
USER_UID=`echo $LINE |cut -d: -f3`
USER_GID=`echo $LINE |cut -d: -f4`
if [ "$USER_SHELL" != "/sbin/nologin" ];then
echo -e "/n$USER has one real shell:$USER_SHELL"
fi
if [ $USER_UID -eq 0 ];then
echo "$USER has the root uid(uid 0)"
fi
if [ $USER_GID -eq 0 ];then
echo "$USER has the root gid(gid 0)"
fi
done <$FILE
這個(gè)腳本運(yùn)行在Freebsd下,F(xiàn)reebsd的/etc/passwd文件前兩行是版本說(shuō)明,所以在程序里把它跳過(guò),從第三行起挨個(gè)檢查用戶(hù)帳號(hào),它將每一個(gè)擁有真正shell或者擁有root用戶(hù)ID或組ID的帳號(hào)在屏幕上打印出來(lái)。
同樣,在Windows服務(wù)器上,如果不運(yùn)行IIS服務(wù),那么把IIS相關(guān)的帳號(hào)禁止掉,把終端服務(wù)帳號(hào)禁止掉,把guest帳號(hào)禁止掉。Windows系統(tǒng)的管理員組除了Administrator外不要有其他帳號(hào),甚至應(yīng)該把Administrator帳號(hào)改名。每一個(gè)帳號(hào)在帳號(hào)描述里說(shuō)明它的用途。如果Windows服務(wù)器采用域的方式,那么應(yīng)確保域中有盡可能少的用戶(hù)。一般域中兩個(gè)用戶(hù)就夠了,一個(gè)Administrators組的用戶(hù),一個(gè)普通用戶(hù)。請(qǐng)記住,域的Administrators組的用戶(hù)(通常是administrator)對(duì)你的每一臺(tái)加入域的服務(wù)器都有生死控制權(quán),所以你應(yīng)絕對(duì)保證這個(gè)帳戶(hù)的安全。
不管是系統(tǒng)的root密碼還是普通用戶(hù)密碼,都應(yīng)定期更改。我一般每?jī)蓚€(gè)月更改一次系統(tǒng)root密碼。當(dāng)然,如發(fā)現(xiàn)系統(tǒng)有被入侵跡象,應(yīng)馬上更改密碼。對(duì)于用戶(hù)密碼,不管在什么系統(tǒng)中,都可以設(shè)置密碼過(guò)期期限,用戶(hù)使用一段時(shí)間后必須更改密碼。有的用戶(hù)安全意識(shí)并不強(qiáng)烈,他們使用自己容易記住的詞匯作為口令,例如自己的英文名或者生日。這些都容易被猜測(cè),你可以使用工具破解這些簡(jiǎn)單口令。Unix下的John和Windows下的LC3都是非常好的密碼破解工具,在系統(tǒng)上運(yùn)行它們幾分鐘就可以破解出一堆弱口令。口令過(guò)于簡(jiǎn)單的用戶(hù),一定要強(qiáng)制他們更改口令,否則后患無(wú)窮。如果用戶(hù)拒絕更改口令,那就刪除他們,我就做過(guò)這樣的事。
4.5 安全巡檢
最后要講的是安全巡檢,有時(shí)間就跑到機(jī)房看看去吧,看看服務(wù)器運(yùn)行的環(huán)境,檢查一下電源和網(wǎng)線(xiàn),摸摸機(jī)表的溫度,跟機(jī)房的值班人員聊聊天,都對(duì)你有好處。一般來(lái)說(shuō),就算服務(wù)器正常運(yùn)行,每月也應(yīng)去機(jī)房?jī)纱巍.?dāng)然,來(lái)去打車(chē)的費(fèi)用,希望你的公司給你報(bào)銷(xiāo)。
轉(zhuǎn)載請(qǐng)說(shuō)明出處:六百號(hào)技術(shù) - SEO優(yōu)化,網(wǎng)頁(yè)設(shè)計(jì),網(wǎng)絡(luò)編程,軟件技巧,網(wǎng)絡(luò)知識(shí),系統(tǒng)技術(shù) ? 服務(wù)器安全維護(hù)
標(biāo)簽: