1. 程式人生 > >去除Fedora16系統程式密碼驗證

去除Fedora16系統程式密碼驗證

問題:

開啟Fedora16的系統程式“使用者和群組”時會彈出ROOT密碼框,能否去除?

方案:

1. 增加USER賬戶到wheel分組 (USER表示當前使用者)
2. passwd -d USER (清空密碼)

效果:

執行“使用者和群組”等工具時不再提醒輸入密碼;(如果前面不刪除的話,就只驗證 USER密碼即可獲得許可權,不用ROOT密碼)


原理:

system-config-*等工具都需要驗證ROOT許可權,它們都是consolehelper的軟連結,該程式提供GTK驗證框,然後呼叫 userhelper (setuid程式)進行PAM驗證,提升許可權;這些系統程式都是用預設配置(config-util):
USER=root
UGROUPS=wheel
因此如果當前使用者屬於wheel組,就驗證當前使用者的密碼,即可獲取ROOT許可權;
gksu在Fedora16上對應beesu,其實也是個consolehelper的軟連線,它本身什麼都沒幹,就是把你要執行的程式名傳給 consolehelper;

passwd一類的命令應該不行,它們好像直接調PAM鑑權的,沒有這個wrap機制;

參考: