版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
Linux系統(tǒng)與大數(shù)據(jù)應(yīng)用3Linux系統(tǒng)用戶與組管理第章本章內(nèi)容3.1用戶與組賬號(hào)3.2超級(jí)用戶root3.3用戶操作權(quán)限3.4系統(tǒng)的安全性3.5應(yīng)用案例3.6本章小結(jié)3.1用戶與組帳號(hào)當(dāng)我們使用Linux時(shí),需要以一個(gè)用戶的身份登入,一個(gè)進(jìn)程也需要以一個(gè)用戶的身份運(yùn)行,用戶限制使用者,或進(jìn)程可以使用、不可以使用那些資源。組用來方便管理用戶。本節(jié)介紹怎樣添加賬號(hào)、切換賬號(hào)、遠(yuǎn)程登賬號(hào)。。Linux系統(tǒng)是一個(gè)多用戶多任務(wù)的分時(shí)操作系統(tǒng),任何一個(gè)要使用系統(tǒng)資源的用戶,都必須首先向系統(tǒng)管理員申請(qǐng)一個(gè)賬號(hào),然后以這個(gè)賬號(hào)的身份進(jìn)入系統(tǒng)。用戶的賬號(hào)一方面可以幫助系統(tǒng)管理員對(duì)使用系統(tǒng)的用戶進(jìn)行跟蹤,并控制他們對(duì)系統(tǒng)資源的訪問;另一方面也可以幫助用戶組織文件,并為用戶提供安全性保護(hù)。每個(gè)用戶賬號(hào)都擁有一個(gè)惟一的用戶名和各自的口令。用戶在登錄時(shí)鍵入正確的用戶名和口令后,就能夠進(jìn)入系統(tǒng)和自己的主目錄。
3.1.1添加賬號(hào)每個(gè)用戶擁有一個(gè)UserID,操作系統(tǒng)實(shí)際使用的是用戶ID,而非用戶名。每個(gè)用戶屬于一個(gè)主組,屬于一個(gè)或多個(gè)附屬組,每個(gè)組擁有一個(gè)GroupID,每個(gè)進(jìn)程以一個(gè)用戶身份運(yùn)行,并受該用戶可訪問的資源限制,每個(gè)可登錄用戶擁有一個(gè)指定的shell,用戶ID為32位,從0開始,但是為了和老式系統(tǒng)更兼容,用戶ID限制在60000以下。用戶分類及其依據(jù)如表3-1:3.1.1添加賬號(hào)用戶類型分類依據(jù)root用戶ID為0的用戶為root用戶系統(tǒng)用戶ID為1-499的用戶普通用戶ID為500以上的用戶。一、添加賬號(hào)添加新的用戶賬號(hào)使用useradd命令,語法如下:useradd選項(xiàng)
用戶名
其中各選項(xiàng)含義如下:-ccomment指定一段注釋性描述。-d
目錄指定用戶主目錄,如果此目錄不存在,則同時(shí)使用-m選項(xiàng),能創(chuàng)建主目錄。-m
選項(xiàng),可以創(chuàng)建主目錄。
-g
用戶組指定用戶所屬的用戶組。-G
用戶組,用戶組指定用戶所屬的附加組。
-sshell文件指定用戶的登錄Shell。
-u
用戶號(hào)指定用戶的用戶號(hào),如果同時(shí)有-o選項(xiàng),則能重復(fù)使用其他用戶的標(biāo)識(shí)號(hào)。
-p
這個(gè)命令是需求提供md5碼的加密口令,普通數(shù)字是不行的。-o
選項(xiàng),則可以重復(fù)使用其他用戶的標(biāo)識(shí)號(hào)。用戶名指定新賬號(hào)的登錄名。3.1.1添加賬號(hào)【例3-1】:創(chuàng)建用戶#useradd-d/usr/sam-msam此命令創(chuàng)建了一個(gè)用戶sam,其中-d和-m選項(xiàng)用來為登錄名sam產(chǎn)生一個(gè)主目錄/usr/sam(/usr為默認(rèn)的用戶主目錄所在的父目錄)?!纠?-2】:創(chuàng)建一個(gè)屬于組的用戶#useradd-s/bin/sh-ggroup-Gadm,rootgem此命令新建了一個(gè)用戶gem,該用戶的登錄shell是/bin/sh,他屬于group用戶組,同時(shí)又屬于adm和root用戶組,其中g(shù)roup用戶組是其主組。這里可新建組:groupaddgroup及groupaddadm
增加用戶賬號(hào)就是在/etc/passwd文件中為新用戶增加一條記錄,同時(shí)更新其他系統(tǒng)文件,如/etc/shadow,/etc/group等。3.1.1添加賬號(hào)用戶帳戶本身在/etc/passwd中定義。Linux系統(tǒng)包含一個(gè)/etc/passwd的同伴文件,叫做/etc/shadow。該文件不像/etc/passwd,只有對(duì)于root用戶來說是可讀的,并且包含加密的密碼信息。我們來看一看/etc/shadow的一個(gè)樣本行:drobbins1$1234567890123456789012345678901:11664:0:-1:-1:-1:-1:0每一行給一個(gè)特別帳戶定義密碼信息,同樣的,每個(gè)字段用:隔開。第一個(gè)字段定義和這個(gè)shadow條目相關(guān)聯(lián)的特別用戶帳戶。第二個(gè)字段包含一個(gè)加密的密碼。其余的字段在下表中描述:3.1.1添加賬號(hào)3.1.1添加賬號(hào)字段說明字段
3(0)自
1/1/1970起,密碼被修改的天數(shù)字段
4(-1)密碼將被允許修改之前的天數(shù)(0表示“可在所有時(shí)間修改”)字段
5(-1)系統(tǒng)將強(qiáng)制用戶修改為新密碼之前的天數(shù)(1表示“永遠(yuǎn)都不能修改”)字段
6(-1)密碼過期之前,用戶將被警告過期的天數(shù)(-1表示“沒有警告”)字段
7(-1)密碼過期之后,系統(tǒng)自動(dòng)禁用帳戶的天數(shù)(-1表示“永遠(yuǎn)不會(huì)禁用”)字段
8(0)該帳戶被禁用的天數(shù)(-1表示“該帳戶被啟用”)字段9保留供將來使用二、刪除帳號(hào)
如果一個(gè)用戶的賬號(hào)不再使用,可以從系統(tǒng)中刪除。刪除用戶賬號(hào)就是要將/etc/passwd等系統(tǒng)文件中的該用戶記錄刪除,必要時(shí)還刪除用戶的主目錄。刪除一個(gè)已有的用戶賬號(hào)使用userdel命令,其格式如下:代碼:
userdel選項(xiàng)用戶名常用的選項(xiàng)是-r,它的作用是把用戶的主目錄一起刪除。例如代碼:
#
userdel
sam
此命令刪除用戶sam在系統(tǒng)文件中(主要是/etc/passwd,/etc/shadow,/etc/group等)的記錄,同時(shí)刪除用戶的主目錄。
3.1.1添加賬號(hào)三、修改帳號(hào)
修改用戶賬號(hào)就是根據(jù)實(shí)際情況更改用戶的有關(guān)屬性,如用戶號(hào)、主目錄、用戶組、登錄Shell等。
修改已有用戶的信息使用usermod命令,其格式如下:
代碼:
usermod
選項(xiàng)用戶名常用的選項(xiàng)包括-c,
-d,
-m,
-g,
-G,
-s,
-u以及-o等,這些選項(xiàng)的意義與useradd命令中的選項(xiàng)一樣,可以為用戶指定新的資源值。另外,有些系統(tǒng)可以使用如下選項(xiàng)。代碼:
-l
新用戶名
這個(gè)選項(xiàng)指定一個(gè)新的賬號(hào),即將原來的用戶名改為新的用戶名。
例如代碼:
#
usermod
-s
/bin/ksh
-d
/home/z
–g
developer
sam
此命令將用戶sam的登錄Shell修改為ksh,主目錄改為/home/z,用戶組改為developer。
3.1.1添加賬號(hào)四、用戶口令的管理
用戶管理的一項(xiàng)重要內(nèi)容是用戶口令的管理。用戶賬號(hào)剛創(chuàng)建時(shí)沒有口令,但是被系統(tǒng)鎖定,無法使用,必須為其指定口令后才可以使用,即使是指定空口令。
指定和修改用戶口令的Shell命令是passwd。超級(jí)用戶可以為自己和其他用戶指定口令,普通用戶只能用它修改自己的口令。命令的格式為:
代碼:
passwd
選項(xiàng)用戶名
可使用的選項(xiàng):普通用戶修改自己的口令時(shí),passwd命令會(huì)先詢問原口令,驗(yàn)證后再要求用戶輸入兩遍新口令,如果兩次輸入的口令一致,則將這個(gè)口令指定給用戶;而超級(jí)用戶為用戶指定口令時(shí),就不需要知道原口令。
3.1.1添加賬號(hào)為了系統(tǒng)安全起見,用戶應(yīng)該選擇比較復(fù)雜的口令,例如最好使用8位長的口令,口令中包含有大寫、小寫字母和數(shù)字,并且應(yīng)該與姓名、生日等不相同。
為用戶指定空口令時(shí),執(zhí)行下列形式的命令:
代碼:
#
passwd
-d
sam
此命令將用戶sam的口令刪除,這樣用戶sam下一次登錄時(shí),系統(tǒng)就不再詢問口令。passwd命令還可以用-l(lock)選項(xiàng)鎖定某一用戶,使其不能登錄,例如:
代碼:
#
passwd
-l
sam
新建用戶異常:
useradd
-d
/usr/hadoop
-u
586
-m
hadoop
-g
hadoop
Creating
mailbox
file:
文件已存在刪除即可
rm
-rf
/var/spool/mail/用戶名
useradd:
invalid
numeric
argument
'hadoop'
這是由于hadoop組不存在請(qǐng)先建hadoop組,通過cat/etc/passwd,可以查看用戶的passcat/etc/shadow,可以查看用戶名
cat/etc/group,可以查看組。
3.1.1添加賬號(hào)3.1.2切換賬號(hào)在我們平常使用Linux系統(tǒng)的時(shí)候,為了考慮安全性,我們一般都會(huì)使用一般的身份來操作,等到了需要設(shè)定特定的系統(tǒng)環(huán)境時(shí),我們才將身份換成root,來進(jìn)行系統(tǒng)管理。利用su命令來切換賬號(hào),su命令的作用就是變更為其它使用者的身份,超級(jí)用戶除外,需要鍵入密碼。使用代碼:su[-fmp][-ccommand][-sshell][--help][--version][-][USER[ARG]]參數(shù)說明·-f,-fast:不必讀啟動(dòng)文件(如csh.cshrc等),僅用于csh或者tcsh兩種shell?!?l,-login:加了這個(gè)參數(shù)之后,就好像是重新登陸一樣,大部分環(huán)境變量(HOME、SHELL和USER等)都是以該使用者(USER)為主并且工作目錄也會(huì)改變。如果沒有指定USER,缺省情況下為root?!?m,-p,-preserve-environment:執(zhí)行su時(shí)不改變環(huán)境變數(shù)?!?ccommand:變更賬號(hào)為USER的使用者,并執(zhí)行命令(command)后再變回原來的使用者?!?help顯示說明文件·-version顯示版本資訊·USER:欲變更的使用者賬號(hào)·ARG:傳入新的Shell參數(shù)。su-clsroot變更賬號(hào)為root并在執(zhí)行l(wèi)s指令后退出變回原使用者su[用戶名]3.1.2切換賬號(hào)(1)在root用戶下,輸入su普通用戶,則切換至普通用戶,從root切換到普通用戶不需要密碼(2)在普通用戶下,輸入su[用戶名]提示password輸入該用戶的password則切換到該用戶。3.1.3遠(yuǎn)程登陸Telnet用于因特網(wǎng)主機(jī)的遠(yuǎn)程登錄。它可以使用戶坐在聯(lián)網(wǎng)的主機(jī)鍵盤前,登錄進(jìn)入遠(yuǎn)距離的另一聯(lián)網(wǎng)主機(jī),成為那臺(tái)主機(jī)的終端。這使用戶可以方便地操縱世界另一端的主機(jī),就像它就在身邊一樣。通過遠(yuǎn)程登錄,本地計(jì)算機(jī)便能與網(wǎng)絡(luò)上另一遠(yuǎn)程計(jì)算機(jī)取得“聯(lián)系”,并進(jìn)行程序交互。進(jìn)行遠(yuǎn)程登錄的用戶叫做本地用戶,本地用戶登錄進(jìn)入的系統(tǒng)叫做遠(yuǎn)地系統(tǒng)。3.1.3遠(yuǎn)程登陸每一個(gè)遠(yuǎn)程機(jī)器都有一個(gè)文件(/etc/hosts.equiv),包括了一個(gè)信任主機(jī)名集共享用戶名的列表。本地用戶名和遠(yuǎn)程用戶名相同的用戶,可以在/etc/hosts.equiv文件中列出的任何機(jī)器上登錄到遠(yuǎn)程主機(jī),而不需要密碼口令。個(gè)人用戶可以在主目錄下設(shè)置相似的個(gè)人文件(通常叫.rhosts)。此文件中的每一行都包含了兩個(gè)名字—主機(jī)名和用戶名,兩者用空格分開。.rhosts文件中的每一行允許一個(gè)登錄到主機(jī)名的名為用戶名的用戶無需密碼就可以登陸到遠(yuǎn)程主機(jī)。如果在遠(yuǎn)程機(jī)的/etc/hosts.equiv文件中找不到本地主機(jī)名,并且在遠(yuǎn)程用戶的.rhosts文件中找不到本地用戶名和主機(jī)名時(shí),遠(yuǎn)程機(jī)就會(huì)提示密碼。列在/etc/hosts.equiv和.rhosts文件中的主機(jī)名必須是列在主機(jī)數(shù)據(jù)庫中的正式主機(jī)名,昵稱均不許使用。為安全起見,.rhosts文件必須歸遠(yuǎn)程用或根所有3.1.3遠(yuǎn)程登陸SSH為SecureShell的縮寫,SSH是建立在應(yīng)用層和傳輸層基礎(chǔ)上的安全協(xié)議。SSH可以有效防止遠(yuǎn)程管理過程中的信息泄露,專為遠(yuǎn)程登錄會(huì)話和其他網(wǎng)絡(luò)服務(wù)提供安全性的協(xié)議。所以利用SSH遠(yuǎn)程協(xié)議我們也可以對(duì)虛擬機(jī)中的Ubuntu進(jìn)行遠(yuǎn)程操控了,那么如何來實(shí)現(xiàn)這一功能呢?3.1.3遠(yuǎn)程登陸1)首先先確認(rèn)下ubuntu系統(tǒng)是否已經(jīng)安裝ssh(通常ubuntu中默認(rèn)是安裝的)通過命令進(jìn)行查看如圖3-1:$dpkg-l|grepssh3.1.3遠(yuǎn)程登陸在圖3-1中我們可以看到,系統(tǒng)顯示已經(jīng)安裝了openssh-client,但是沒有openssh-server。說明:若是ssh沒有完成安裝,這里我們可以重新安裝openssh-client和openssh-server。在終端使用下列命令進(jìn)行安裝:$sudoapt-getinstallopenssh-client
$sudoapt-getinstallopenssh-server3.1.3遠(yuǎn)程登陸2)在終端使用下列命令進(jìn)行安裝如圖3-2:$sudoapt-getinstallssh3.1.3遠(yuǎn)程登陸在圖3-1中我們可以看到,系統(tǒng)顯示已經(jīng)安裝了openssh-client,但是沒有openssh-server。說明:若是ssh沒有完成安裝,這里我們可以重新安裝openssh-client和openssh-server。在終端使用下列命令進(jìn)行安裝:$sudoapt-getinstallopenssh-client
$sudoapt-getinstallopenssh-server3.1.3遠(yuǎn)程登陸2)在終端使用下列命令進(jìn)行安裝如圖3-2:$sudoapt-getinstallssh3.1.3遠(yuǎn)程登陸在圖3-1中我們可以看到,系統(tǒng)顯示已經(jīng)安裝了openssh-client,但是沒有openssh-server。說明:若是ssh沒有完成安裝,這里我們可以重新安裝openssh-client和openssh-server。在終端使用下列命令進(jìn)行安裝:$sudoapt-getinstallopenssh-client
$sudoapt-getinstallopenssh-server3.1.3遠(yuǎn)程登陸2)在終端使用下列命令進(jìn)行安裝如圖3-2:$sudoapt-getinstallssh3.1.3遠(yuǎn)程登陸3)接下來我們來啟動(dòng)ssh服務(wù),執(zhí)行以下命令如圖3-3:$sudo/etc/init.d/sshstar3.1.3遠(yuǎn)程登陸4)接著通過ifconfig命令,查看系統(tǒng)的Ip地址,ssh的端口號(hào)一般為22.
圖中所框選的Ip就是系統(tǒng)的IP地址如圖3-4所示:3.1.3遠(yuǎn)程登陸如果你想停止ssh服務(wù),則執(zhí)行以下命令即可:sudo/etc/init.d/sshstop:3.1.3遠(yuǎn)程登陸5)接下來我們就可以在我們的windows系統(tǒng)中打開ssh客戶端軟件,這里我們喜歡使用WinSCP(是一個(gè)Windows環(huán)境下使用SSH的開源圖形化SFTP客戶端。同時(shí)支持SCP協(xié)議。它的主要功能就是在本地與遠(yuǎn)程計(jì)算機(jī)間安全的復(fù)制文件。.winscp也可以鏈接其他系統(tǒng),比如linux系統(tǒng))輸入ubuntu系統(tǒng)的ip地址(98)和端口(22)如圖3-5、圖3-6。3.1.3遠(yuǎn)程登陸3.1.3遠(yuǎn)程登陸6)到此,遠(yuǎn)程工具可以正常使用了。并且Ubuntu終端中可以進(jìn)行內(nèi)容的粘貼了如圖3-7所示。3.2
超級(jí)用戶root對(duì)于計(jì)算機(jī)系統(tǒng)來說,超級(jí)用戶(Superuser)是一種用于進(jìn)行系統(tǒng)管理的特殊用戶,相比其他普通用戶來說,它擁有最高權(quán)限,能夠進(jìn)行全系統(tǒng)的配置、維護(hù)等工作,做很多普通用戶沒有權(quán)限做的事情;而普通用戶的權(quán)限一般是超級(jí)用戶的子集,只具備其部分權(quán)限。在Unix與Linux中,超級(jí)用戶名稱是root,它是對(duì)所有文件與程序擁有一切權(quán)限的用戶。root用戶可以進(jìn)行許多普通用戶無法做的操作。在本章中,我們將介紹怎樣由普通用戶切換到超級(jí)用戶,怎樣加入到用戶組,以及退出超級(jí)用戶的操作。3.2.1切換超級(jí)用戶大部分Linux發(fā)行版的默認(rèn)賬戶是普通用戶,而更改系統(tǒng)文件或者執(zhí)行某些命令,需要root身份才能進(jìn)行,這就需要從當(dāng)前用戶切換到root用戶,Linux中切換用戶的命令是su或su
-,下面就su命令和su
-命令最大的本質(zhì)區(qū)別給大家詳解一下。3.2.1切換超級(jí)用戶前者只是切換了root身份,但Shell環(huán)境仍然是普通用戶的Shell;而后者連用戶和Shell環(huán)境一起切換成root身份了。只有切換了Shell環(huán)境才不會(huì)出現(xiàn)PATH環(huán)境變量錯(cuò)誤。su切換成root用戶以后,pwd一下,發(fā)現(xiàn)工作目錄仍然是普通用戶的工作目錄;而用su
-命令切換以后,工作目錄變成root的工作目錄了。用echo
$PATH命令看一下su和su
-以后的環(huán)境變量有何不同。以此類推,要從當(dāng)前用戶切換到其它用戶也一樣,應(yīng)該使用su
-命令。
用過ubuntu的人都知道,ubuntu默認(rèn)是不啟動(dòng)root用戶的,但是root用戶是Linux系統(tǒng)的最高權(quán)限用戶,該用戶擁有系統(tǒng)的生殺大權(quán)。然而,正因?yàn)榇擞脩魴?quán)限過大,系統(tǒng)一般情況下不允許你一root用戶登錄系統(tǒng)。但是,以普通用戶登錄系統(tǒng)后,普通用戶權(quán)力受限,做不了一些基本操作,比如安裝應(yīng)用程序,所以這里需要切換到root用戶來執(zhí)行一些對(duì)系統(tǒng)有重大影響的操作。3.2.1切換超級(jí)用戶1)sudo命令
xzm@ubuntu:~$
sudo這樣輸入當(dāng)前管理員用戶密碼就可以得到超級(jí)用戶的權(quán)限。但默認(rèn)的情況下5分鐘root權(quán)限就失效了。2)sudo-ixzm@ubuntu:~$
sudo-i通過這種方法輸入當(dāng)前管理員用戶的密碼就可以進(jìn)到root用戶。3)如果想一直使用root權(quán)限,要通過su切換到root用戶。那我們首先要重設(shè)置root用戶的密碼:xzm@ubuntu:~$
sudopasswdroot這樣就可以設(shè)置root用戶的密碼了,之后就可以自由的切換到root用戶了xzm@ubuntu:~$
su輸入root用戶的密碼即可。3.2.1切換超級(jí)用戶5)讓Ubuntu自動(dòng)登錄圖形模式下系統(tǒng)->系統(tǒng)管理->登錄窗口授權(quán)解鎖后選擇作為user自動(dòng)登錄即可。注意:大部分Linux發(fā)行版的默認(rèn)賬戶是普通用戶,而更改系統(tǒng)文件或者執(zhí)行某些命令,需要root身份才能進(jìn)行,這就需要從當(dāng)前用戶切換到root用戶,Linux中切換用戶的命令是su或su-,下面就su命令和su-命令最大的本質(zhì)區(qū)別給大家詳解一下:前者只是切換了root身份,但Shell環(huán)境仍然是普通用戶的Shell;而后者連用戶和Shell環(huán)境一起切換成root身份了。只有切換了Shell環(huán)境才不會(huì)出現(xiàn)PATH環(huán)境變量錯(cuò)誤。su切換成root用戶以后,pwd一下,發(fā)現(xiàn)工作目錄仍然是普通用戶的工作目錄;而用su-命令切換以后,工作目錄變成root的工作目錄了。用echo$PATH命令看一下su和su-以后的環(huán)境變量有何不同。以此類推,要從當(dāng)前用戶切換到其它用戶也一樣,應(yīng)該使用su-命令。3.2.2加入用戶組
用戶組是具有相同特征用戶的邏輯集合,有時(shí)我們需要讓多個(gè)用戶具有相同的權(quán)限,比如查看、修改某一個(gè)文件的權(quán)限,一種方法是分別對(duì)多個(gè)用戶進(jìn)行文件訪問授權(quán),如果有10個(gè)用戶的話,就需要授權(quán)10次,顯然這種方法不太合理;另一種方法是建立一個(gè)組,讓這個(gè)組具有查看、修改此文件的權(quán)限,然后將所有需要訪問此文件的用戶放入這個(gè)組中,那么所有用戶就具有了和組一樣的權(quán)限。這就是用戶組,將用戶分組是Linux系統(tǒng)中對(duì)用戶進(jìn)行管理及控制訪問權(quán)限的一種手段,通過定義用戶組,在很大程度上簡化了管理工作。3.2.2加入用戶組接下來將介紹怎樣增加一個(gè)新的用戶組。增加一個(gè)新的用戶組使用groupadd命令,其格式如下:
代碼:groupadd選項(xiàng)用戶組
可以使用的選項(xiàng)有:
-gGID指定新用戶組的組標(biāo)識(shí)號(hào)(GID)。-o
一般與-g選項(xiàng)同時(shí)使用,表示新用戶組的GID可以與系統(tǒng)已有用戶組的GID相同。
代碼:#groupaddolcs此命令向系統(tǒng)中增加了一個(gè)新組olcs,新組的組標(biāo)識(shí)號(hào)是在當(dāng)前已有的最大組標(biāo)識(shí)號(hào)的基礎(chǔ)上加1。
代碼:#groupadd-g101group1此命令向系統(tǒng)中增加了一個(gè)新組group2,同時(shí)指定新組的組標(biāo)識(shí)號(hào)是101。3.2.3退出雖然超級(jí)用戶(root)具有至高無上的權(quán)利,但是若一直使用root用戶登錄,系統(tǒng)可能遭受到破壞,所以有時(shí)候我們?cè)谶M(jìn)入超級(jí)用戶執(zhí)行完某些必要的操作后,會(huì)選擇退出超級(jí)用戶。接下來的幾種方法都是超級(jí)用戶退出的方法1)root用戶登錄想要退出超級(jí)用戶狀態(tài),可以su-[用戶名]輸入你想要進(jìn)入的普通用戶用戶名,即可退出超級(jí)用戶,進(jìn)入到該普通用戶2)如果為普通用戶通過su命令切換為root用戶可以直接使用命令quit(退出),-exit3)直接使用Ctrl+D組合鍵,即可退出root權(quán)限,如果要停止正在執(zhí)行的命令,按下Ctrl+C組合鍵即可停止當(dāng)前正在執(zhí)行的命令。3.3用戶操作權(quán)限在linux中的每一個(gè)文件或目錄都包含有訪問權(quán)限,這些訪問權(quán)限決定了誰能訪問和如何訪問這些文件和目錄。通過設(shè)定權(quán)限可以從以下三種訪問方式限制訪問權(quán)限:只允許用戶自己訪問;允許一個(gè)預(yù)先指定的用戶組中的用戶訪問;允許系統(tǒng)中的任何用戶訪問。同時(shí),用戶能夠控制一個(gè)給定的文件或目錄的訪問程度。一個(gè)文件活目錄可能有讀、寫及執(zhí)行權(quán)限。當(dāng)創(chuàng)建一個(gè)文件時(shí),系統(tǒng)會(huì)自動(dòng)地賦予文件所有者讀和寫的權(quán)限,這樣可以允許所有者能夠顯示文件內(nèi)容和修改文件。文件所有者可以將這些權(quán)限改變?yōu)槿魏嗡胫付ǖ臋?quán)限。一個(gè)文件也許只有讀權(quán)限,禁止任何修改。文件也可能只有執(zhí)行權(quán)限,允許它想一個(gè)程序一樣執(zhí)行。接下來將介紹文件的權(quán)限管理和怎樣修改文件的權(quán)限。3.3.1文件權(quán)限管理概述Linux是一個(gè)多用戶和多任務(wù)的操作系統(tǒng),在Linux系統(tǒng)中中信息都存放在文件中,系統(tǒng)里運(yùn)行的程字部以文件的形式存錯(cuò)。不同的用戶為了不同的目的使月操作系統(tǒng)是通過系統(tǒng)賦予用戶對(duì)某個(gè)文件的特定權(quán)限來實(shí)見的。Linux系統(tǒng)中文件或日錄的訪問權(quán)限分為讀權(quán)限,寫權(quán)限和可執(zhí)行權(quán)限三種,分別用r、w和x表示。用戶具有讀權(quán)限可以使用cat、more等文件百看程序賣取文件的內(nèi)容,這種方式僅又是訂取,不能對(duì)文件進(jìn)行修改,用戶具有寫權(quán)限可!在目錄中包建新的文件或者修改已有的文件:用戶具有大行權(quán)展可以執(zhí)行一些可執(zhí)行程序。在linx系統(tǒng)中,有三種不可類型的用戶可對(duì)文件或者目錄擁有不同的權(quán)限,這三類用是文付所有者,同組用戶、其他用戶。3.3.1文件權(quán)限管理概述Linux文件權(quán)限設(shè)置確定了某個(gè)文件或者目錄的訪問權(quán)限以后,用戶可以使用linux系統(tǒng)提供的chmod命令來重新設(shè)置文件或者目錄的訪問權(quán)限,達(dá)到控制不同用戶對(duì)文件的不同的訪問權(quán)限。該命令有兩種用法。一是包含字母和操作符表達(dá)式的文字設(shè)定法;另一種是包含數(shù)字的教字設(shè)定法。權(quán)限是操作系統(tǒng)用來限制對(duì)資源訪問的機(jī)制,權(quán)限一般分為讀、寫、執(zhí)行。系統(tǒng)中的每個(gè)文件都擁有特定的權(quán)限、所屬用戶及所屬組,通過這樣的機(jī)制來限制哪些用戶、哪些組可以對(duì)特定的文件進(jìn)行什么樣的操作。每個(gè)進(jìn)程都是以某個(gè)用戶的身份運(yùn)行,所以進(jìn)程的權(quán)限與該用戶的權(quán)限一樣,用戶的權(quán)限大,該進(jìn)程擁有的權(quán)限就大。3.3.1文件權(quán)限管理概述Linux中,每個(gè)文件擁有三種權(quán)限以下三種權(quán)限如下表:權(quán)限對(duì)文件的影響對(duì)目錄的影響說r(讀?。┛勺x取文件內(nèi)容可列出的目錄內(nèi)容w(寫入)可以修改文件內(nèi)容可在目錄中創(chuàng)建刪除文件x(執(zhí)行)可以作為命令執(zhí)行可訪問目錄內(nèi)容3.3.1文件權(quán)限管理概述Linux權(quán)限基于UGO模型進(jìn)行控制:·U代表user,G代表Group,O代表Other·每一個(gè)文件的權(quán)限基于UGO進(jìn)行設(shè)置·權(quán)限三個(gè)一組(rwx),對(duì)應(yīng)的UGO分別設(shè)置·每一個(gè)文件擁有一個(gè)所屬用戶和所屬組,對(duì)應(yīng)的UG,不屬于該文件所屬用戶或所屬組的使用O權(quán)限·命令ls-l可以查看當(dāng)前目錄下文件的詳細(xì)信息3.3.2修改權(quán)限命令chmod也支持以數(shù)字方式修改權(quán)限,三個(gè)權(quán)限分別由三個(gè)數(shù)字表示:-r=4(2^2)-w=2(2^1)-x=1(2^0)使用數(shù)字表示權(quán)限時(shí),每組權(quán)限分別為對(duì)應(yīng)的數(shù)字之和rw=4+2=6rwx=4+2+1=7r-x=4+1=5所以,使用的數(shù)字表示ugo權(quán)限使用如下的方式表示:chmod660==rw-rw-----chmod775==rwxrwxr-x命令chmod用以修改文件的權(quán)限,在linux中要修改一個(gè)文件夾或文件的權(quán)限我們需要用到linuxchmod命令來做:語法:chmod[who][+|-|=][mode]文件名3.3.2修改權(quán)限命令中who的含義為·u
表示“用戶(user)”,即文件或目錄的所有者?!
表示“同組(group)用戶”,即與文件屬主有相同組ID的所有用戶?!表示“其他(others)用戶”?!
表示“所有(all)用戶”。它是系統(tǒng)默認(rèn)值。操作符號(hào)可以是:·+
添加某個(gè)權(quán)限?!?
取消某個(gè)權(quán)限?!?
賦予給定權(quán)限并取消其他所有權(quán)限(如果有的話)。設(shè)置mode所表示的權(quán)限可用下述字母的任意組合,其中x只有目標(biāo)文件對(duì)某些用戶是可執(zhí)行的或該目標(biāo)文件是目錄時(shí)才追加x屬性。·r
可讀?!
可寫?!
可執(zhí)行。·s在文件執(zhí)行時(shí)把進(jìn)程的屬主或組ID置為該文件的文件屬主。方式“u+s”設(shè)置文件的用戶ID位,“g+s”設(shè)置組ID位?!
保存程序的文本到交換設(shè)備上?!
與文件屬主擁有一樣的權(quán)限?!
與和文件屬主同組的用戶擁有一樣的權(quán)限。·o
與其他用戶擁有一樣的權(quán)限。3.3.2修改權(quán)限1.修改文件可讀寫屬性:把index.html文件修改為可寫可讀可執(zhí)行:chmod777index.html2.要修改目錄下所有文件屬性可寫可讀可執(zhí)行:chmod777*.*把文件夾名稱與后綴名用*來代替就可以了。
比如:修改所有htm文件的屬性:chmod777*.htm3.修改文件夾屬性的方法
把目錄/images/xiao修改為可寫可讀可執(zhí)行chmod777/images/xiao3.3.2修改權(quán)限4.修改目錄下所有的文件夾屬性chmod777*把文件夾名稱用*來代替就可以了5.要修改文件夾內(nèi)所有的文件和文件夾及子文件夾屬性為可寫可讀可執(zhí)行chmod-R777/upload3.3.2修改權(quán)限總結(jié)linux下目錄和文件的權(quán)限區(qū)別文件:讀文件內(nèi)容(r)、寫數(shù)據(jù)到文件(w)、作為命令執(zhí)行文件(x)。目錄:讀包含在目錄中的文件名稱(r)、寫信息到目錄中去(增加和刪除索引點(diǎn)的連結(jié))、搜索目錄(能用該目錄名稱作為路徑名去訪問它所包含的文件和子目錄)具體說就是:(1)有只讀權(quán)限的用戶不能用cd進(jìn)入該目錄:還必須有執(zhí)行權(quán)限才能進(jìn)入。(2)有執(zhí)行權(quán)限的用戶只有在知道文件名,并擁有讀權(quán)利的情況下才可以訪問目錄下的文件。(3)必須有讀和執(zhí)行權(quán)限才可以ls列出目錄清單,或使用cd命令進(jìn)入目錄。(4)有目錄的寫權(quán)限,可以創(chuàng)建、刪除或修改目錄下的任何文件或子目錄,即使使該文件或子目錄屬于其他用戶也是如此。3.3.2修改權(quán)限查看目錄權(quán)限
查看文件權(quán)限的語句:
ls-lxxx.xxx(xxx.xxx是文件名)
那么就會(huì)出現(xiàn)相類似的信息,主要都是這些:
-rw-rw-r--
一共有10位數(shù)
其中:最前面那個(gè)-代表的是類型
中間那三個(gè)rw-代表的是所有者(user)
然后那三個(gè)rw-代表的是組群(group)
最后那三個(gè)r--代表的是其他人(other)
然后我再解釋一下后面那9位數(shù):
r表示文件可以被讀(read)
w表示文件可以被寫(write)
x表示文件可以被執(zhí)行(如果它是程序的話)
-表示相應(yīng)的權(quán)限還沒有被授予
接下來介紹修改文件權(quán)限了
3.3.2修改權(quán)限6.給其他人授予寫xxx.xxx這個(gè)文件的權(quán)限
chmodowxxx.xxx
7.表示刪除xxx.xxx中組群和其他人的讀和寫的權(quán)限chmodgo-rwxxx.xxx
其中:
·u代表所有者(user)
·g代表所有者所在的組群(group)
·o代表其他人,但不是u和g(other)
·a代表全部的人,也就是包括u,g和o
·r表示文件可以被讀(read)
·w表示文件可以被寫(write)
·x表示文件可以被執(zhí)行(如果它是程序的話)
3.3.2修改權(quán)限其中:rwx也可以用數(shù)字來代替
·r-----------4
·w----------2
·x-----------1
·------------0
行動(dòng):
·+表示添加權(quán)限
·-表示刪除權(quán)限
·=表示使之成為唯一的權(quán)限
當(dāng)大家都明白了上面的東西之后,那么我們常見的以下的一些權(quán)限就很容易都明白了:·-rw-------(600)只有所有者才有讀和寫的權(quán)限
·-rw-r--r--(644)只有所有者才有讀和寫的權(quán)限,組群和其他人只有讀的權(quán)限
·-rwx------(700)只有所有者才有讀,寫,執(zhí)行的權(quán)限
·-rwxr-xr-x(755)只有所有者才有讀,寫,執(zhí)行的權(quán)限,組群和其他人只有讀和執(zhí)行的權(quán)限
·-rwx--x--x(711)只有所有者才有讀,寫,執(zhí)行的權(quán)限,組群和其他人只有執(zhí)行的權(quán)限
·-rw-rw-rw-(666)每個(gè)人都有讀寫的權(quán)限
·-rwxrwxrwx(777)每個(gè)人都有讀寫和執(zhí)行的權(quán)限
3.4系統(tǒng)的安全性很多人都知道Linux系統(tǒng)的安全性比微軟的windows系統(tǒng)更高。但是,為什么會(huì)這樣呢?這種說法有沒有道理呢?首先我們必須明確“安全性”的定義。其實(shí),絕大多數(shù)人都犯了同樣一個(gè)錯(cuò)誤,那就是孤立的認(rèn)為某個(gè)產(chǎn)品比較安全。比如,Linux系統(tǒng)要比微軟的windows系統(tǒng)更加安全,或是,開放源代碼的Firefox網(wǎng)絡(luò)瀏覽器要比微軟的IE瀏覽器更加安全。但是其實(shí)安全性指的2是用戶和軟件之間,通過適當(dāng)?shù)慕换シ绞?,所達(dá)成的一種活躍的狀態(tài)。漏洞補(bǔ)丁管理僅僅是這套系統(tǒng)的一個(gè)重要方面。而其它可能更為重要的方面還包括:用于補(bǔ)丁管理的恰當(dāng)工具、健壯的默認(rèn)設(shè)置,達(dá)成安全的多層次運(yùn)作體系,以及時(shí)刻將用戶看作是安全性的第一道,也是最后一道防線的設(shè)計(jì)理念。3.4.1賬號(hào)的安全性1)更加卓越的補(bǔ)丁管理工具:
在微軟的windows系統(tǒng)中自動(dòng)更新的程序只會(huì)升級(jí)那些由微軟公司官方所提供的組件。而第三方的應(yīng)用程序卻不會(huì)得到修補(bǔ)。從而,第三方的應(yīng)用程序可能會(huì)給你的系統(tǒng)帶來大量安全隱患。因?yàn)閷?duì)于電腦上的所有應(yīng)用程序,你都需要定期的對(duì)每一款軟件單獨(dú)的進(jìn)行更新升級(jí),這種方法非常的繁瑣,并且讓人心煩,而絕大多數(shù)用戶很快就將這項(xiàng)工作忘到九霄云外去了。而在linux系統(tǒng)中,當(dāng)你在自動(dòng)更新系統(tǒng)的時(shí)候,它將同時(shí)升級(jí)系統(tǒng)中所有的軟件。在Ubuntu系統(tǒng)中,你所下載的任何軟件產(chǎn)品,都會(huì)出現(xiàn)在程序倉庫當(dāng)中,要升級(jí)它,你只需要用鼠標(biāo)輕輕一點(diǎn)。而在其它的Linux發(fā)行版本中,如果下載的軟件并沒有出現(xiàn)在系統(tǒng)的程序倉庫中,添加它也是非常的簡便。這樣的設(shè)計(jì),極大的提高了用戶實(shí)時(shí)更新系統(tǒng)的積極性。3.4.1賬號(hào)的安全性2)更加健壯的默認(rèn)設(shè)置:Linux系統(tǒng)天生就被塞吉成一個(gè)多用戶的操作系統(tǒng)。因此,即便是某個(gè)用戶想要進(jìn)行惡意的破壞,底層系統(tǒng)文件依然會(huì)受到保護(hù)。假如,在非常不幸的情況下,有任何進(jìn)程的惡意代碼在系統(tǒng)中被執(zhí)行了,它所帶來的危害都會(huì)蔓延到整個(gè)系統(tǒng)中。3.4.1賬號(hào)的安全性3)模塊化設(shè)計(jì):Linux系統(tǒng)采用的是模塊化設(shè)計(jì)。這表示,如果不需要的話,你可以將任何一個(gè)系統(tǒng)組件給刪除掉。由此帶來的好處是,如果用戶感覺Linux系統(tǒng)的某個(gè)部分不太安全,他就可以移除掉這個(gè)組件。這對(duì)于windows系統(tǒng)來說,簡直是不可思議的。比如說,如果我感覺對(duì)于我的Linux系統(tǒng)來說,F(xiàn)irefox網(wǎng)絡(luò)瀏覽器是最薄弱的一個(gè)環(huán)節(jié),我們可以刪除掉他,用其他的網(wǎng)絡(luò)瀏覽器來替代,比如說,opera。而在windows系統(tǒng)中,即便是在不滿意,我們也無法替換微軟的InternetExplorer網(wǎng)絡(luò)瀏覽器。3.4.1賬號(hào)的安全性4)更棒的“零日攻擊(zero-day-attacks)”防御工具即便你能確保自己的系統(tǒng)實(shí)時(shí)更新,這也不代表著萬無一失!零日攻擊,指的是在軟件生產(chǎn)商發(fā)布針對(duì)漏洞的更新補(bǔ)丁之前,就搶先利用該漏洞發(fā)動(dòng)網(wǎng)絡(luò)的攻擊的攻擊方式正在變得日益猖獗。此外,一項(xiàng)調(diào)查研究頁顯示:對(duì)于攻擊者來說,他們只需要6天時(shí)間就能夠開發(fā)出針對(duì)漏洞的惡意攻擊代碼,而軟件生產(chǎn)廠商卻需要花費(fèi)長的多的時(shí)間才能夠推出相應(yīng)的更新補(bǔ)丁。因此,一套睿智的安全策略在防御零日攻擊方面至關(guān)重要。與之相應(yīng)的是,無論是何種類型的運(yùn)程遙控代碼攻擊,AppArmor或SELinux都能夠?yàn)橄到y(tǒng)提供細(xì)致而周全的保護(hù),有越來越多的主流Linux發(fā)行版本,在系統(tǒng)中都默認(rèn)整合了AppArmor(例如,SuSE、UbuntuGutsy)或者SELinux(Fedora、DebianEtch、YellowDog)即使是對(duì)于其他發(fā)行版本來說,用戶也可以非常方便的從網(wǎng)絡(luò)上下載并安裝這兩款軟件。3.4.1賬號(hào)的安全性5)開放源代碼構(gòu)架:在Linux系統(tǒng)中,當(dāng)談?wù)摰较到y(tǒng)安全性的時(shí)候,用你所看到,就是你所得到的這句話來形容,是再合適不過了。開放代碼意味著,任何可能的軟件漏洞都將被“無數(shù)雙眼睛所看到,并且得到盡可能的修復(fù)。而更重要的是,這也同時(shí)意味著在這里沒有任何被隱藏的修復(fù)措施。作為用戶,只要你有心,就可以找出自己系統(tǒng)中所存在的安全問題,并采用相應(yīng)的措施以應(yīng)對(duì)潛在的安全威脅,即便是在此時(shí)該漏洞還沒有被修補(bǔ)。而在windows世界當(dāng)中,有很多的安全問題都是被掩蓋起來的。微軟公司內(nèi)部所發(fā)現(xiàn)的軟件漏洞,是不會(huì)讓外界所知曉的,而他們所想的只是在在下一個(gè)更新升級(jí)包中對(duì)它進(jìn)行默默的修補(bǔ)就好了。雖然這樣做可以讓被公開的軟件漏洞數(shù)目更少,并讓某些漏洞不會(huì)被大規(guī)模的利用,但這種做法同時(shí)也蒙蔽了用戶的雙眼。由此所導(dǎo)致的結(jié)果是,用戶很可能不會(huì)積極的對(duì)系統(tǒng)進(jìn)行升級(jí),因?yàn)樗涣私庾约旱南到y(tǒng)存在怎樣的漏洞,以及這些漏洞的危害大小,結(jié)果反而會(huì)成為惡意攻擊的犧牲品。3.4.1賬號(hào)的安全性6)多樣化的系統(tǒng)環(huán)境Windows的系統(tǒng)環(huán)境可以說是千篇一律。這種巨大的一致性讓攻擊者們?cè)诰帉憪阂獯a、病毒或其他諸如此類的東西時(shí)顯得得心應(yīng)手。反過來看一看Linux系統(tǒng)世界里。在這里應(yīng)用程序可以是.deb、.rpm,或源代碼,以及其它諸如此類的等等。這種差異性讓攻擊者們很難在Linux系統(tǒng)上獲得像windows系統(tǒng)那樣廣泛的影響。最后,但確是最重要的,你必須時(shí)刻記住,系統(tǒng)的安全性最終還是掌握在用戶手中的。一位有經(jīng)驗(yàn)的用戶可以安全的使用window操作系統(tǒng),而一位無知的用戶則能讓基于OpenBSD的系統(tǒng)都千瘡百孔。因此,歸根結(jié)底,用戶才是系統(tǒng)安全的核心。3.4.3常見漏洞的安全性首先我們先普及一下什么是系統(tǒng)漏洞:系統(tǒng)漏洞(Systemvulnerabilities)是指應(yīng)用軟件或操作系統(tǒng)軟件在邏輯設(shè)計(jì)上的缺陷或錯(cuò)誤,被不法者利用,通過網(wǎng)絡(luò)植入木馬、病毒等方式來攻擊或控制整個(gè)電腦,竊取電腦中的重要資料和信息,甚至破壞系統(tǒng)。在不同種類的軟、硬件設(shè)備,同種設(shè)備的不同版本之間,由不同設(shè)備構(gòu)成的不同系統(tǒng)之間,以及同種系統(tǒng)在不同的設(shè)置條件下,都會(huì)存在各自不同的安全漏洞問題。3.4.3常見漏洞的安全性漏洞會(huì)影響到的范圍很大,包括系統(tǒng)本身及其支撐軟件,網(wǎng)絡(luò)客戶和服務(wù)器軟件,網(wǎng)絡(luò)路由器和安全防火墻等。換而言之,在這些不同的軟硬件設(shè)備中都可能存在不同的安全漏洞問題。在不同種類的軟、硬件設(shè)備,同種設(shè)備的不同版本之間,由不同設(shè)備構(gòu)成的不同系統(tǒng)之間,以及同種系統(tǒng)在不同的設(shè)置條件下,都會(huì)存在各自不同的安全漏洞問題。3.4.3常見漏洞的安全性與Windows相比,Linux被認(rèn)為具有更好的安全性和其他擴(kuò)展性能。這些特性使得Linux在操作系統(tǒng)領(lǐng)域異軍突起,得到越來越多的重視。隨著Linux應(yīng)用量的增加,其安全性也逐漸受到了公眾甚或黑客的關(guān)注。那么,Linux是否真的如其支持廠商們所宣稱的那樣安全呢?3.4.3常見漏洞的安全性Linux內(nèi)核精短、穩(wěn)定性高、可擴(kuò)展性好、硬件需求低、免費(fèi)、網(wǎng)絡(luò)功能豐富、適用于多種CPU等特性,使之在操作系統(tǒng)領(lǐng)域異軍突起。其獨(dú)特的魅力使它不僅在pc機(jī)上占據(jù)一定的份額,而且越來越多地被使用在各種嵌入式設(shè)備中,并被當(dāng)作專業(yè)的路由器,防火墻,或者高端的服務(wù)器OS來使用。各種類型的Linux發(fā)行版本也如雨后春筍般冒了出來,國內(nèi)更是掀起了Linux的使用熱潮,很多政府部門因安全需要也被要求使用Linux。正是因?yàn)長inux被越來越多地使用,其安全性也漸漸受到了公眾的關(guān)注,當(dāng)然,也更多地受到了黑客的關(guān)注。通常,我們討論Linux系統(tǒng)安全都是從Linux安全配置的角度或者Linux的安全特性等方面來討論的,而這一次我們轉(zhuǎn)換一下視角,從Linux系統(tǒng)中存在的漏洞與這些漏洞產(chǎn)生的影響來討論Linux的安全性。3.4.3常見漏洞的安全性首先來說明一下這次我們討論Linux系統(tǒng)安全的范圍,其實(shí)通常我們所說的Linux是指GNU/Linux系統(tǒng),Linux是系統(tǒng)中使用的操作系統(tǒng)內(nèi)核。這一次我們重點(diǎn)從Linux系統(tǒng)內(nèi)核中存在的幾類非常有特點(diǎn)的漏洞來討論Linux系統(tǒng)的安全性。3.4.3常見漏洞的安全性1)權(quán)限提升類漏洞一般來說,利用系統(tǒng)上一些程序的邏輯缺陷或緩沖區(qū)溢出的手段,攻擊者很容易在本地獲得Linux服務(wù)器上管理員權(quán)限r(nóng)oot,在一些遠(yuǎn)程的情況下,攻擊者會(huì)利用一些以root身份執(zhí)行的有缺陷的系統(tǒng)守護(hù)進(jìn)程來取得root權(quán)限,或利用有缺陷的服務(wù)進(jìn)程漏洞來取得普通用戶權(quán)限用以遠(yuǎn)程登錄服務(wù)器。目前很多Linux服務(wù)器都用關(guān)閉各種不需要的服務(wù)和進(jìn)程的方式來提升自身的安全性,但是只要這個(gè)服務(wù)器上運(yùn)行著某些服務(wù),攻擊者就可以找到權(quán)限提升的途徑。下面是一個(gè)比較新的導(dǎo)致權(quán)限提升的漏洞。
do_brk()邊界檢查不充分漏洞在2003年9月份被Linux內(nèi)核開發(fā)人員發(fā)現(xiàn),并在9月底發(fā)布的Linuxkernel2.6.0-test6中對(duì)其進(jìn)行了修補(bǔ)。但是Linux內(nèi)核開發(fā)人員并沒有意識(shí)到此漏洞的威脅,所以沒有做任何通報(bào),一些安全專家與黑客卻看到了此漏洞蘊(yùn)涵的巨大威力。在2003年11月黑客利用rsync中一個(gè)未公開的堆溢出與此漏洞配合,成功地攻擊了多臺(tái)Debian與GentooLinux的服務(wù)器。3.4.3常見漏洞的安全性下面讓我們簡單描述一下該漏洞。該漏洞被發(fā)現(xiàn)于brk系統(tǒng)調(diào)用中。brk系統(tǒng)調(diào)用可以對(duì)用戶進(jìn)程的堆的大小進(jìn)行操作,使堆擴(kuò)展或者縮小。而brk內(nèi)部就是直接使用do_brk()函數(shù)來做具體的操作,do_brk()函數(shù)在調(diào)整進(jìn)程堆的大小時(shí)既沒有對(duì)參數(shù)len進(jìn)行任何檢查(不檢查大小也不檢查正負(fù)),也沒有對(duì)addr+len是否超過TASK_SIZE做檢查。這樣我們就可以向它提交任意大小的參數(shù)len,使用戶進(jìn)程的大小任意改變以至可以超過TASK_SIZE的限制,使系統(tǒng)認(rèn)為內(nèi)核范圍的內(nèi)存空間也是可以被用戶訪問的,這樣的話普通用戶就可以訪問到內(nèi)核的內(nèi)存區(qū)域。通過一定的操作,攻擊者就可以獲得管理員權(quán)限。這個(gè)漏洞極其危險(xiǎn),利用這個(gè)漏洞可以使攻擊者直接對(duì)內(nèi)核區(qū)域操作,可以繞過很多Linux系統(tǒng)下的安全保護(hù)模塊。此漏洞的發(fā)現(xiàn)提出了一種新的漏洞概念,即通過擴(kuò)展用戶的內(nèi)存空間到系統(tǒng)內(nèi)核的內(nèi)存空間來提升權(quán)限。當(dāng)發(fā)現(xiàn)這種漏洞時(shí),通過研究我們就認(rèn)為內(nèi)核中一定還會(huì)存在類似的漏洞,果然幾個(gè)月后黑客們又在Linux內(nèi)核中發(fā)現(xiàn)與brk相似的漏洞。通過這次成功的預(yù)測(cè),更證實(shí)了對(duì)這種新型的概念型漏洞進(jìn)行研究很有助于安全人員在系統(tǒng)中發(fā)現(xiàn)新的漏洞。3.4.3常見漏洞的安全性2)拒絕服務(wù)類漏洞拒絕服務(wù)攻擊是目前比較流行的攻擊方式,它并不取得服務(wù)器權(quán)限,而是使服務(wù)器崩潰或失去響應(yīng)。對(duì)Linux的拒絕服務(wù)大多數(shù)都無須登錄即可對(duì)系統(tǒng)發(fā)起拒絕服務(wù)攻擊,使系統(tǒng)或相關(guān)的應(yīng)用程序崩潰或失去響應(yīng)能力,這種方式屬于利用系統(tǒng)本身漏洞或其守護(hù)進(jìn)程缺陷及不正確設(shè)置進(jìn)行攻擊。另外一種情況,攻擊者登錄到Linux系統(tǒng)后,利用這類漏洞,也可以使系統(tǒng)本身或應(yīng)用程序崩潰。這種漏洞主要由程序?qū)σ馔馇闆r的處理失誤引起,如寫臨時(shí)文件之前不檢查文件是否存在,盲目跟隨鏈接等。下面,我們簡單描述一下Linux在處理intelIA386CPU中的寄存器時(shí)發(fā)生錯(cuò)誤而產(chǎn)生的拒絕服務(wù)漏洞。該漏洞是因?yàn)镮A386多媒體指令使用的寄存器MXcsR的特性導(dǎo)致的。由于IA386CPU規(guī)定MXCSR寄存器的高16位不能有任何位被置位,否則CPU就會(huì)報(bào)錯(cuò)導(dǎo)致系統(tǒng)崩潰。為了保證系統(tǒng)正常運(yùn)轉(zhuǎn),在linux系統(tǒng)中有一段代碼專門對(duì)MXCSR的這個(gè)特性作處理,而這一段代碼在特定的情況下會(huì)出現(xiàn)錯(cuò)誤,導(dǎo)致MXCSR中的高16位沒有被清零,使系統(tǒng)崩潰。如果攻擊者制造了這種“極限”的內(nèi)存情況就會(huì)對(duì)系統(tǒng)產(chǎn)生DOS效果。3.4.3常見漏洞的安全性攻擊者通過調(diào)用get_fpxregs函數(shù)可以讀取多媒體寄存器至用戶空間,這樣用戶就可以取得MXCSR寄存器的值。調(diào)用set_fpxregs函數(shù)可以使用用戶空間提供的數(shù)據(jù)對(duì)MXCSR寄存器進(jìn)行賦值。通過對(duì)MXCSR的高16位進(jìn)行清0,就保證了IA386CPU的這個(gè)特性。如果產(chǎn)生一種極限效果使程序跳過這一行,使MXCSR寄存器的高16位沒有被清0,一旦MXCSR寄存器的高16位有任何位被置位,系統(tǒng)就會(huì)立即崩潰!因?yàn)槔眠@個(gè)漏洞攻擊者還需要登錄到系統(tǒng),這個(gè)漏洞也不能使攻擊者提升權(quán)限,只能達(dá)到DOS的效果,所以這個(gè)漏洞的危害還是比較小的。但是分析這個(gè)漏洞就沒有意義了嗎?其實(shí)由分析這個(gè)漏洞可以看出:Linux內(nèi)核開發(fā)成員對(duì)這種內(nèi)存拷貝時(shí)出現(xiàn)錯(cuò)誤的情況沒有進(jìn)行考慮,以至造成了這個(gè)漏洞,分析了解了這個(gè)漏洞后,在漏洞挖掘方面也出現(xiàn)了一種新的類型,使我們?cè)谝院蟮拈_發(fā)中可以盡量避免這種情況。3.4.3常見漏洞的安全性3)Linux內(nèi)核算法上出現(xiàn)的漏洞。先來簡單介紹一下這個(gè)漏洞,當(dāng)Linux系統(tǒng)接收到攻擊者經(jīng)過特殊構(gòu)造的包后,會(huì)引起hash表產(chǎn)生沖突導(dǎo)致服務(wù)器資源被耗盡。這里所說的hash沖突就是指:許多數(shù)值經(jīng)過某種hash算法運(yùn)算以后得出的值相同,并且這些值都被儲(chǔ)存在同一個(gè)hash槽內(nèi),這就使hash表變成了一個(gè)單向鏈表。而對(duì)此hash表的插入操作會(huì)從原來的復(fù)雜度O(n)變?yōu)镺(n*n)。這樣就會(huì)導(dǎo)致系統(tǒng)消耗巨大的CPU資源,從而產(chǎn)生了DOS攻擊效果。我們先看一下在Linux中使用的hash算法,這個(gè)算法用在對(duì)Linuxroutecatch的索引與分片重組的操作中。在RiceUniversity計(jì)算機(jī)科學(xué)系的ScottA.Crosby與DanS.Wallach提出了一種新的低帶寬的DOS攻擊方法,即針對(duì)應(yīng)用程序所使用的hash算法的脆弱性進(jìn)行攻擊。這種方法提出:如果應(yīng)用程序使用的hash算法存在弱點(diǎn),也就是說hash算法不能有效地把數(shù)據(jù)進(jìn)行散列,攻擊者就可以通過構(gòu)造特殊的值使hash算法產(chǎn)生沖突引起DOS攻擊。3.4.3常見漏洞的安全性static__inline__unsignedrt_hash_code(u32daddr,u32saddr,u8tos)
{
unsignedhash=((daddr&0xF0F0F0F0)>>4)│
((daddr&0x0F0F0F0F)<<4);
hash^=saddr^tos;
hash^=(hash>>16);
return(hash^(hash>>8))&rt_hash_mask;
}以上的代碼就是Linux對(duì)IP包進(jìn)行路由或者重組時(shí)使用的算法。此算法由于過于簡單而不能把route緩存進(jìn)行有效的散列,從而產(chǎn)生了DOS漏洞。下面我們來分析一下此函數(shù)。3.4.3常見漏洞的安全性01行為此函數(shù)的函數(shù)名與入口參數(shù),u32daddr為32位的目的地址,而u32saddr為32位的原地址,tos為協(xié)議。
03行-04行是把目標(biāo)地址前后字節(jié)進(jìn)行轉(zhuǎn)換。
05行把原地址與tos進(jìn)行異或后再與hash異或然后再賦值給hash.06行把hash的值向右偏移16位然后與hash異或再賦值給hash.07行是此函數(shù)返回hash與它本身向右偏移8位的值異或,然后再跟rt_hash_mask進(jìn)行與操作的值。3.4.3常見漏洞的安全性這種攻擊是一種較為少見的拒絕服務(wù)方式,因?yàn)樗昧讼到y(tǒng)本身的算法中的漏洞。該漏洞也代表了一種新的漏洞發(fā)掘的方向,就是針對(duì)應(yīng)用軟件或者系統(tǒng)使用的hash算法進(jìn)行漏洞挖掘。因此,這種針對(duì)hash表攻擊的方法對(duì)不僅對(duì)Linux,而且會(huì)對(duì)很多應(yīng)用軟件產(chǎn)生影響,比如說Perl5在這個(gè)perl的版本中使用的hash算法就容易使攻擊者利用精心篩選的數(shù)據(jù),使用perl5進(jìn)行編程的應(yīng)用程序使用的hash表產(chǎn)生hash沖突,包括一些代理服務(wù)器軟件,甚至一些IDS軟件,防火墻等,因使用的是Linux內(nèi)核都會(huì)被此種攻擊影響。3.4.3常見漏洞的安全性
Linux內(nèi)核中的整數(shù)溢出漏洞
LinuxKernel2.4NFSv3XDR處理器例程遠(yuǎn)程拒絕服務(wù)漏洞在2003年7月29日公布,影響LinuxKernel2.4.21以下的所有Linux內(nèi)核版本。
該漏洞存在于XDR處理器例程中,相關(guān)內(nèi)核源代碼文件為nfs3xdr.c.此漏洞是由于一個(gè)整形漏洞引起的(正數(shù)/負(fù)數(shù)不匹配)。攻擊者可以構(gòu)造一個(gè)特殊的XDR頭(通過設(shè)置變量intsize為負(fù)數(shù))發(fā)送給Linux系統(tǒng)即可觸發(fā)此漏洞。當(dāng)Linux系統(tǒng)的NFSv3XDR處理程序收到這個(gè)被特殊構(gòu)造的包時(shí),程序中的檢測(cè)語句會(huì)錯(cuò)誤地判斷包的大小,從而在內(nèi)核中拷貝巨大的內(nèi)存,導(dǎo)致內(nèi)核數(shù)據(jù)被破壞,致使Linux系統(tǒng)崩潰。3.4.3常見漏洞的安全性漏洞代碼:staticinlineu32*
decode_fh(u32*p,structsvc_fh*fhp)
{
intsize;
fh_init(fhp,NFS3_FHSIZE);
size=ntohl(*p++);
if(size>NFS3_FHSIZE)
returnNULL;
memcpy(&fhp->fh_handle.fh_base,p,size);fhp->fh_handle.fh_size=size;
returnp+XDR_QUADLEN(size);
}因?yàn)榇藘?nèi)存拷貝時(shí)在內(nèi)核內(nèi)存區(qū)域中進(jìn)行,會(huì)破壞內(nèi)核中的數(shù)據(jù)導(dǎo)致內(nèi)核崩潰,所以此漏洞并沒有證實(shí)可以用來遠(yuǎn)程獲取權(quán)限,而且利用此漏洞時(shí)攻擊者必須可以mount此系統(tǒng)上的目錄,更為利用此漏洞增加了困難。我們的目的在于通過這個(gè)漏洞的特點(diǎn)來尋找此種類型的漏洞并更好地修補(bǔ)它。大家可以看到,該漏洞是一個(gè)非常典型的整數(shù)溢出漏洞,如果在內(nèi)核中存在這樣的漏洞是非常危險(xiǎn)的。所以Linux的內(nèi)核開發(fā)人員對(duì)Linux內(nèi)核中關(guān)于數(shù)據(jù)大小的變量都作了處理(使用了unsignedint),這樣就避免了再次出現(xiàn)這種典型的整數(shù)溢出。通過對(duì)這種特別典型的漏洞原理進(jìn)行分析,開發(fā)人員可以在以后的開發(fā)中避免出現(xiàn)這種漏洞。3.4.3常見漏洞的安全性IP地址欺騙類漏洞由于tcp/ip本身的缺陷,導(dǎo)致很多操作系統(tǒng)都存在Tcp/ip堆棧漏洞,使攻擊者進(jìn)行ip地址欺騙非常容易實(shí)現(xiàn)。Linux也不例外。雖然IP地址欺騙不會(huì)對(duì)Linux服務(wù)器本身造成很嚴(yán)重的影響,但是對(duì)很多利用Linux為操作系統(tǒng)的防火墻和IDS產(chǎn)品來說,這個(gè)漏洞卻是致命的。3.4.3常見漏洞的安全性
IP地址欺騙是很多攻擊的基礎(chǔ),之所以使用這個(gè)方法,是因?yàn)镮P自身的缺點(diǎn)。IP協(xié)議依據(jù)IP頭中的目的地址項(xiàng)來發(fā)送IP數(shù)據(jù)包。如果目的地址是本地網(wǎng)絡(luò)內(nèi)的地址,該IP包就被直接發(fā)送到目的地。如果目的地址不在本地網(wǎng)絡(luò)內(nèi),該IP包就會(huì)被發(fā)送到網(wǎng)關(guān),再由網(wǎng)關(guān)決定將其發(fā)送到何處。這是IP路由IP包的方法。IP路由IP包時(shí)對(duì)IP頭中提供的IP源地址不做任何檢查,認(rèn)為IP頭中的IP源地址即為發(fā)送該包的機(jī)器的IP地址。當(dāng)接收到該包的目的主機(jī)要與源主機(jī)進(jìn)行通信時(shí),它以接收到的IP包的IP頭中IP源地址作為其發(fā)送的IP包的目的地址,來與源主機(jī)進(jìn)行數(shù)據(jù)通信。IP的這種數(shù)據(jù)通信方式雖然非常簡單和高效,但它同時(shí)也是IP的一個(gè)安全隱患,很多網(wǎng)絡(luò)安全事故都是由IP的這個(gè)缺點(diǎn)而引發(fā)的。3.4.3常見漏洞的安全性黑客或入侵者利用偽造的IP發(fā)送地址產(chǎn)生虛假的數(shù)據(jù)分組,喬裝成來自內(nèi)部站的分組過濾器,這種類型的攻擊是非常危險(xiǎn)的。關(guān)于涉及到的分組真正是內(nèi)部的,還是外部的分組被包裝得看起來像內(nèi)部分組的種種跡象都已喪失殆盡。只要系統(tǒng)發(fā)現(xiàn)發(fā)送地址在自己的范圍之內(nèi),就把該分組按內(nèi)部通信對(duì)待并讓其通過。通常主機(jī)A與主機(jī)B的TCP連接是通過主機(jī)A向主機(jī)B提出請(qǐng)求建立起來的,而其間A和B的確認(rèn)僅僅根據(jù)由主機(jī)A產(chǎn)生并經(jīng)主機(jī)B驗(yàn)證的初始序列號(hào)ISN.具體分三個(gè)步驟。主機(jī)A產(chǎn)生它的ISN,傳送給主機(jī)B,請(qǐng)求建立連接;B接收到來自A的帶有SYN標(biāo)志的ISN后,將自己本身的ISN連同應(yīng)答信息ACK一同返回給A;A再將B傳送來的ISN及應(yīng)答信息ACK返回給B.至此,正常情況下,主機(jī)A與B的TCP連接就建立起來了。3.4.3常見漏洞的安全性
B——SYN——>A
B<——SYN+ACK——A
B——ACK——>A假設(shè)C企圖攻擊A,因?yàn)锳和B是相互信任的,如果C已經(jīng)知道了被A信任的B,那么就要想辦法使得B的網(wǎng)絡(luò)功能癱瘓,防止別的東西干擾自己的攻擊。在這里普遍使用的是SYNflood.攻擊者向被攻擊主機(jī)發(fā)送許多TCP-SYN包。這些TCP-SYN包的源地址并不是攻擊者所在主機(jī)的IP地址,而是攻擊者自己填入的IP地址。當(dāng)被攻擊主機(jī)接收到攻擊者發(fā)送來的TCP-SYN包后,會(huì)為一個(gè)TCP連接分配一定的資源,并且會(huì)以接收到的數(shù)據(jù)包中的源地址(即攻擊者自己偽造的IP地址)為目的地址向目的主機(jī)發(fā)送TCP-(SYN+ACK)應(yīng)答包。由于攻擊者自己偽造的IP地址一定是精心選擇的不存在的地址,所以被攻擊主機(jī)永遠(yuǎn)也不可能收到它發(fā)送出去的TCP-(SYN+ACK)包的應(yīng)答包,因而被攻擊主機(jī)的TCP狀態(tài)機(jī)處于等待狀態(tài)。如果被攻擊主機(jī)的TCP狀態(tài)機(jī)有超時(shí)控制的話,直到超時(shí),為該連接分配的資源才會(huì)被回收。因此如果攻擊者向被攻擊主機(jī)發(fā)送足夠多的TCP-SYN包,并且足夠快,被攻擊主機(jī)的TCP模塊肯定會(huì)因?yàn)闊o法為新的TCP連接分配到系統(tǒng)資源而處于服務(wù)拒絕狀態(tài)。即使被攻擊主機(jī)所在網(wǎng)絡(luò)的管理員監(jiān)聽到了攻擊者的數(shù)據(jù)包也無法依據(jù)IP頭的源地址信息判定攻擊者是誰。3.4.3常見漏洞的安全性當(dāng)B的網(wǎng)絡(luò)功能暫時(shí)癱瘓時(shí),C必須想方設(shè)法確定A當(dāng)前的ISN.首先連向25端口,因?yàn)镾MTP是沒有安全校驗(yàn)機(jī)制的,與前面類似,不過這次需要記錄A的ISN,以及C到A的大致的RTT(roundtriptime)。這個(gè)步驟要重復(fù)多次以便求出RTT的平均值。一旦C知道了A的ISN基值和增加規(guī)律,就可以計(jì)算出從C到A需要RTT/2的時(shí)間。然后立即進(jìn)入攻擊,否則在這之間有其他主機(jī)與A連接,ISN將比預(yù)料的多。3.4.3常見漏洞的安全性C向A發(fā)送帶有SYN標(biāo)志的數(shù)據(jù)段請(qǐng)求連接,只是信源IP改成了B.A向B回送SYN+ACK數(shù)據(jù)段,B已經(jīng)無法響應(yīng),B的TCP層只是簡單地丟棄A的回送數(shù)據(jù)段。這個(gè)時(shí)候C需要暫停一小會(huì)兒,讓A有足夠時(shí)間發(fā)送SYN+ACK,因?yàn)镃看不到這個(gè)包。然后C再次偽裝成B向A發(fā)送ACK,此時(shí)發(fā)送的數(shù)據(jù)段帶有C預(yù)測(cè)的A的ISN+1.如果預(yù)測(cè)準(zhǔn)確,連接建立,數(shù)據(jù)傳送開始。問題在于即使連接建立,A仍然會(huì)向B發(fā)送數(shù)據(jù),而不是C,C仍然無法看到A發(fā)往B的數(shù)據(jù)段,C必須蒙著頭按照協(xié)議標(biāo)準(zhǔn)假冒B向A發(fā)送命令,于是攻擊完成。如果預(yù)測(cè)不準(zhǔn)確,A將發(fā)送一個(gè)帶有RST標(biāo)志的數(shù)據(jù)段異常終止連接,C只有從頭再來。隨著不斷地糾正預(yù)測(cè)的ISN,攻擊者最終會(huì)與目標(biāo)主機(jī)建立一個(gè)會(huì)晤。通過這種方式,攻擊者以合法用戶的身份登錄到目標(biāo)主機(jī)而不需進(jìn)一步的確認(rèn)。如果反復(fù)試驗(yàn)使得目標(biāo)主機(jī)能夠接收對(duì)網(wǎng)絡(luò)的ROOT登錄,那么就可以完全控制整個(gè)網(wǎng)絡(luò)。3.4.3常見漏洞的安全性
C(B)——SYN——>A
B<——SYN+ACK——A
C(B)——ACK——>A
C(B)——PSH——>A
IP欺騙攻擊利用了RPC服務(wù)器僅僅依賴于信源IP地址進(jìn)行安全校驗(yàn)的特性,攻擊最困難的地方在于預(yù)測(cè)A的ISN.攻擊難度比較大,但成功的可能性也很大。C必須精確地預(yù)見可能從A發(fā)往B的信息,以及A期待來自B的什么應(yīng)答信息,這要求攻擊者對(duì)協(xié)議本身相當(dāng)熟悉。同時(shí)需要明白,這種攻擊根本不可能在交互狀態(tài)下完成,必須寫程序完成。當(dāng)然在準(zhǔn)備階段可以用netxray之類的工具進(jìn)行協(xié)議分析。3.4.3常見漏洞的安全性總結(jié)通過分析上面的幾個(gè)漏洞大家也可以看到Linux并不是完美的,還有很多的地方需要完善。有些漏洞極大地影響了Linux的推廣和使用,例如上面那個(gè)Linuxhash表沖突的漏洞,因?yàn)橐恍㊣DS廠商和防火墻廠商就是基于Linux內(nèi)核來開發(fā)自己的產(chǎn)品,如果還是使用的Linux本身的hash算法就會(huì)受到這種漏洞的影響,極易被攻擊者進(jìn)行DoS攻擊。因?yàn)榉阑饓ΑDS本身就是安全產(chǎn)品,如果它們被攻擊就會(huì)使用戶產(chǎn)生極大的損失,所以我們需要對(duì)這些漏洞進(jìn)行跟蹤分析,并通過了解它們的特性以避免在系統(tǒng)中再次產(chǎn)生這些類型的漏洞,通過對(duì)這些類型的漏洞進(jìn)行預(yù)測(cè)挖掘,使我們能積極地防御黑客的攻擊破壞。3.4.3SELinuxSELinux(SecureEnhancedLinux)安全增強(qiáng)Linux是由NSA針對(duì)計(jì)算機(jī)基礎(chǔ)結(jié)構(gòu)安全開發(fā)的一個(gè)全新的Linux安全策略機(jī)制。SELinux允許管理員更加靈活的定義安全策略。3.4.3SELinux1)SELinux是一個(gè)內(nèi)核級(jí)的安全機(jī)制,從2.6內(nèi)核之后集成在內(nèi)核當(dāng)中Linux發(fā)行版本都會(huì)集成SELinux機(jī)制,CentOS/RHEL默認(rèn)會(huì)開啟SELinux。因?yàn)镾ELinux是內(nèi)核級(jí)機(jī)制,所以對(duì)SELinux的修改一般需要重新啟動(dòng)。2)所有的安全機(jī)制都是對(duì)兩樣?xùn)|西做出限制:域(doman)和上下文(context)·域用來對(duì)進(jìn)程進(jìn)行限制·上下文用來對(duì)系統(tǒng)資源進(jìn)行限制d'd3)SELinux的通過定義策略來控制那些域可以訪問哪些上下文。SELinux有很多預(yù)置策略,我們通常不需要自定義策略(除非我們需要對(duì)自定義服務(wù),程序進(jìn)行保護(hù))3.4.3SELinuxCentOS、RHEL使用預(yù)置的目標(biāo)策略目標(biāo)(target)策略定義只有目標(biāo)的進(jìn)程受到SELinux限制,其他進(jìn)程運(yùn)行在非限制模式下。目標(biāo)策略只影響網(wǎng)絡(luò)應(yīng)用程序。在centOS/RHEL中1,受限制的網(wǎng)絡(luò)服務(wù)程序在200左右,常見的有-dhcpd-ntpd-httpd-rpcbind-mysqld-squld-nomed-syslogd3.4.3SELinuxSELinux有三種工作模式:1)-強(qiáng)制(enforcing)違反策略的行動(dòng)都被禁止,并作為內(nèi)核信息記錄。2)-允許(permissive)違反策略的行動(dòng)都不被禁止,但是會(huì)產(chǎn)生警告信息3)-禁用(disabled)禁用SELinux,與不帶SELinux功能的系統(tǒng)一樣3.4.3SELinux·SELinux模式的配置文件為/etc/sysconfig/selinuxSELINUX=permissive·命令getenforce可以查看當(dāng)前SELinux工作狀態(tài):getenforce·命令setenforce可以設(shè)置當(dāng)前SELinux工作狀態(tài):setenforce[0|1]·命令ps,ls加入加入-Z參數(shù)就可以顯示對(duì)應(yīng)的SELinux信息,顯示的信息類似system_u:object_r:httpd_exec-t:s03.4.3SELinux·SELinux模式的配置文件為/etc/sysconfig/selinuxSELINUX=permissive·命令getenforce可以查看當(dāng)前SELinux工作狀態(tài):getenforce·命令setenforce可以設(shè)置當(dāng)前SELinux工作狀態(tài):setenforce[0|1]·命令ps,ls加入加入-Z參數(shù)就可以顯示對(duì)應(yīng)的SELinux信息,顯示的信息類似system_u:object_r:httpd_exec-t:s03.4.3SELinuxSELinux策略規(guī)定那些域(進(jìn)程)可以訪問哪些上下文(文件)在對(duì)系統(tǒng)進(jìn)行管理的時(shí)候,對(duì)文件的操作有時(shí)候會(huì)改變文件的上下文,導(dǎo)致一些進(jìn)程無法訪問某些文件,所以我們一般需要檢查,修改文件的上下文命令restorecon可以用以恢復(fù)文件默認(rèn)的上下文restorecon-R-v/var/www命令chcon可以用以改變文件的上下文chcon—reference=etc/named.conf.orig/etc/named.conf3.4.3SELinux一、SElinux常用命令1)查看安全上下文ls
-Z
ps
-Z
2)更改安全上下文
chcon
-t
tmp_t
/etc/hosts
chcon
-t
public_content_rw_t
/var/ftp/incoming
3)恢復(fù)系統(tǒng)的默認(rèn)上下文
restorecon
/etc/hosts
4)查看和設(shè)置selinux級(jí)別
getenforcesetenforce
system-config-selinux
3.4.3SELinux5)selinux幫助工具
安裝setroubleshootd
用sealert
-b打開這個(gè)圖形工具
6)selinux策略管理工具
列出文件上下文
semanage
fcontext
-l
|
grep
ftp
7)setroubleshoot
client
tool
查看警告id
sealert
-l
05d
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024-2030年中國室內(nèi)門行業(yè)發(fā)展現(xiàn)狀及前景趨勢(shì)分析報(bào)告
- 2024-2030年中國地波那非酮項(xiàng)目可行性研究報(bào)告
- 2024-2030年中國雙耳環(huán)行業(yè)發(fā)展?fàn)顩r規(guī)劃分析報(bào)告
- 眉山職業(yè)技術(shù)學(xué)院《系統(tǒng)仿真技術(shù)》2023-2024學(xué)年第一學(xué)期期末試卷
- 2024年版風(fēng)力發(fā)電項(xiàng)目施工合同詳細(xì)條款
- 馬鞍山職業(yè)技術(shù)學(xué)院《納米科學(xué)技術(shù)導(dǎo)論》2023-2024學(xué)年第一學(xué)期期末試卷
- 呂梁學(xué)院《藥物化學(xué)(I)》2023-2024學(xué)年第一學(xué)期期末試卷
- 2024年建筑行業(yè)工程承包協(xié)議更新版版B版
- 2021-2022學(xué)年云南省文山壯族苗族自治州高一上學(xué)期期中語文試題
- 洛陽商業(yè)職業(yè)學(xué)院《小學(xué)數(shù)學(xué)教學(xué)設(shè)計(jì)與技能訓(xùn)練》2023-2024學(xué)年第一學(xué)期期末試卷
- 2022年度尾礦庫安全風(fēng)險(xiǎn)辨識(shí)及分級(jí)管控表
- 職業(yè)學(xué)院食品藥品監(jiān)督管理專業(yè)核心課《企業(yè)管理》課程標(biāo)準(zhǔn)
- 投標(biāo)項(xiàng)目進(jìn)度計(jì)劃
- 關(guān)于發(fā)展鄉(xiāng)村產(chǎn)業(yè)的建議
- 登泰山記-教學(xué)課件
- 2024版水電費(fèi)繳費(fèi)協(xié)議范本
- 北師大版四年級(jí)數(shù)學(xué)上冊(cè)第五單元《方向與位置》(大單元教學(xué)設(shè)計(jì))
- 2024年西安交大少年班選拔考試語文試卷試題(含答案詳解)
- 2024年云南省昆明滇中新區(qū)公開招聘20人歷年重點(diǎn)基礎(chǔ)提升難、易點(diǎn)模擬試題(共500題)附帶答案詳解
- 2024年國開思政課《馬克思主義基本原理》大作業(yè)、形考及學(xué)習(xí)行為表現(xiàn)試題及答案請(qǐng)理論聯(lián)系實(shí)際談一談你對(duì)實(shí)踐的理解
- 2024屆浙江高考英語寫作分類訓(xùn)練:建議信(含答案)
評(píng)論
0/150
提交評(píng)論