Samul Asked: 2016-09-15 06:38:01 +0800 CST2016-09-15 06:38:01 +0800 CST 2016-09-15 06:38:01 +0800 CST 阻止用户访问文件夹 772 我有一个有 80 个用户的 Centos 7 服务器,并且我有很多目录,所有 80 个用户都可以访问。但是我希望一个特定的用户不能访问一个目录,我该怎么做? 我只想阻止一个用户访问特定目录,保持所有其他用户权限不变。我怎样才能做到这一点? linux centos ssh shell 2 个回答 Voted Best Answer Thiago Rider Augusto 2016-09-15T07:02:39+08:002016-09-15T07:02:39+08:00 使用访问控制列表 要阻止用户“user_to_block”: setfacl -m u:user_to_block:000 <path_to_directory_you_want_to_block_access> m-> 修改文件系统 u -> 用户(这也可以是组 ACL 的“g”) :000 -> Linux 文件系统中的权限(或者可以是从 0 到 7 的八进制数字或字母 - 读取 (r)、写入 (w)、执行 (x)) 您可以使用以下命令检查 ACL: getfacl <file_or_dir_you_want_to_check_ACLS> 删除一个用户/组的 ACL(例如,用户 'user_to_block'): setfacl -x u:user_to_block <file_or_directory> 要删除整个 ACL(所有组和用户已设置 ACL): setfacl –b <file_or_directory> 参考 其他选项和信息可以在setfacl命令的手册页中找到: man setfacl 在线资源: http: //linux.die.net/man/1/getfacl Stefan Guenther 2016-09-15T06:52:13+08:002016-09-15T06:52:13+08:00 假设所有用户都在命令行上访问目录,而不是通过 samba,我猜“man setfacl”可能会对你有所帮助。
使用访问控制列表
要阻止用户“user_to_block”:
m-> 修改文件系统
u -> 用户(这也可以是组 ACL 的“g”)
:000 -> Linux 文件系统中的权限(或者可以是从 0 到 7 的八进制数字或字母 - 读取 (r)、写入 (w)、执行 (x))
您可以使用以下命令检查 ACL:
删除一个用户/组的 ACL(例如,用户 'user_to_block'):
要删除整个 ACL(所有组和用户已设置 ACL):
参考
其他选项和信息可以在
setfacl
命令的手册页中找到:在线资源: http: //linux.die.net/man/1/getfacl
假设所有用户都在命令行上访问目录,而不是通过 samba,我猜“man setfacl”可能会对你有所帮助。