在 ubuntu 上搭建 ftp 服务端 [ vsftpd ]
在 ubuntu 下搭建 ftp 服务端 [ vsftpd ]
vsftpd
1. 安装 ftp 服务端 vsftpd $ sudo apt-get install vsftpd # 启动 ftp 服务端 $ sudo service vsftpd start # 查看是否已打开 ftp 的监听端口 21 $ sudo netstat -tulnp|grep 21 tcp 0 0 0.0.0.0:21 0.0.0.0:* LISTEN 3272/vsftpd # 访问 ftp [默认情况下匿名用户被禁用了] ftp://user:pass@hostname/ # 关闭 ftp 服务端 $ sudo service vsftpd stop 2. 配置 # vsftpd 配置文件 /etc/vsftpd.conf # vsftpd 日志文件 /var/log/vsftpd.log # 禁止登录用户 /etc/ftpusers # 认证用户访问目录 [IE 里默认为 /] /home/userName # 匿名用户访问目录 /srv/ftp 3. 自定义配置 # 备份 $ sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.backup 3.1 chroot 限定 # 不允许 chroot_list_file 中指定的用户改变根目录 chroot_local_user=NO chroot_list_enable=YES chroot_list_file=/etc/vsftpd.chroot_list # 只允许 chroot_list_file 中指定的用户改变根目录 chroot_local_user=YES chroot_list_enable=YES chroot_list_file=/etc/vsftpd.chroot_list 3.2 设置认证用户 # 允许认证用户访问 local_enable=YES # 认证用户拥有写权限 write_enable=YES # 创建用户 $ sudo useradd ftpuser1 -g ftp -d /home/ftp -s /bin/false # 设置密码 $ sudo passwd ftpuser1 # 修改 /etc/vsftpd.conf pam_service_name=ftp # 默认情况下新添加的用户会显示在登录界面中,可通过下述操作让其隐藏 System -> Administration -> Login Screen -> 不勾选 Show list of users 即可 3.3 设置匿名用户 # 允许匿名访问 anonymous_enable=YES # 匿名访问初始目录 anon_root=/srv/ftp/public # 匿名用户拥有浏览和下载权限 anon_world_readable_only=YES # 匿名用户可以重命名,删除文件[关闭的话无法续传] anon_other_write_enable=YES # 限制匿名用户传输率 n byte/s [0表示不限制] anon_max_rate=0 # 禁止匿名用户创建目录 anon_mkdir_write_enable=NO # 禁止匿名用户上传 anon_upload_enable=NO
参考
http://wiki.ubuntu.org.cn/Vsftpd
http://www.xlightftpd.com/download.htm
http://ftp.8u.cn/