- 安装vsftpd
yum install -y vsftpd
- 设置开机启动
systemctl enable vsftpd.service
- 启动ftp服务
systemctl start vsftpd.service
执行该命令时如果提示错误信息Job for vsftpd.service failed because the control process exited with error code,请排查是否存在下述问题。
网络环境不支持IPv6时,运行命令vim /etc/vsftpd/vsftpd.conf将内容listen_ipv6=YES修改为listen_ipv6=NO。
MAC地址不匹配时,运行命令ifconfig查看MAC地址,并在/etc/sysconfig/network-scripts/ifcfg-xxx配置文件中新增或修改HWADDR=<MAC地址>。
- 查看当前服务监听端口
netstat -antup | grep ftp
- 创建ftp用户
adduser ftptest
passwd ftptest
根据提示我们暂时把密码也设定为ftptest
- 创建ftp服务的根目录
mkdir /var/ftp/test
创建白名单
vim /etc/vsftpd/chroot_list
- 设置目录权限
chown -R ftptest:ftptest /var/ftp/test
- 修改配置文件
vim /etc/vsftpd/vsftpd.conf
#修改下列参数的值
anonymous_enable=NO #禁止匿名登录FTP服务器
local_enable=YES #允许本地用户登录FTP服务器
listen=YES #监听IPv4 sockets
#在行首添加#注释掉以下参数
#listen_ipv6=YES #关闭监听IPv6 sockets添加下列参数:
#添加下列参数
local_root=/var/ftp/test #设置本地用户登录后所在目录
chroot_local_user=YES #全部用户被限制在主目录
chroot_list_enable=YES #启用例外用户名单
chroot_list_file=/etc/vsftpd/chroot_list #指定例外用户列表文件,列表中用户不被锁定在主目录,内容可以为空,文件必须创建
allow_writeable_chroot=YES
pasv_enable=YES #开启被动模式
pasv_address=<FTP服务器公网IP地址> #本教程中为Linux实例公网IP
pasv_min_port=<port number> #设置被动模式下,建立数据传输可使用的端口范围的最小值
pasv_max_port=<port number> #设置被动模式下,建立数据传输可使用的端口范围的最大值建议您把端口范围设置在一段比较高的范围内,例如50000~50010,有助于提高访问FTP服务器的安全性。
- 重启服务
systemctl restart vsftpd.service
-
设置安全组(对外放开端口)
-
chrome浏览器上输入ftp://<ecs公网ip>:21或者自己使用ftp客户端验证即可。
网友评论