欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

實際用戶ID,有效用戶ID和設置用戶ID

系統 1772 0

實際用戶ID,有效用戶ID和設置用戶ID

?

????看UNIX相關的書時經常能遇到這幾個概念,但一直沒有好好去理清這幾個概念,以致對這幾個概念一直一知半解。今天好好區分了一下這幾個概念并總結如下。說白了這幾個UID引出都是為了系統的權限管理。

?

????下面分別用RUID, EUID,SUID來表示實際用戶ID,有效用戶ID,設置用戶ID。 另外用戶 ID是個整型數,為了說明方便真接使用了用戶名來代表不同的UID。先解釋一下這幾個ID的作用:

RUID,?用于在系統中標識一個用戶是誰,當用戶使用用戶名和密碼成功登錄后一個UNIX系統后就唯一確定了他的RUID.

EUID,?用于系統決定用戶對系統資源的訪問權限,通常情況下等于RUID。

SUID,用于對外權限的開放。跟RUID及EUID是用一個用戶綁定不同,它是跟文件而不是跟用戶綁定。

?

????說明SUID的時候很多書都簡略的提了一下passwd這個程序,下面就拿這個例子來分析。我們知道linux系統的密碼都存在了/etc/shadow這個文件里。這個文件是如此的重要,在做任何修改之前最好先備份一下。查看/etc/shadow文件的屬性如下:

?

[root@localhost ~]# ll /etc/shadow

-r-------- 1 root root 1144 Jul 20 22:33 /etc/shadow

?

從上可以看出/etc/shadow文件是一個屬于root用戶及root組的文件,并且只有EUID為root的用戶具有讀的權限,其它所有EUID都沒有任何權限。當你在steve用戶(EUID此時也為steve)的shell下試圖用vim打開這個文件時會提示權限不允許。至于連root用戶也只有讀的權限我猜是為了不鼓勵root用戶使用vim類的編輯器去直接修改它,而要采用passwd命令來修改這個文件。如果你非要直接修改它,那么你可以使用chmod命令修改為屬性為root可寫,然后就可以修改了。

?

????用過UNIX系統的人都知道,任何一個用戶都可以使用passwd這個命令來得新設定自己的密碼。但從上面已經知道,非root用記是無法讀這個文件的,那么普通用戶是如何做到修改這個文件的呢?我們知道passwd這個命令實際執行的程序是/usr/bin/passwd,?查看這個文件屬性如下:

?

-r-s--x--x 1 root root 21944 Feb 12??2006 /usr/bin/passwd;

?

對應文件存取標志的s位就是通常說的SUID位,另外可以看到所有用戶都有執行的這個程序權力。當steve用戶執行passwd命令的時候。Shell會fork出一個子進程,此時進程的EUID還是steve,然后exec程序/usr/bin/passwd。exec會根據/usr/bin/passwd的SUID位會把進程的EUID設成root,???此時這個進程都獲得了root權限, 得到了讀寫/etc/shadow文件的權限,?從而steve用戶可完成密碼的修改。?exec退出后會恢復steve用戶的EUID為steve.這樣就不會使steve用戶一直擁有root權限。

?

我們可以測試一下,用root用戶把/usr/bin/passwd的SUID位去掉,如下:

[root@localhost ~]# ll /usr/bin/passwd?

-r-s--x--x 1 root root 21944 Feb 12??2006 /usr/bin/passwd

[root@localhost ~]# chmod u-s /usr/bin/passwd

[root@localhost ~]# ll /usr/bin/passwd???????

-r-x--x--x 1 root root 21944 Feb 12??2006 /usr/bin/passwd

?

然后steve用戶用命令passwd去更新密碼會提示如下錯誤:

[steve@localhost ~]$ passwd

Changing password for user steve.

Changing password for steve

(current) UNIX password:

passwd: Authentication token manipulation error

[steve@localhost ~]$

這就是因為/usr/bin/passwd程序的SUID去掉后,steve用戶雖然可以執行該程序,但因為/usr/bin/passwd/的SUID沒有設置,這樣exec后進程的EUID仍為steve的原因。

?

????也許有人會發現root用戶卻仍可以使用該用命修改密碼,那是因為root用戶本身的EUID時就是root (也有可能只要發現是RUID是root就不檢查EUID了,直接可讀寫,root就是老大嘛),?可以讀取密碼文件。

?

另外也許有人會發現普通的文件文件普通的文本文件會也可以設置SUID位,?但這是沒有意義的,因為文件文件沒有地方執行seteuid()的系統調用來改變當用用戶的EUID。

?

最后,這里的對用戶ID的規則同樣也適用了組ID。

實際用戶ID,有效用戶ID和設置用戶ID


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 波多野结衣在线资源 | 日本黄 色 成 年 人免费观看 | www.嫩草影院.com | 国产在线综合网 | 日日夜av| www.久久久.com| 亚洲日本视频在线 | 激情婷婷成人亚洲综合 | 国产精品久久久久久亚洲调教 | 日本黄色免费看 | 免费国产黄频在线观看视频 | 摸金校尉之九幽将军 | 精品无人乱码高清 | 日本免费三级网站 | 五月婷婷丁香 | 99热这里只有精品8 免费看搡女人的视频 | 欧美日韩不卡在线 | 久久久久日韩精品免费观看网 | 免费一级毛片在线观看 | 亚洲自拍偷拍色图 | 日韩三级欧美 | 日本高清无卡码一区二区久久 | 午夜亚洲 | 自拍偷拍视频网站 | 五月婷婷综合在线视频 | 欧美激烈精交gif动态图18p | 日韩视频在线播放 | 亚洲性69影院在线观看 | 日本熟妇无码波多野1223 | 精品国产一级毛片大全 | 国产中文字幕久久 | 一区二区免费播放 | 欧美视频网站 | 精品九九九 | 久久免费视频7 | 视频一区国产 | 爽妇网国产精品 | 99精品视频在线免费观看 | 国产精品毛片一区二区三区 | 一级毛片视频播放 | 成人av一区二区三区 |