一、配置VSFTP


1、yum install vsftpd -y



2、VSFTPD.CONF配置文件(全局配置)


listen=YES    (开启侦听)

listen_address=192.168.100.1(地址)

listen_port=21(指令端口)

connect_from_port_20=YES(数据端口)

#pasv_min_port=2222

#pasv_max_port=2225

write_enable=YES (是否允许写入)

xferlog_enable=YES (是否允许记录日志)

xferlog_std_format=YES (日志格式,标准)

pam_service_name=vsftpd (认证模块, /etc/pam.d/vsftpd) 


userlist_enable=YES (开启user_list访控,默认/etc/vsftpd/user_list文件中的

用户不可以登录)


#userlist_deny=NO(如果本行开启,则代表只有user_list文件中的用户可以登录)


tcp_wrappers=YES

#max_clients=0

#max_per_ip=0


3、匿名用户配置


anonymous_enable=YES(允许匿名登录)

anon_umask=022 (默认权限掩码)

#anon_root=/var/ftp (定义匿名用户的FTP根)


#anon_upload_enable=YES(允许匿名用户上传,与全局配置中的语句有关,千万不要改FTP根的权限,改PUB的权限)


#anon_mkdir_write_enable=YES (允许匿名用户创建文件夹)

 

#anon_other_write_enable=YES ( 允许匿名用户删除及修改)


#anon_max_rate=0 (匿名用户上传下载速率)



4、认证用户配置:



local_enable=YES

local_umask=022

#local_root=/var/ftp

#chroot_local_user=YES ( 锁定认证用户FTP根 )

#local_max_rate=0



5、虚拟用户


a、建立虚拟用户帐号数据库文件


vim vuser.list


格式:

账号

密码

账号

密码



yum install db4-utils -y


db_load -T -t hash -f vuser.list vuser.db  (转化为伯克利格式)


chmod 600 vuser.*


b、建立虚拟用户映射的系统用户及根目录


useradd -d /var/vftp -s /sbin/nologin vuser


chmod 755 /var/vftp


c、建立虚拟用户的PAM认证文件


cp /etc/pam.d/vsftpd /etc/pam.d/vupam


vim vupam


#%PAM-1.0


auth       required     pam_userdb.so db=/etc/vsftpd/vuser


account    required     pam_userdb.so db=/etc/vsftpd/vuser



d、修改vsftpd.conf,开启虚拟用户支持


[root@filesvr ~]# vim  /etc/vsftpd/vsftpd.conf


#pam_service_name=vsftpd


anonymous_enable=NO

local_enable=YES

write_enable=YES

anon_umask=022


guest_enable=YES

guest_username=vuser

pam_service_name=vupam



e、为个别虚拟用户建立独立的配置文件



vim  /etc/vsftpd/vsftpd.conf

user_config_dir=/etc/vsftpd/vuconf


mkdir /etc/vsftpd/vuconf

touch tom jack mary


vim tom

local_root=/var/ftp

anon_upload_enable=YES

anon_mkdir_write_enable=YES






配置文件

listen=YES

listen_address=192.168.100.1

listen_port=21

connect_from_port_20=YES

#pasv_min_port=2222

#pasv_max_port=2225

write_enable=YES

#log_ftp_protocol=YES

xferlog_enable=YES

xferlog_std_format=YES

#xferlog_file=/var/log/xferlog

#dual_log_enable=YES

#syslog_enable=YES

#vsftpd_log_file=/var/log/vsftpd.log

pam_service_name=vsftpd

userlist_enable=YES

#userlist_deny=NO

tcp_wrappers=YES

#max_clients=0

#max_per_ip=0


anonymous_enable=YES

anon_umask=022

#anon_root=/opt/xing

#anon_upload_enable=YES

#anon_mkdir_write_enable=YES

#anon_other_write_enable=YES

#anon_max_rate=0


local_enable=YES

local_umask=022

#local_root=/var/ftp

#allow_writeable_chroot=YES

#chroot_local_user=YES

#local_max_rate=0


#guest_enable=YES

#guest_username=vuser

#pam_service_name=vupam

#user_config_dir=/etc/vsftpd/vuconf