因为工作需要,搭建了一台vsftp服务器,步骤如下:
1、在CentOS上安装系统自带的vsftpd:
rpm -ivh --aid vsftpd-2.0.1-5.ElL4.3.i386.rpm
不允许登录的用户记录在文件/etc/vsftpd.ftpusers和/etc/vsftpd.user_list中。
2、启动vsftp服务:
service vsftpd start
3、在另一台机器上使用匿名登录到此文件服务器ftp 10.14.101.25:
用户名使用anonymous, 密码随便,登录进去之后,可以下载文件,不能上传文件,ls, pwd可以使用,但不能切换到除/var/ftp/pub和/var/ftp之外的目录中。
PS:目录/var/ftp/pub为FTP服务匿名用户登录的主目录。
4、做了如下更改,希望能上传文件:
修改/etc/vsftpd/vsftpd.conf文件:anon_upload_enable=YES.
修改匿名用户的主目录的权限:chmod 777 /var/ftp/pub
5、完成修改后,重新启动vsftpd服务,再次匿名登录,登录完即显示:refusing to run with writable anonymous root.
问题一:VSFTP服务器是否不允许匿名用户上载文件。
6、添加一个系统用户test,并使用此帐号登录到文件服务器,根据上述修改后,可以上传文件,下载文件和任意切换目录。ftp登录之后的用户主目录为/home/test.
7、做如下更改和设置,希望改变test的用户主目录:
在/etc/vsftpd/vsftpd.conf中将以下句子去掉注释或直接增加:
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
user_config_dir=/etc/vsftpd_user_config
重新启动文件服务器后,在本地新建文件/etc/vsftpd.chroot_list,将用户名test写入文件内容中;
新建目录/etc/vsftpd_user_config后,在此目录下新建文件test,将local_root=/home/tmp.
问题二:在做了上述修改后,使用test登录到服务器中,主目录变为根目录“/”,并且无法再切换目录了,将配置文件中的上述三行还原后,重启服务器,主目录又回到/home,并且可切换目录。为何?