在 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/ 

猜你喜欢

转载自dyccsxg.iteye.com/blog/813204