Ubuntu 13.04安装vsftp服务器

在虚拟机里安装了一台Ubuntu 13.04的服务器版,装完后配置了vsftp服务器,发现和CentOS 6下的vsftp有些不同,查了几天资料总算弄好了,放到这记录一下。

1、安装vsftp,这个简单

sudo apt-get install vsftpd

2、配置/etc/vsftpd.conf

3、保存退出,重启vsftp服务

sudo service vsftpd restart

打开filezilla连接ftp,显示找不到/etc/vsftpd.userlist,centos里这个文件是/etc/vsftpd/userlist,只好新建/etc/vsftpd.userlist文件,然后把要登录的用户名写进去;再连,显示530错误,没有权限。奇怪,在centos里这么配就已经可以访问了,ubuntu却不行,最后发现,在ubuntu里必须加上chroot_list_enable=YES和chroot_list_file=/etc/vsftpd.chroot_list。

重新编辑/etc/vsftpd.conf如下:

listen=YES


                anonymous_enable=NO


                local_enable=YES


                write_enable=YES


                local_umask=022


                xferlog_enable=YES


                xferlog_std_format=YES

connect_from_port_20=YES


                pam_service_name=vsftpd


                userlist_enable=YES

userlist_deny=NO
                userlist_file=/etc/vsftpd.user_list

chroot_local_user=YES


                chroot_list_enable=YES
                chroot_list_file=/etc/vsftpd.chroot_list

重启vsftp,访问正常。

如果userlist_enable=YES且userlist_deny=NO,则只有vsftpd.user_list中的用户可以访问;当userlist_enable=YES且userlist_deny=YES,则除了vsftpd.user_list中的用户其余用户都可以访问。

如果chroot_local_user=NO 且 chroot_list_enable=YES时,除了chroot_list_file文件指定的用户其余的用户都可以执行chroot;当chroot_local_user=YES 且 chroot_list_enable=YES时,只有chroot_list_file文件中指定的用户可以执行chroot。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/e7b3592a1eb6d1914528b179002d8e73.html