我注意到,普通用戶可以在沒有sudo的情況下更改自己的密碼。但據我所知,更改密碼必須寫入只能由root訪問的/ etc/shadow文件。linux用戶如何在沒有root權限的情況下更改他們的密碼?
這是怎麼發生的?
我注意到,普通用戶可以在沒有sudo的情況下更改自己的密碼。但據我所知,更改密碼必須寫入只能由root訪問的/ etc/shadow文件。linux用戶如何在沒有root權限的情況下更改他們的密碼?
這是怎麼發生的?
的passwd
程序在安裝setuid root:
$ ls -l `which passwd`
-rwsr-xr-x 1 root root 41284 Sep 12 2012 /usr/bin/passwd
注意s
在第四的位置。這是一個可以在文件權限中設置的標誌,它告訴Linux在運行時擁有可執行文件的用戶的特權 - 在本例中爲root。
請在超級用戶http://superuser.com/ –