vsftpd之chroot权限配置的几个参数问题以及原理分析

[linux] 2024-05-05 圈点762

摘要:vsftpd之chroot权限配置的几个参数问题以及原理分析

在linux命令中有chroot这一命令,意思是更改根目录的意思。在可以登录系统的帐号中,这个命令好像没有什么用处,但在vsftpd中用处非常大的,涉及到一些安全问题,同时还有几个参数可以设置关于chroot命令的地方。


vsftpd中chroot作用原理分析

在vsftpd中,用户登录后一般是直接登录在自己的家目录下,默认的一般家目录就是/根目录,也就是最顶级的目录所在了。如果用户有chroot命令的权限,那么其就可以修改自己的家目录也就是/根目录到任何目录,所以就有了访问任何目录的权限。所以这就是安全隐患的一个问题。一般来说ftp登录的目录没有必要访问其它的任何目录,就限制在自己原来的家目录即可。


如果有特别情况,其用户需要有访问其它目录的权限也可以添加。


vsftpd之chroot权限的设置有几种方法:

1,直接在配置文件中添加:

allow_writeable_chroot=YES

此方法简单又方便,所有的用户都将拥有chroot权限。


2,所有用户都没有chroot权限,都限制在自己的家目录为根目录。

chroot_local_user=YES


3,可以自定义用户是否有chroot权限

chroot_local_user:用户是否限制在家目录

chroot_list_enable:是否启用例外名单,默认NO

chroot_list_file:默认名单目录文件

示例:

chroot_local_user=NO

chroot_list_enable=YES 

chroot_list_file=/etc/vsftpd/chroot_list

意思是:所有人都没有chroot权限(限制在家目录),但启用例外名单,名单为/etc/vsftpd/chroot_list中写的用户名


其具体的关系图如下:

vsftpd_chroot.JPG


vsftpd  chroot  

感谢反馈,已提交成功,审核后即会显示