此ftp服务器部署环境:阿里云ESC服务器,centos7操作系统
第一步 安装vsftpd服务
yum install vsftpd -y
vsftpd 是“very secure FTP daemon”的缩写,安全性是它的一个最大的特点,支持很多其他的 FTP 服务器所不支持的特征。
安装位置默认在etc下,配置文件介绍:
/etc/vsftpd/vsftpd.conf 是 vsftpd 的核心配置文件。
/etc/vsftpd/ftpusers 是黑名单文件,此文件里的用户不允许访问 FTP 服务器。
/etc/vsftpd/user_list 是白名单文件,此文件里的用户允许访问 FTP 服务器。
第二步 配置
1、新建本地用户 useradd ftp1
设置密码 passwd ftp1
2、新建ftp目录 mkdir /var/ftp/test
3、修改ftp目录所属用户 chown ftp1:ftp1 /var/ftp/test -R
#第一个ftp1是指该目录的拥有者,第二个ftp1是指该群体的使用者,R指该目录下的所有目录及文件
4、修改vsftpd.conf配置文件(记得备份)
#禁止匿名登录FTP服务器
anonymous_enable=NO
#以下配置没有,需额外添加
#设置本地用户登录后所在目录
local_root=/var/ftp/test
#开启被动模式
pasv_enable=YES
#FTP服务器公网IP(也就是当前阿里云服务器的公网 IP)
pasv_address=***.**.**.***
#设置被动模式下,建立数据传输可使用port范围的最小值
pasv_min_port=10000
#设置被动模式下,建立数据传输可使用port范围的最大值
pasv_max_port=10088
#报错vsftpd 425 Security: Bad IP connecting.解决方法,后重启服务
pasv_promiscuous=YES
修改完上述参数时,记得去阿里云网络安全中添加端口:
启动vsftpd服务,关闭防火墙,就可以通过浏览器进行ftp://ip访问。
主动、被动连接的区别:
客户端连接服务端,建立控制连接,之后服务器主动建立数据连接,这种方式为主动连接,该模式方便服务器管理,但客户端的数据容易被拦截;
被动模式也称为passive模式,客户端向服务端发送PASV命令,告诉服务器用“被动模式”,数据连接也由客户端去连接服务器。