1.安装vsftpd 和以下3个包
# rpm �Cqa | grep db4
db4-devel-4.2.52-7.1
db4-4.2.52-7.1
db4-utils-4.2.52-7.1
2.建立映射用账户,
useradd -d /var/ftp/aaa vsftpd
建立用户列表logins.txt 内容如下
upload
pwd
download
pwd
admin
pwd
创建口令库文件,并修改权限
db_load -T -t hash -f /tmp/login.txt /etc/vsftpd/vsftpd_login.db
chmod 700 /tmp/logins.txt
在/etc/pam.d/中创建vsftpd 只留下如下信息
auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
account required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
创建virtual文件目录/etc/vsftpd/user_conf 并在文件目录中创建以用户名命名的配置文件
download upload admin
download内容
anon_world_readable_only=NO (开放download用户的下载权限――只能下载;注意不要写成YES,否则将不能列出文件和目录)
local_root=/ftp/aaa
upload内容
anon_world_readable_only=NO
local_root=/ftp/aaa
write_enable=YES (增加写权限)
anon_upload_enable=YES(增加上传权限)
anon_mkdir_write_enable=YES (增加创建目录的权限)
admin内容
anon_world_readable_only=NO
local_root=/ftp/aaa
write_enable=YES (增加写权限)
anon_upload_enable=YES(增加上传权限)
anon_mkdir_write_enable=YES (增加创建目录的权限)
anon_other_write_enable=YES(增加管理员用户的删除/重命名的权限)
主配置文档 vsftpd.conf 改成如下
listen=YES
listen_port=8021
max_clients=100
max_per_ip=20
ftpd_banner=Welcome to virtual FTP service
anonymous_enable=NO
local_enable=YES
write_enable=NO
anon_upload_enable=NO
anon_mkdir_write_enable=NO
anon_other_write_enable=NO
chroot_local_user=YES
guest_enable=YES
guest_username=vsftpd
pasv_min_port=30000
pasv_max_port=30999
pam_service_name=vsftpd
user_config_dir=/etc/vsftpd/user_conf
xferlog_enable=YES
xferlog_file=/var/log/vsftpd.log
idle_session_timeout=600
data_connection_timeout=120
accept_timeout=60/PAVS
connect_timeout=60
这样虚拟用户ftp就成了,
如果无法访问的话 一般容易出错的主要是以下3点
1.注意配置文件后面一定不能有任何空格,否则就访问失败
2.注意iptables防火墙开启端口
3.注意关闭selinux