如何限制用户在 Linux 中读取其他用户的目录?
例如我有用户 1 和用户 2,我不希望用户 2 读取 /home/user1/...我该怎么做?
谢谢
答案1
就像 zed 所说的那样,但您可能正在运行服务,这意味着如果您这样做,如果服务不在用户权限下运行,这些服务也将无法读取这些文件,这种情况很少见,大多数服务都在他们自己的用户下运行。
你可能需要 ACL(访问控制列表)。这是官方文档http://centos.org/docs/5/html/Deployment_Guide-en-US/ch-acls.html
按照文档编辑 /etc/fstab 并重新挂载分区,然后简单地
setfacl -m d:o:--- /home/user1/
setfacl -m d:u:rwx /home/user1/
o 表示其他人,u 表示用户。
现在检索 acl:
getfacl /home/user1/
我建议你阅读文档并做一些测试。希望这对你有帮助。
答案2
chmod 700 /home/user1
当然,这假设所有权设置正确,并且您不需要像网络服务器这样的东西就能看到 public_html 目录中的文件。
如果要限制目录中的列出文件,但又不删除读取具有已知名称和适当权限的特定文件或子目录的能力,请使用: chmod 711 /home/user1