你如何阻止 /etc/passwd 文件

0 linux

如何阻止/etc/passwd除 root 之外的所有用户的文件?

Jed*_*els 5

首先,我们应该注意到,在现代系统中,/etc/passwd 实际上并不包含任何密码,它只包含基本的帐户信息。在 linux 系统上,包含密码的文件是 /etc/shadow,它并不真正包含密码,而是密码生成的哈希值(在基于 FreeBSD 的系统上,该文件是 /etc/master.passwd,包括 OSX) .

默认情况下,这两个文件都应该已经拥有确保它们安全的权限,这是我的一个 Linux 系统上的 /etc/password:

jed@jed-bt:~$ ls -la /etc/passwd 
-rw-r--r--  1 root  root  1797 Feb 11 13:13 /etc/passwd
Run Code Online (Sandbox Code Playgroud)

请注意,您需要保持 /etc/passwd 世界的可读性,否则事情会中断,如之前的答案所述。因此,要重置对这些的读/写权限,您可以运行以下命令

chmod 644 /etc/passwd
Run Code Online (Sandbox Code Playgroud)

如果文件归 root 以外的任何人所有,您也可以运行

chown root:root /etc/passwd
Run Code Online (Sandbox Code Playgroud)

重置它。当然,您必须以root身份运行chownchmod命令,或者使用sudo.