如果用户登录,他会从 chroot 的 / 开始(在真机上是 /var/jail)。我希望他从他的家庭目录开始。此外,他似乎没有加载任何他的个人资料文件(.bash.rc 等)。我按照本教程创建了 chroot 环境。这是我的 /etc/passwd 的样子:
test:x:1004:1008:,,,:/var/jail/home/test:/bin/bash
Run Code Online (Sandbox Code Playgroud)
这是我的 /var/jail/etc/passwd 文件的样子:
test:x:1004:1008:,,,:/home/test:/bin/bash
Run Code Online (Sandbox Code Playgroud)
我还发现,如果我删除
Match User test
ChrootDirectory /var/jail
AllowTCPForwarding no
X11Forwarding no
Run Code Online (Sandbox Code Playgroud)
从我的 /etc/ssh/sshd_config 中,用户从他正确的主文件夹中开始,并加载了他的 bash 设置。但是,如果我删除该部分,他就可以离开 chroot 环境。我之前问过的这个问题有些相关,因为我认为命令行的错误外观是由未加载的配置文件引起的。那么任何想法如何解决这个问题?