監(jiān)理公司管理系統(tǒng) | 工程企業(yè)管理系統(tǒng) | OA系統(tǒng) | ERP系統(tǒng) | 造價(jià)咨詢管理系統(tǒng) | 工程設(shè)計(jì)管理系統(tǒng) | 簽約案例 | 購買價(jià)格 | 在線試用 | 手機(jī)APP | 產(chǎn)品資料
X 關(guān)閉

如何配置Linux安全服務(wù)管理工具

申請免費(fèi)試用、咨詢電話:400-8352-114

文章來源:泛普軟件

在對任何計(jì)算機(jī)進(jìn)行安全管理時(shí),最重要的一點(diǎn)就是要保證能夠?qū)φ谶\(yùn)行的服務(wù)進(jìn)行有效的控制。本文主要講述如何對對一臺(tái)運(yùn)行Linux系統(tǒng)的電腦進(jìn)行配置,實(shí)現(xiàn)安全的服務(wù)管理。

在對任何計(jì)算機(jī)進(jìn)行安全管理時(shí),最重要的一點(diǎn)就是要保證能夠?qū)φ谶\(yùn)行的服務(wù)進(jìn)行有效的控制。運(yùn)行不必要的網(wǎng)絡(luò)服務(wù)會(huì)給系統(tǒng)增添額外的安全風(fēng)險(xiǎn)。就算是為了完成某些功能而必須運(yùn)行的服務(wù),你也應(yīng)該對其進(jìn)行仔細(xì)的配置和管理,從而最小化該服務(wù)有可能帶來的風(fēng)險(xiǎn)。為了實(shí)現(xiàn)Linux系統(tǒng)最佳的安全配置服務(wù),可以通過/etc/inittab文件,runlevels,以及一兩個(gè)服務(wù)管理超級工具(superdaemon)inetd 或 xinetd ,直接進(jìn)行管理。

inittab
/etc/inittab文件被用在系統(tǒng)的初始化過程,用來啟動(dòng)系統(tǒng)服務(wù)。在一個(gè)配置好的系統(tǒng)中,文件中包含的服務(wù)應(yīng)該不會(huì)很多,但是某些Linux版本在默認(rèn)安裝時(shí)會(huì)加載很多額外的服務(wù)。/etc/inittab文件的內(nèi)容看上去并不是很明晰,但是它能令服務(wù)管理的變得相對簡單。


首先,不要通過 /etc/inittab 文件在系統(tǒng)初始化時(shí)添加服務(wù)。雖然偶爾有例外,但是一般來說,添加服務(wù)可以通過其它方式實(shí)現(xiàn)。

第二,不要?jiǎng)h除 /etc/inittab 文件中第一個(gè)冒號(hào)之前的單精度部分或之前的其它部分。以單精度字符開頭的一行可以開啟你的TTY控制臺(tái),而之前列出的整個(gè)項(xiàng)目會(huì)打開其它功能,甚至一些關(guān)鍵功能。雖然本條規(guī)則也有例外,但是為了穩(wěn)妥,在你不確定時(shí),不要?jiǎng)h除任何部分。

第三, /etc/inittab 主要用于系統(tǒng)引導(dǎo)時(shí)和runlevel選擇時(shí)的進(jìn)程管理,不用于正常的系統(tǒng)操作。

第四,要添加在系統(tǒng)引導(dǎo)時(shí)啟動(dòng)的服務(wù),應(yīng)該使用rc系統(tǒng),而不是init系統(tǒng)。如果你查看 /etc/inittab中的內(nèi)容,就會(huì)發(fā)現(xiàn)每個(gè)條目后面都跟有rc 0到rc 6不等的字符,這是表示init系統(tǒng)會(huì)如何處理該項(xiàng)目的runlevels。
runlevels
基于Linux的系統(tǒng)可以通過runlevels對操作進(jìn)行管理。不同的運(yùn)行等級具有不同的行為,這與微軟Windows操作系統(tǒng)所采用的“正常模式”、“安全模式”以及“DOS模式”類似。


Runlevel 0 可以用來關(guān)閉正在運(yùn)行的所有程序,同時(shí),如果系統(tǒng)允許軟關(guān)機(jī),就將關(guān)閉系統(tǒng)電源。

Runlevel 1 是單用戶無網(wǎng)絡(luò)連接模式,這種等級主要用來進(jìn)行非常低等級的排錯(cuò)以及管理操作。

