/etc/shadow的文件属性是针对root只读,为什么root可以更改密码呢?

发布网友 发布时间:2024-10-13 07:19

我来回答

2个回答

热心网友 时间:2024-10-14 02:43

解决这个问题得让你重新理解一下linux的安全机制
首先因为 /etc/shadow的文件属性是只读,这个文件的拥有是root,也就是只有root才能进行强制的读写操作
然后请ls -l /bin/passwd,此时你可以看见passwd的属性,你会发现他的属性居然是这样的-rwsr-xr-x,他的中间为什么有个s呢,此时再看,发现passwd这个可执行文件的拥有者是root,而且其他用户的使用权限为r-x,也就是说,别人有执行这个档案的权限,在运行此passwd时会暂时拥有passwd拥有者也就是root的权限,但前提是必须要有passwd的执行权限。这个就是linux中特有的suid机制。
这样你明白了,如果还有问题再call我吧 ^_^ !

热心网友 时间:2024-10-14 02:45

passwd命令调用了系统用户,并不是以root用户的身份修改

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com