本文基于centos6进行,为防止实验失败,操作前,请先关闭selinux和iptables。 #setenforce 0 #service iptables stop 一、简介

 FTP(文件传输协议)全称是:Very Secure FTP Server。   Vsftpd是linux类操作系统上运行的ftp服务器软件。

 vsftpd提供了三种登录方式:1、匿名登录;2、本地用户登录;3、虚拟用户登录

FTP会话采用了两种连接: 命令连接:文件管理类命令,始终在线的连接,监听在TCP/21 数据连接:数据连接,按需创建及关闭的连接

二、vsftpd的配置

用户认证配置文件:/etc/pam.d/vsftpd
服务脚本:/etc/rc.d/init.d/vsftpd
配置文件目录:/etc/vsftpd
主配置文件:vsftpd.conf
匿名用户(映射为ftp用户)共享资源位置:/var/ftp
系统用户通过ftp访问的资源的位置:用户自己的家目录
虚拟用户通过ftp访问的资源的位置:给虚拟用户指定的映射成为的系统用户的家目录

匿名用户的配置:
	anonymous_enable=YES
	anon_upload_enable=YES
	anon_mkdir_write_enable=YES
	anon_ohter_write_enable=YES

系统用户的配置:
	local_enable=YES
	write_enable=YES
	local_umask=022

禁锢所有的ftp本地用户于其家目录中:
	chroot_local_user=YES

禁锢文件中指定的ftp本地用户于其家目录中:
	chroot_list_enable=YES
	chroot_list_file=/etc/vsftpd/chroot_list

日志:
	xferlog_enable=YES
	xferlog_std_format=YES
	xferlog_file=/var/log/xferlog

改变上传文件的属主:
	chown_uploads=YES
	chown_username=whoever

vsftpd使用pam完成用户认证,其用到的pam配置文件:
	pam_service_name=vsftpd
	
三、vsftpd的搭建
		1、安装vsftpd,并且启动vsftpd
			#yum install vsftpd -y
			#service vsftpd start
		2、编辑配置文件/etc/vsftpd/vsftpd.conf,启用anon_upload_enable=YES,开启匿名上传;
		#mkdir /var/ftp/uploads
		#setfacl -m user:ftp:rwx /var/ftp/uploads

3、新建一个ftp用户 wy,密码设置为only2018,FTP目录设置为/var/ftp/wy并且可以上传删除文件。 # useradd -d /var/ftp/wy wy # echo only2018 | passwd --stdin wy 创建好FTP用户后,编辑配置文件/etc/vsftpd/vsftpd.conf,启用local_enable=YES、write_enable=YES这两项,默认是启动的; 4、验证匿名用户是否能上传文件,wy用户是否可以上传下载。 出现上图即为我们第二步搭建的没问题 到此,我们此次FTP服务器搭建就结束了;