我正在使用CentOS 7。
我需要让ssh用户访问shell,但在监狱中限制他们。我用jailkit建了监狱。我已经复制了所有必要的库,在监狱环境中用户需要的二进制文件。监狱目录结构如下所示:
[root@server jail]# pwd
/var/jail
[root@server jail]# ls -l
total 8
drwxr-xr-x. 2 root root 26 May 28 16:17 bin
drwxr-xr-x. 2 root root 41 May 28 16:18 dev
drwxr-xr-x. 3 root root 4096 May 28 16:22 etc
drwxr-xr-x. 3 root root 19 May 28 16:14 home
drwxr-xr-x. 2 root root 4096 May 28 16:09 lib
lrwxrwxrwx. 1 root root 9 May 28 16:14 lib64 -> usr/lib64
drwxr-xr-x. 7 root root 65 May 28 16:18 usr我使用“jk_jailuser”将用户主目录移动到/var/jail/home。
但是,当用户登录时,他可以cd到监狱环境中的其他目录中。我希望用户被限制在他/她的主目录,不能cd到任何其他目录。
我尝试在sshd_config中使用Match group指令,如下所示:
Match group sshusers
ChrootDirectory /var/jail/
X11Forwarding no
AllowTcpForwarding no但这是在设置ssh之后尝试通过ssh登录时所遇到的错误:
Could not chdir to home directory /var/jail/./home/user: No such file or directory
/usr/sbin/jk_chrootsh: No such file or directory我也不能登录
我真的被困在这里了。我想不出怎么解决这个问题。有人能帮忙吗?如何在被监禁的环境中将SSH用户限制为他们的主目录?
发布于 2015-05-29 10:44:39
用户的主目录应该相对于chroot路径。如果要使用/var/jail/home/user作为主目录,则必须将用户的主目录设置为/home/user。
https://unix.stackexchange.com/questions/206245
复制相似问题