安全上下文:
cat --> /bin/cat
openstack: /bin/cat /etc/fstab
/etc/shadow
openstack, passwd, /etc/shadow
s: suid, set uid,屬主有s權限,意味着使用者在執行此程式時,其程序的屬主不再是發起者本人,而是這個程式檔案的屬主;
s:屬主原有執行權限
S:屬主無執行權限
chmod u(+|-)s /path/to/somefile
s: sgid, set gid,屬組有s權限,意味着執行此程式時,其程序的屬組不再是運作者本人所屬的基本組,而是此程式檔案的屬組;
chmod g+|-s /path/to/somefile
t: sticky, 粘貼位,附加other的權限上,表現為t
t:other原有執行權限
T:other原無執行權限
chmod o+|-t /path/to/somefile
suid,sgid,sticky
ugt 000--------->0
001:--------->1
010:--------->2
100:--------->3
011:--------->4
101:--------->5
110:--------->6
111:--------->7
chmod 6664 /tmp/a.txt 其中6664的第一位的數字6表示:屬主有s權限,屬組有s權限其它無t權限。
umask: 0022
/tmp/test
chmod g+s,o+t /tmp/test
chmod 3775 /tmp/test
chown :mygrp /tmp/test修改組名
FACL: 檔案通路控制清單
hadoop: /var/tmp/test.txt
hadoop, hadoop
hadoop希望能夠讓hive寫此檔案,他該如何進行?因為他不能把hive使用者設定為屬主,并且也不能讓hive加入hadoop組,是以隻能修改other的權限有寫權限;
acl: 用于實作在原有的通路控制機制之外補充一種檔案通路控制機制
使用者通路檔案:
1、使用者是否為檔案屬主?
2、使用者是否有特定的通路控制條目?
3、使用者是否屬于檔案屬組?
4、使用者所屬的組是否有特定的通路控制條目?
5、其它。
getfacl /path/to/somewhere: 檢視檔案或目錄的通路控制清單;
setfacl -m u:USERNAME:MODE /path/to/somewhere: 為USERNAME指定的使用者設定對文 件/path/to/somewhere具有MODE通路權限;
setfacl -m g:GROUPNAME:MODE /path/to/somewhere: 為GROUPNAME指定的組設定對檔案/path/to/somewhere具有MODE通路權限;
setfacl -x u:USERNAME /patn/to/somewhere 取消USERNAME指定的使用者具有s權限
setfacl -x g:GROUPNAME /path/to/somewhere 取消USERNAME指定的組具有s權限
額外挂載的檔案系統預設不支援acl,如果要支援,
方法1:
mount -o acl DEVICE MOUNT_POINT
永久有效:需要編輯/etc/fstab,在挂載選項後附加acl選項;
方法2:設定分區的預設挂載選項中有acl,則挂載時無須再指定acl;
tune2fs -o acl DEVICE
取消此預設挂載選項:
tune2fs -o ^acl DEVICE
hadoop: 檔案/var/tmp/hadoop.txt, 664
拒絕hive使用者對此的任何通路;
setfacl -m u:hive:--- /var/tmp/hadoop.txt
例:複制檔案/var/log/messages至/data目錄, 其屬主為root使用者,且有讀寫權限,屬組為root組,且有讀寫權限;可以被任何人讀取,可以被gentoo使用者和magedu組讀寫,但centos使用者沒有任何通路權限;
解析:首先要確定有data目錄,
# mkdir /data
複制檔案/var/log/messages至/data目錄
# cp /var/log/messages /data
修改權限
# chmod 664 /data/mesages
可以被gentoo使用者和magedu組讀寫,就要設定gentoo使用者和magedu組具有rw權限
# setfacl -m u:gentoo:rw /data/mesages
# setfacl -m g:magedu:rw /data/mesages
centos使用者沒有任何通路權限
# setfacl -m u:centos:--- /data/mesages
本文轉自 宋鵬超 51CTO部落格,原文連結:http://blog.51cto.com/qidian510/1258364,如需轉載請自行聯系原作者