我想设置一个小型 FTP 服务器供个人使用,并决定用于vsftpd
此目的。我认为我应该启用chroot_local_user
,以便用户在登录时被 chroot 到他们的主目录。尽管所有用户都不应该拥有其主目录之外的读取访问权限,但您永远不会避免错误,对吗?
但man vsftpd.conf
说:
chroot_local_user
If set to YES, local users will be (by default) placed in a chroot() jail in
their home directory after login. Warning: This option has security
implications, especially if the users have upload permission, or shell
access. Only enable if you know what you are doing. Note that these
security implications are not vsftpd specific. They apply to all FTP daemons
which offer to put local users in chroot() jails.
它们意味着什么“安全影响”?我是否必须删除每个用户对其主目录的写权限?这是为什么?我无法想象不使用 chroot 比使用它更安全......
答案1
您可以配置一个几乎无法突破的 chroot 监狱,但这不会阻止攻击者执行诸如获取本地网络访问权限、发送垃圾邮件或迫使系统进入僵尸网络等操作。 chroot 监狱将阻止他们获得 root 访问权限,但标准用户帐户可能会造成大量损害。如果服务器仅供个人使用,那么 chroot 应该足够安全,恕我直言。