linux suid命令的功能,Linux命令學習筆記(3)——理解SUID,SGID,stick

http://www.newwhy.com/2010/0915/15015.html

了解這三個特殊訪問位前先了解Linux文件訪問特權位:

15

14

13

12

11

10

9

8

7

6

5

4

3

2

1

0

SUID

SGID

sticky

r

w

x

r

w

x

r

w

x

文件類型位

特殊訪問位

擁有者特權位

同組特權位

其他用戶特權位

10. SUID(set-user-ID)位

SUID位的作用:若文件F設置SUID位為1,文件F的擁有者是用戶A,而用戶B擁有文件F的執行權限,則當用戶B執行文件F時就以文件擁有者(用戶A)的權限執行。

SUID位的典型應用:修改Linux用戶密碼。Linux用戶密碼加密后存儲在/etc/passwd文件中,用戶使用passwd命令修改密碼。而修改/etc/passwd文件需要root權限, 如下圖:

heaad@ubuntu:~$ ls -l /etc/passwd

-rw-r--r--1root root 1672 2010-04-30 03:22 /etc/passwd

那么普通用戶是如何修改自己的密碼的呢?答案在/usr/bin/passwd文件中,如下圖:

heaad@ubuntu:~$ ls -l /usr/bin/passwd

-rwsr-xr-x 1 root root 37140 2010-01-26 09:09 /usr/bin/passwd

passwd命令的所有者特權位中的x變成了s,表示passwd文件設定了SUID特權位。那么其他用戶執行passwd命令時將獲得passwd文件的所有者(root)的權限,於是就有權限修改/etc/passwd文件了。

設置SUID位:使用如下命令設置SUID位:

$ sudo chmod 4xxx file

$ sudo chmod u+s file

其中的4xxx中的4是因為SUID位在特殊訪問位中的第三位。

執行完上面的兩條命令中的其中一條后,file文件的權限可能變成了rwsr-xr-x

若文件所有者也沒有該文件的執行權限,則上面的兩條命令可能使file的訪問權限位變成了rwSr--r--,其中的S是大寫的

11. SGID(set-group-ID)位

作用:SGID與SUID類似,但它是使執行的線程擁有所在組的權限。

設置方式:

$ sudo chmod 2xxx file

$ sudo chmod g+s file

執行完以上其中一條命令后,文件file的訪問權限可能會變成rwxr-sr-x 。

12. sticky位

作用:若目錄A設置了sticky位,則除了目錄A的所有者和root用戶外,其他用戶均不能刪除或重命名目錄A下的文件。

設置方法:

$ sudo chmod +t file

$ sudo chmod 1xxx file

執行完以上其中一條命令,文件的訪問權限位可能被改變為rwxr-xr-t 。若文件所有者也沒有執行權限,則訪問權限位可能會變成rw-r--r-T 。

參考:《Linux:The Textbook》

閱讀(88) | 評論(0) | 轉發(0) |

給主人留下些什么吧!~~

評論熱議

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值