Runlevel 2 到 Runlevel 5 是多用戶系統(tǒng)正常模式。 在runlevel 2-3級,只能采用命令行界面,其中第二級沒有網(wǎng)絡(luò)連接,而第三級則帶有網(wǎng)絡(luò)連接能力。runlevel 5會(huì)自動(dòng)啟動(dòng)X Window 系統(tǒng),為用戶提供圖形界面。runlevel2-5級都允許root用戶進(jìn)行配置,因此這幾個(gè)等級都可以完成你所希望的操作。

Runlevel 6 用來在整個(gè)初始化系統(tǒng)以及bootloader需要重新啟動(dòng)時(shí),進(jìn)行系統(tǒng)重新啟動(dòng)。
從第七級以上的runlevel是管理員自行定義的,但是“傳統(tǒng)”的UNIX系統(tǒng)并不會(huì)使用這些等級。因此一般也不需要對七級以上的runlevel進(jìn)行定義和使用。

在外殼中,你可以通過輸入runlevel命令來查看先前的runlevel和當(dāng)前的runlevel。如果系統(tǒng)的runlevel沒有改變,那么你會(huì)在返回的當(dāng)前runlevel等級后看到一個(gè)大寫的“N”,表示沒有先前的runlevel。要改變系統(tǒng)的runlevel,你可以使用init命令,之后跟上你所希望改變的runlevel等級。比如,你可以輸入init 6,然后重新啟動(dòng)系統(tǒng),或者init 1,啟用單用戶模式。

不同版本的Linux可能會(huì)有不同的修改runlevel的方法和過程。比如在Debian GNU/Linux中,位于/etc/init.d的服務(wù)腳本有來自/etc/rcN.d目錄的symbolic link進(jìn)行鏈接,其中的N表示你所希望進(jìn)行配置的runlevel等級。以K作為起始的Symlinks意味著插入runlevel時(shí)被殺死的進(jìn)程,而以字母S開頭的Symlinks表示在進(jìn)入runlevel時(shí)被啟動(dòng)的程序。數(shù)字從1到99,數(shù)字越大,表示啟動(dòng)或被殺死的時(shí)間越靠后。

大多數(shù)基于RPM的Linux版本都采用基于RedHat的rc系統(tǒng)。比起基于Debian的系統(tǒng),這一系統(tǒng)使用更復(fù)雜的路徑結(jié)構(gòu),而不同的基于RPM的系統(tǒng)之間也有很大的不同。你的Linux產(chǎn)品說明書上會(huì)詳細(xì)的介紹如何管理runlevels。

inetd
“superdaemon”是用來管理Linux后臺(tái)程序的工具,正如我們所知,inetd就是這樣一個(gè)常見的服務(wù)管理工具。終止inetd引用服務(wù)很簡單:首先,作為root用戶登錄,用文本編輯器打開/etc/inetd.conf文件。接下來,找到文件中需要終止的服務(wù)。最后,在服務(wù)所在行的最前面添加#符號(hào)(其他還有“>”和“英鎊符”),如下所示。注釋掉該行,inetd以后都不會(huì)啟動(dòng)這一服務(wù)。

編輯前,inetd服務(wù)看上去可能如下所示:

ident stream tcp wait identd /usr/sbin/identd identd

禁止inetd 后,該行變?yōu)椋?/P>

# ident stream tcp wait identd /usr/sbin/identd identd

如果你正在卸載inetd服務(wù)中的服務(wù)后臺(tái),不論是通過包管理器或者直接刪除它的可執(zhí)行文件(如上例中的/usr/sbin/identd),都可以簡單的刪除該行命令。

修改完/etc/inetd.conf后,記得要保存文件,以便inetd采用新的配置。保存后,你可以通過以下命令快速應(yīng)用新的配置:

kill -HUP `pidofinetd`

這個(gè)命令會(huì)導(dǎo)致 inetd 根據(jù)新的配置文件重新啟動(dòng)。

xinetd
另一個(gè)出現(xiàn)較晚,也更復(fù)雜一些的superdaemon被稱作xinetd ,它的功能比inetd要多一些。如果只是為了禁用某個(gè)服務(wù),它使用起來同樣很簡單。

