![将用户锁定到单个目录](https://linux22.com/image/1066063/%E5%B0%86%E7%94%A8%E6%88%B7%E9%94%81%E5%AE%9A%E5%88%B0%E5%8D%95%E4%B8%AA%E7%9B%AE%E5%BD%95.png)
我不想锁定 ssh 用户,我想锁定一般用户。如果某个进程以用户身份运行,例如,su -c "ls" user1
我希望用户 1 只能看到文件夹/path/to/folder
及其子文件夹/文件,而看不到其他内容。没有 ls 到其他任何地方。没有 cd。什么都没有。
我看过很多指南,但所有内容都是针对通过 ssh 进入机器的用户。我只想锁定我设置的本地用户,使其无法查看或触摸除我允许其访问的单个文件夹之外的任何内容。
我该如何做呢?
答案1
让我们尝试一下我刚刚测试过的方法,它可以防止访问任何其他文件夹,而只能访问赋予该用户所有权的文件夹。
脚步:
创建没有
home
目录的用户:sudo adduser --no-create-home koko
然后为用户创建文件夹
koko
:sudo mkdir -p /koko/k1/k2
授予用户访问
koko
文件夹的权限k2
sudo chown koko:koko /koko/k1/k2
删除
others
当前主文件夹的权限,以便/home
无法koko
访问这些文件或文件夹sudo chmod 750 /home/folders
现在 koko 切换到用户koko
并尝试访问任何其他文件,您将得到一个permission denied error
,但用户koko
可以更改为创建的/koko/k1/k2
文件夹。