1、vsftpd安装ip:192.168.0.200 (redhat 5.3系统)
#yum -y install vsftpd #vsftpd软件
#yum -y install db4-utils #生成虚拟用户认证数据文件命令
2、配置vsftp
#vim /etc/vsftpd/vsftpd.conf
listen=YES #独立运行vsftpd
anonymous_enable=NO #限制匿名用户登录
dirmessage_enable=YES
xferlog_enable=YES
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
chroot_list_enable=YES #限制虚拟用户切换目录
chroot_list_file=/etc/vsftpd/chroot_list #限制切换目录的用户列表
chroot_local_user=YES
guest_enable=YES #开启虚拟用户认证
guest_username=ftp #映射的真实用户
user_config_dir=/etc/vsftpd/vsftpd_user_conf #虚拟用户配置目录
pam_service_name=vsftpd.vu #vsftpd认证的pam认证模块
local_enable=YES
3、生成虚拟用户配置文件
#cd /etc/vsftpd
#vim user.txt
yuangang #用户名
123456 #密码
:wq #保存退出
#db_load -T -t hash -f user.txt /etc/vsftpd/vsftpd_login.db
#chmod 600 /etc/vsftpd/vsftpd_login.db
配置pam认证
#vim /etc/pam.d/vsftpd.vu
auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
account required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
:wq #保存退出
#vim /etc/vsftpd/chroot_list #限制虚拟用户切换目录
ftp
yuangang
:wq #保存退出
4、配置虚拟用户的配置文件
#cd /etc/vsftpd/vsftpd_user_conf
#vim yuangang
write_enable=YES
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
local_root=/data/httpd/yuangang
:wq 保存退出
建立虚拟用户ftp目录
#mkdir /data/httpd/yuangang
#chown -R ftp.root /data/httpd
#chmod o+rw /data/httpd/yuangang
5、重启vsftpd使配置生效并开放iptables 21端口
#/etc/init.d/vsftpd restart
Shutting down vsftpd: [ OK ]
Starting vsftpd for vsftpd: [ OK ]
#vim /etc/sysconfig/iptables #在*filter中添加下列一行
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
:wq #保存退出
#iptables-restore < /etc/sysconfig/iptables #使iptables生效
6、测试虚拟用户登录
[root@master vsftpd]# ftp 192.168.0.200
Connected to 192.168.0.200.
220 (vsFTPd 2.0.5)
530 Please login with USER and PASS.
530 Please login with USER and PASS.
KERBEROS_V4 rejected as an authentication type
Name (192.168.0.200:root): yuangang
331 Please specify the password.
Password: #输入123456
230 Login successful. #登录成功
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls #列出文件
227 Entering Passive Mode (192,168,0,200,30,213)
150 Here comes the directory listing.
-rw------- 1 14 50 463361 Jul 13 17:22 10.log.zip
226 Directory send OK.
ftp>
本文出自 “linux运维” 博客,请务必保留此出处http://linux008.blog.51cto.com/2837805/610599