如果利用xinetd,你必須在/etc/xinetd.conf中添加命令來禁止一個(gè)服務(wù)。如果要簡單的刪除某個(gè)服務(wù)項(xiàng),你可能需要?jiǎng)h除好幾行內(nèi)容,而不像inetd中只需要?jiǎng)h除一行。首先你需要在文本編輯器中打開上述文件,然后查找你希望禁止或者刪除的服務(wù),然后添加disable = yes 命令禁止該服務(wù),或者將該服務(wù)所在項(xiàng)全部刪除。比如,我們要禁用telnet,可以如下所示:

service telnet

{

. . .

disable = yes

}

在某些系統(tǒng)中,對于某些服務(wù),服務(wù)配置并不在/etc/xinetd.conf文件中。例如,像telnet這樣的服務(wù)有可能在文件/etc/xinetd.d/telnet中,改變其服務(wù)配置方法與它在/etc/xinetd.conf文件中的方法是一樣的。

編輯并保存了/etc/xinetd.conf文件后或者更改了服務(wù)文件后,可以輸入下面的命令讓修改即時(shí)生效:

kill -USR2 `pidofxinetd`

本命令將通知xinetd程序,使用更改后的配置。

Xinetd除了關(guān)閉或移除服務(wù)配置之外,還可以用于控制遠(yuǎn)程主機(jī)登錄服務(wù)。這將通過幾個(gè)機(jī)制完成:


可以為服務(wù)指定一個(gè)允許的主機(jī)。例如:可以通過在服務(wù)配置文件中添加only_from = 192.168.0.101這一行限制主機(jī)登錄telnet服務(wù)。盡管使用了詞語“only”,但是它只能限制主機(jī)的數(shù)目,而不僅僅只一臺(tái)主機(jī)。也可以使用部分地址指定完整的網(wǎng)絡(luò)。例如:可以使用“only_from = 192.168.0.to”表示本地Class C的任何主機(jī)都能訪問這個(gè)服務(wù)。

可以在配置文件中為某個(gè)服務(wù)指定禁止的主機(jī)。例如:可以在配置文件中添加“no_access = 192.168.0.102”這一行禁止這個(gè)主機(jī)遠(yuǎn)程訪問telnet服務(wù)。這個(gè)也可以使用多次而且也可以使用部分地址指定多個(gè)主機(jī)。萬一某個(gè)主機(jī)滿足only_from和no_access兩個(gè)限制,則會(huì)權(quán)衡確定其訪問權(quán)限。如果xinetd不能確定哪個(gè)限制能被應(yīng)用,則系統(tǒng)默認(rèn)更安全的選項(xiàng)——服務(wù)不會(huì)開啟。

服務(wù)管理之外

對于安全的遠(yuǎn)程服務(wù)訪問,還有更多的事情可以做。應(yīng)該恰當(dāng)配置防火墻保護(hù)服務(wù)免受攻擊。代理服務(wù)器、通過網(wǎng)關(guān)服務(wù)器端口推進(jìn)以及網(wǎng)絡(luò)地址轉(zhuǎn)移都能有效減少服務(wù)攻擊的風(fēng)險(xiǎn)。針對安全使用,那些用于登錄正在運(yùn)行的服務(wù)工具也應(yīng)進(jìn)行配置,例如,如果使用安全shell進(jìn)行遠(yuǎn)程連接而沒有使用X Server時(shí),在SSH中調(diào)低X forwarding是很重要的。直接進(jìn)行安全管理是保證Linux系統(tǒng)安全的重要部分,但是它也只是全面安全計(jì)劃的一部分。(techrepublic.com.com)

發(fā)布:2007-04-22 09:59    編輯:泛普軟件 · xiaona    [打印此頁]    [關(guān)閉]
相關(guān)文章:
南昌OA系統(tǒng)
聯(lián)系方式

成都公司:成都市成華區(qū)建設(shè)南路160號(hào)1層9號(hào)

重慶公司:重慶市江北區(qū)紅旗河溝華創(chuàng)商務(wù)大廈18樓

咨詢:400-8352-114

加微信,免費(fèi)獲取試用系統(tǒng)

QQ在線咨詢

泛普南昌OA信息化其他應(yīng)用

南昌OA軟件 南昌OA新聞動(dòng)態(tài) 南昌OA信息化 南昌OA快博 南昌OA行業(yè)資訊 南昌軟件開發(fā)公司 南昌門禁系統(tǒng) 南昌物業(yè)管理軟件 南昌倉庫管理軟件 南昌餐飲管理軟件 南昌網(wǎng)站建設(shè)公司