采取針對(duì)性措施保障 Unix 服務(wù)器的安全
下面我們可以定義三種類型的服務(wù)器,當(dāng)然根據(jù)你的實(shí)際需要,這些服務(wù)器可以進(jìn)一步分類。
公共服務(wù)器,這是一種可以訪問(wèn)互聯(lián)網(wǎng)的服務(wù)器。
登錄服務(wù)器,這種服務(wù)器允許非超級(jí)用戶登錄。
其它服務(wù)器,如MySQL,內(nèi)部LDAP或NFS服務(wù)器,這些服務(wù)器只能從內(nèi)部網(wǎng)絡(luò)到達(dá)。
根據(jù)我們定義的這些服務(wù)器,網(wǎng)絡(luò)的總體布局和我們要運(yùn)用的防火墻規(guī)則也就顯而易見(jiàn)了。
問(wèn)題是我們?cè)撊绾喂芾磉@些服務(wù)器,保持其安全性。這是我們?cè)O(shè)計(jì)的難題之一,因?yàn)橐粋(gè)脆弱的設(shè)計(jì)可能就意味著災(zāi)難的降臨。
從一個(gè)更高級(jí)的視點(diǎn)上來(lái)看,我們知道有些服務(wù)器要比其它服務(wù)器重要。一個(gè)或多個(gè)服務(wù)器需要被其它的服務(wù)器信任,這樣才能保證自動(dòng)化改變的發(fā)生。賬號(hào)的創(chuàng)建,按照Tripwire 或Samhain方式對(duì)主機(jī)完整性的監(jiān)視,甚至配置文件的備份都需要從某個(gè)服務(wù)器配置并維持,而這個(gè)服務(wù)器能夠以根用戶身份訪問(wèn)其它服務(wù)器。
這樣一個(gè)服務(wù)器,我們或可稱它為主服務(wù)器,只有超級(jí)用戶賬戶可用于登錄訪問(wèn)。超級(jí)用戶的口令需要與其它服務(wù)器的口令不同,而且這個(gè)主服務(wù)器不應(yīng)向外部世界提供服務(wù)。公共服務(wù)器的損害不應(yīng)影響主服務(wù)器的安全。當(dāng)一個(gè)表面上不重要的機(jī)器被損害時(shí),一次黑客性質(zhì)的登錄會(huì)成為一個(gè)rootkit的一部分,這又會(huì)導(dǎo)致用戶賬戶口令的暴露。這也就是sudo并非一個(gè)好主意的原因:它給你的用戶口令根目錄的訪問(wèn)權(quán)限。一個(gè)被損害的su可能會(huì)泄露根用戶的口令,這也就是主服務(wù)器如此重要的原因。
主服務(wù)器應(yīng)能夠以SSH方式并以根用戶的身份登錄到所有其它的服務(wù)器,但只能通過(guò)SSH密鑰進(jìn)行;诳诹畹母脩舻牡卿浗^對(duì)不要允許通過(guò)SSH進(jìn)行。如果主服務(wù)器被危及到其安全性,那么其它任何一個(gè)服務(wù)器都會(huì)落得同樣的下場(chǎng)。因此,主服務(wù)器是一個(gè)堡壘,只運(yùn)行SSH服務(wù),并只與其它機(jī)器連接。配置文件的備份、主機(jī)完整性數(shù)據(jù)庫(kù)等都可被存儲(chǔ)在主服務(wù)器上。
可被公共訪問(wèn)的服務(wù)器是最為脆弱的,原因就在于它們運(yùn)行的應(yīng)用程序,但登錄服務(wù)器也會(huì)引起問(wèn)題,而且它們?cè)谠S多其它方面也是很脆弱的。其用戶,不管是開(kāi)發(fā)人員還是學(xué)生、客戶,都不太在乎安全問(wèn)題。他們會(huì)運(yùn)行心目中的任何可得到的應(yīng)用程序,其中包括SQL服務(wù)器,基于PHP的WEB應(yīng)用程序(只采用安全性很差的安全記錄),以及看起來(lái)有用的其它任何東西。為了防止未知用戶通過(guò)這些程序的漏洞進(jìn)入系統(tǒng),你最好還是為你的操作系統(tǒng)安裝最新的補(bǔ)丁程序。
為操作系統(tǒng)打補(bǔ)丁并不是可選的,更不是一件可掉以輕心的事情。必須要反復(fù)強(qiáng)調(diào):在一個(gè)安全更新可用時(shí),必須為所有的服務(wù)器及時(shí)更新。對(duì)于那些只在周末為UNIX服務(wù)器打補(bǔ)丁的用戶來(lái)說(shuō),他們要承擔(dān)一種嚴(yán)重的責(zé)任,因?yàn)榫哂袗阂庥眯牡娜丝梢院茌p松地獲得根目錄的訪問(wèn),因?yàn)閷?duì)于系統(tǒng)漏洞的惡意利用代碼出現(xiàn)的速度是極快的。此外還有一些很新的惡意利用;這些都是十分可怕的事情。SELlinux或者一臺(tái)正確配置的Unix計(jì)算機(jī)能夠在防止惡意利用漏洞方面大有幫助。因此我們認(rèn)為總體上的安全架構(gòu)是最為關(guān)鍵的。
那些不安全的服務(wù)器可能允許用戶登錄。假定我們需要共享的home目錄,要支持此處描述的環(huán)境可能會(huì)很困難。輸出到不安全客戶端的NFS共享需要仔細(xì)檢查,特別是當(dāng)開(kāi)發(fā)人員或研究人員需要其機(jī)器上的根目錄權(quán)限時(shí)。
既然NFS意味著無(wú)安全性,向一個(gè)未被控制的客戶端授權(quán)訪問(wèn)NFS共享是相當(dāng)可怕的。實(shí)質(zhì)上,你必須假定在共享文件系統(tǒng)中的任何東西都可能被危及安全,因?yàn)樵诟脩艨赡軙?huì)很輕易地SU到碰巧擁有文件的任何人那里。老的標(biāo)準(zhǔn)工作區(qū)是要將這些類型的共享移到其自有的分區(qū)中,而且將其共享給那些有害的客戶端。AFS并不支持企業(yè)級(jí)特性,因此你最好不要采用它,而且它本身并不支持快照或兼容的ACL等。
我們可以對(duì)系統(tǒng)安全提出各種各樣的最優(yōu)方法和缺陷。從架構(gòu)的視點(diǎn)來(lái)看,一般的觀點(diǎn)是用兩種方式將風(fēng)險(xiǎn)最小化:一是使其難于滲入,二是一旦進(jìn)入系統(tǒng),應(yīng)難于擴(kuò)散。通過(guò)采用恰如其分的監(jiān)控,你應(yīng)該能夠快速地檢測(cè)任何入侵并能阻止它。
不管你有300個(gè)還是3000個(gè)服務(wù)器,基本的原則都是相同的。這看起來(lái)簡(jiǎn)單,在配置一個(gè)新的或被破壞的服務(wù)器時(shí)卻是最基本的。請(qǐng)記。
在暴露的服務(wù)器上盡量地減少服務(wù);
盡量地減少暴露的服務(wù)器的數(shù)量;
在給NFS客戶端任何權(quán)限時(shí)需要極端小心;
關(guān)鍵字:Unix 服務(wù)器的安全新文章:
- CentOS7下圖形配置網(wǎng)絡(luò)的方法
- CentOS 7如何添加刪除用戶
- 如何解決centos7雙系統(tǒng)后丟失windows啟動(dòng)項(xiàng)
- CentOS單網(wǎng)卡如何批量添加不同IP段
- CentOS下iconv命令的介紹
- Centos7 SSH密鑰登陸及密碼密鑰雙重驗(yàn)證詳解
- CentOS 7.1添加刪除用戶的方法
- CentOS查找/掃描局域網(wǎng)打印機(jī)IP講解
- CentOS7使用hostapd實(shí)現(xiàn)無(wú)AP模式的詳解
- su命令不能切換root的解決方法
- 解決VMware下CentOS7網(wǎng)絡(luò)重啟出錯(cuò)
- 解決Centos7雙系統(tǒng)后丟失windows啟動(dòng)項(xiàng)
- CentOS下如何避免文件覆蓋
- CentOS7和CentOS6系統(tǒng)有什么不同呢
- Centos 6.6默認(rèn)iptable規(guī)則詳解