我正在尝试将我的帐户限制在其主目录中。我尝试这样做:
Match group accounts
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp
ChrootDirectory %h
那么自然而然地:
service sshd restart
因为这在 SU 和网络上多次列出,但它似乎并没有真正做任何事情,至少我能看出来,因为我的用户仍然能够访问他们家以外的目录并编辑他们家以外的文件。
我在用:CentOS release 6.5 (Final)
ssh 是:OpenSSH_5.3p1, OpenSSL 1.0.1e-fips 11 Feb 2013
我有账户组限制只能访问他们的主目录。主目录位于,/var/www/vhosts/<-account>
然后他们有一个public_html
文件夹。我希望用户能够将文件存储在他们的 webroot 之外,但我希望他们被关在他们的主文件夹中。应该注意的是,主目录的权限是accountName:apache
,而不是root:root
。
在我的组中有:
accountName:x:509:
accounts:x:510:accountName
密码:accountName:x:507:509::/var/www/vhosts/accountName/public_html/:/bin/bash
我这里漏掉了什么吗?有没有更好的方法来实现我想要的?
我检查了 EOL 并确保它们都是 UNIX,因为我在另一篇文章中读到了这一点。
帐户名称被实际的帐户名称替换。我没有用它作为我的帐户。
感谢您提供的任何帮助/信息
答案1
我读到的man sshd_config
是“路径名的所有组件都必须是根拥有的目录,并且任何其他用户或组都无法写入。”我认为这会排除主目录。