我需要允许文件系统上的特定用户进行目录访问。我希望该用户无法访问我的文件系统中的任何其他目录(无论如何最初。稍后它可能需要访问某些目录)。
例如:我有一个名为 的目录/opt/mydir
。
- 我希望我的专用用户只能访问此目录,而不能访问其他目录。
- 我希望所有其他用户能够正常访问该目录。
我是 Unix 及其权限的新手。我已经阅读了相当多的背景材料,但我有点困惑。是否有办法撤销单个专用用户对 /opt/mydir 的权限?
一种可能有缺陷的方法是只允许访问 /opt/mydir 并排除所有其他用户。这是行不通的,因为我希望所有其他用户都能正常工作;访问目录。
我正在开发 Solaris 10。
任何建议表示赞赏。
答案1
您可以为此使用一个组。
确保该用户仅是该组的成员,然后将您希望他访问的目录的所有者更改为该组,并设置适当的权限。
如果其他用户需要访问这些相同的目录,请将他们添加到该特殊组中。只是不要将受限用户添加到任何“常规”组(例如staff
或users
)。
(换句话说,您不会撤销用户对几乎所有目录的访问权限,您只授予他被允许工作的子集的访问权限。)
答案2
你可以看看setfacl
,类似
setfacl -r -m youruser:yourgroup:rwx,mask:rwx /opt/mydir
这在正常目录权限之上起作用。