Linux搭建高效FTP虚拟用户全过程
VSFTP是一个基于GPL发布的类Unix系统上使用的FTP服务器软件,它的全称是Very Secure FTP 从此名称可以看出来,编制者的初衷是代码的安全。
以下全过程是在Centos 5 下操作演示的。
安装 vsftp
yum install vsftpd
创建日志文件
touch /data1/logs/vsftpd.log
修改 vsftp 配置文件
vi /etc/vsftpd/vsftpd.conf
参数设置,注意:输入“/欲查找内容”可以快速查找,千万不能出现多余的空格
anonymous_enable=NO #不允许匿名访问
local_enable=YES #本地用户可以访问
chroot_list_enable=YES #使用户不能离开主目录
xferlog_file=/var/log/vsftpd.log #vsftpd的服务日志保存路径,默认不存在
ascii_upload_enable=YES #允许上传
ascii_download_enable=YES #支持ASCII模式的下载功能
pam_service_name=vsftpd #千万别忘记添加
手工输入以下参数和值
guest_enable=YES #开启虚拟用户的功能
guest_username=ftp #虚拟用户隶属于它
user_config_dir=/etc/vsftpd/vuser_user
创建 chroot list
touch /etc/vsftpd/list
echo ftp>>/etc/vsftpd/list
进行认证,db_load 找不到的话就先安装 db4-utils(yum install db4 db4-utils)
vi /etc/vsftpd/vsftp_users.conf
输入奇数为账号,偶数为密码
www_lingdus_com #账号
www_lingdus_com #密码
生成认证文件
db_load -T -t hash -f /etc/vsftpd/vsftp_users.conf /etc/vsftpd/vsftp_users.db
编辑认证文件,清空或注释文件中全部内容
vi /etc/pam.d/vsftpd
清空之后,再输
auth required pam_userdb.so db=/etc/vsftpd/vsftp_users
account required pam_userdb.so db=/etc/vsftpd/vsftp_users
自定义用户
mkdir /etc/vsftpd/users/
vi /etc/vsftpd/vuser_conf/www_lingdus_com
添加以下内容
local_root=/data0/htdocs/lingdus/bbs #它根目录
write_enable=YES
anon_umask=022
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
OK了,启动或重启 vsftp
service vsftpd restart(重启 restart)
可以连接FTP了
ip:XXX.XXX.XXX.XXX
端口:21
账号:www_lingdus_com
密码:www_lingdus_com
连接 FTP 时若提示错误:553 Could not create file 或不能上传错误,则关闭SELinux
终端:setsebool -P ftpd_disable_trans 1
重启:service vsftpd restart
或者把
guest_username=ftp #虚拟用户隶属于它
更改为
guest_username=root #虚拟用户隶属于它
重启:service vsftpd restart
启动或连接 FTP 时提示错误:500 OOPS: bad bool value in config file for: XXX
很有可能是在弄参数的时候,弄了多余的空格,或参数项搞错了,应仔细检查。
本教程出自零度技术论坛,原文链接:http://www.lingdus.com/thread-4809-1-1.html