去除Fedora 16系统程序密码验证


问题:

打开Fedora 16的系统程序“用户和群组”时会弹出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机制;

相关内容