分享Linux搭建高效FTP虚拟用户全过程

VSFTP是一个基于GPL发布的类Unix系统上使用的FTP服务器软件,它的全称是Very Secure FTP 从此名称可以看出来,编制者的初衷是代码的安全。 以下全过程是在Centos 5 下操作演示的。
安装 vsftp

  1. yum install vsftpd

复制代码

创建日志文件

  1. touch /data1/logs/vsftpd.log

复制代码

修改 vsftp 配置文件

  1. vi /etc/vsftpd/vsftpd.conf

复制代码

参数设置,注意:输入“/欲查找内容”可以快速查找,千万不能出现多余的空格

  1. anonymous_enable=NO #不允许匿名访问
  2. local_enable=YES #本地用户可以访问
  3. chroot_list_enable=YES #使用户不能离开主目录
  4. xferlog_file=/var/log/vsftpd.log #vsftpd的服务日志保存路径,默认不存在
  5. ascii_upload_enable=YES #允许上传
  6. ascii_download_enable=YES #支持ASCII模式的下载功能
  7. pam_service_name=vsftpd #千万别忘记添加
  8. 手工输入以下参数和值
  9. guest_enable=YES #开启虚拟用户的功能
  10. guest_username=ftp #虚拟用户隶属于它
  11. user_config_dir=/etc/vsftpd/vuser_user

复制代码

创建 chroot list

  1. touch /etc/vsftpd/list
  2. echo ftp >> /etc/vsftpd/list

复制代码

进行认证,db_load 找不到的话就先安装 db4-utils(yum install db4 db4-utils)

  1. vi /etc/vsftpd/vsftp_users.conf
  2. 输入奇数为账号,偶数为密码
  3. www_lingdus_com #账号
  4. www_lingdus_com #密码

复制代码

生成认证文件

  1. db_load -T -t hash -f /etc/vsftpd/vsftp_users.conf /etc/vsftpd/vsftp_users.db

复制代码

编辑认证文件清空或注释文件中全部内容

  1. vi /etc/pam.d/vsftpd

复制代码

清空之后,再输

  1. auth required pam_userdb.so db=/etc/vsftpd/vsftp_users
  2. account required pam_userdb.so db=/etc/vsftpd/vsftp_users

复制代码

自定义用户

  1. mkdir /etc/vsftpd/users/
  2. vi /etc/vsftpd/vuser_conf/www_lingdus_com

复制代码

添加以下内容

  1. local_root=/data0/htdocs/lingdus/bbs #它根目录
  2. write_enable=YES
  3. anon_umask=022
  4. anon_world_readable_only=NO
  5. anon_upload_enable=YES
  6. anon_mkdir_write_enable=YES
  7. anon_other_write_enable=YES

复制代码

OK了,启动或重启 vsftp

  1. service vsftpd restart(重启 restart)

复制代码

可以连接FTP

  1. ip:XXX.XXX.XXX.XXX
  2. 端口:21
  3. 账号:www_lingdus_com
  4. 密码:www_lingdus_com

复制代码

连接 FTP 时若提示错误:553 Could not create file 或不能上传错误,则关闭SELinux

  1. 终端:setsebool -P ftpd_disable_trans 1
  2. 重启:service vsftpd restart
  3. 或者把
  4. guest_username=ftp #虚拟用户隶属于它
  5. 更改为
  6. guest_username=root #虚拟用户隶属于它
  7. 重启:service vsftpd restart

复制代码

启动或连接 FTP 时提示错误:500 OOPS: bad bool value in config file for: XXX

  1. 很有可能是在弄参数的时候,弄了多余的空格,或参数项搞错了,应仔细检查

复制代码

本教程出自零度技术论坛,原文链接 http://www.lingdus.com/thread-4809-1-1.html

本站部分文章、资源来自互联网,版权归原作者及网站所有,如果侵犯了您的权利,请及时联系我站删除。邮箱:1103606138#qq.com

站点地图