1. acl許可權
acl(access control list)用來設定使用者(除所有者,所屬組,其他組之外的使用者或組)針對檔案的讀、寫、執行許可權。
# getfacl 檔名 # 檢視acl許可權
# setfacl 選項 檔名 #設定acl許可權選項
舉例:我們要求 root 是 /acltest 目錄的屬主,許可權是 rwx;tgroup 是此目錄的屬組,tgroup 組中擁有班級學員 zhangsan 和 lisi,許可權是 rwx;其他人的許可權是 0。這時,試聽學員 st 來了,她的許可權是 r-x。
[root@localhost ~]# mkdir acltest
[root@localhost ~]# chmod 770 alctest
[root@localhost ~]# useradd zhangsan
[root@localhost ~]# useradd lisi
[root@localhost ~]# groupadd tgroup
[root@localhost ~]# gpasswd -a zhangsan tgroup #將張三加入troup組
[root@localhost ~]# gpasswd -a lisi tgroup
[root@localhost ~]# chown root:tgroup acltest #將acltest的所屬組改為tgoup
[root@localhost ~]# ll -d acltest
drwxrwx---. 2 root tgroup 4096 jan 9 16:17 acltest
[root@localhost ~]# useradd st
[root@localhost ~]# setfacl -m u:st:rx acltest # 給使用者st 賦acl許可權
[root@localhost ~]# ll -d acltest
drwxrwx---+ 2 root tgroup 4096 jan 9 16:17 acltest
[root@localhost ~]# getfacl acltest
# file: acltest/
# owner: root
# group: tgroup
user::rwx
user:st:r-x
group::rwx
mask::rwx
other::---
#給組新增acl許可權
[root@localhost ~]# groupadd tgroup2
[root@localhost ~]# setfacl -m g:tgroup2:rx acltest
[root@localhost ~]# getfacl acltest
# file: acltest
# owner: root
# group: tgroup
user::rwx
user:st:r-x
group::rwx
group:tgroup2:r-x
mask::rwx
other::---
#設定預設acl許可權
[root@localhost ~]# setfacl -d u:st:rx acltest
[root@localhost ~]# getfacl acltest
# file: acltest
# owner: root
# group: tgroup
user::rwx
user:st:r-x
group::rwx
group:tgroup2:r-x
mask::rwx
other::---
default:user::rwx
default:user:st:r-x
default:group::rwx
default:mask::rwx
default:other::---
#設定遞迴acl許可權
[root@localhost ~]# setfacl -m u:st:rx -r acltest
#刪除指定的acl許可權
[root@localhost ~]# setfacl -d u:st acltest
#刪除所有acl許可權
[root@localhost ~]# setfacl -x acltest
2.setuid、setgid、stick bit 檔案特殊許可權
setuid: 檔案在擁有setuid許可權後,普通使用者在執行該檔案過程中,可以獲得檔案所有者的許可權。表現為:檔案所有者的x(執行)許可權位置出現乙個小寫s。
[root@localhost ~]#ll /usr/bin/passwd
-rwsr-xr-x 1 root root 25980 2月22 2012/usr/bin/passwd
setgid:執行者在執行程式的時候,組身份公升級為改程式檔案的所屬組。同樣setgid許可權只在程式執行過程中有效。
表現為:檔案所屬組的x(執行)許可權位置出現乙個小寫s。
[root@localhost ~]# ll /usr/bin/locate
-rwx--s--x 1 root slocate 35612 8月24 2010/usr/bin/locate
sticky bit: 意為粘著位(或粘滯位),也簡稱為 sbit。粘著位只對目錄有效。普通使用者擁有 w 許可權時,可以刪除此目錄下的所有檔案,包括其他使用者建立的檔案。一旦被賦予了粘著位,除了 root 可以刪除所有檔案,普通使用者就算擁有 w 許可權,也只能刪除自己建立的檔案,而不能刪除其他使用者建立的檔案。
表現為:其他組的x(執行)許可權位置出現乙個t
[root@localhost ~]# ll -d /tmp/
drwxrwxrwt 4 root root 4096 1月20 06:17 /tmp/
這幾種檔案特殊許可權的設定:
特殊許可權的設定還是使用chmod 命令。
數字法: 檔案的普通許可權只有三個數字,特殊許可權的設定用4個數字,其中第乙個數字來表示特殊許可權,後三位為普通許可權(讀、寫、執行)。
[root@localhost ~]# chmod 4755 ftest #賦予setuid許可權
[root@localhost ~]# chmod 1755 dtest/ #賦予 sbit許可權
字元法:
通過"u+s"賦予 setuid 許可權,通過"g+s"賦予 setgid 許可權,通過"o+t"賦予 sbit 許可權。
[root@localhost ~]#chmod u+s, g+s, o+t ftest
#設定特殊許可權
[root@localhost ~]# chmod u-s, g-s, o-t ftest
#取消特殊許可權
注: setuid 只對二進位制程式檔案有效,setgid 可以對二進位制程式檔案和目錄有效,但是 sbit 只對目錄有效。使用者只有在具備x許可權時,特殊許可權才有效,不然即使賦予特殊許可權也沒有任何意義。
3. chattr 命令 修改檔案系統的許可權屬性
chattr只有root使用者可以使用,凌駕於rwx基礎功能之上的授權
# chattr [+-=][選項] 檔案或目錄
選項:
[root@localhost ~]# chattr +i ftest
[root@localhost ~]# chattr -i ftest
4. lsattr 命令 檢視檔案系統屬性
# lsattr 選項 檔名
選項:
TrustedInstaller管理許可權
trustedinstaller.exe實際上是 windows modules installer 這個服務的程序,路徑位於c windows servicing trustedinstaller.exe。當進行windows update,或者安裝某些微軟發布的安裝包時,windows modu...
3 管理許可權
授予物件許可權 在oracle9i前,授予物件許可權是由物件的所有者來完成的,如果用其它的使用者來操作,則需要使用者具有相應的 with grant option 許可權,從oracle9i開始,dba,sys,system 可以將任何物件上的物件許可權授予其它使用者.授予物件許可權是用grant命...
Linux 組管理 許可權
許可權說明 常用 命令 groupadd g 777 組名 建立組並制定gid。命令 groupdel 組名 刪除乙個組。命令 usermod g 組名 使用者名稱 新增使用者到組內。命令 chmod 777檔名 修改檔案許可權 命令 chmod o t 檔名 只能本人與root可以刪除檔案。使用者...