Unix系统使用FTP服务器:Centos 5系统演示

2011-12-11 22:37:18  来源:零度技术论坛 

WebjxCom友情提示:分享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

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

更多