1.安装服务器以及客户端
安装服务器
yum -y install vsftpd
安装客户端
yum -y install ftp
设置自启动状态
systemctl enable vsftpd.service
2.设置SELinux和防火墙
.默认情况下,变量都设置为off值,因此为了能让访客用户可以完成FTP的上传和下载功能,需要对相应的变量值做修改。执行命令:
#setsebool -P ftpd_full_access on
将SELinux中的ftpd_full_access设置为on,使得所有通过验证的用户都可以进行上传下载
需要注意上述修改变量布尔值的方法立即生效,且永久设置。去掉命令中“-P”参数,则为临时设置。
2.防火墙对FTP服务器的控制
防火墙可以防御通过端口号对系统造成的攻击,因此防火墙通常禁止某些远程访问。因此在远程访问FTP服务器时需要对防火墙做相应的设置。
最简单的方法是执行#systemctl stop firewalld.service
命令关闭防火墙。如果想在开启防火墙的状态下远程访问FTP服务器,需要执行以下命令:
#firewall-cmd --permanent --zone=public --add-service=ftp //永久开放ftp服务
#firewall-cmd --reload //重新加载防火墙
由于我们是在阿里云服务器里搭建,所以不需要关闭防火墙。如果是在linux环境下操作则需要命令关闭防火墙,此步骤可省略。
3.创建FTP账号
创建FTP访客账号的命令:
#useradd -d /var/ftp/主目录名 -s /sbin/nologin -g ftp 用户名
当FTP账号创建后,必须立即创建密码,使用passwd命令,格式如下:
#passwd 用户名
输入密码两次,注意密码并不回显。
创建成功后如图所示
启动服务
systemctl start vsftpd
查看服务是否启动成功,输入命令出现下图则证明启动成功
ftp 127.0.0.1
输入用户名密码登录进去后输入pwd可以看到你的登录路径
4.外网访问端口号
a.到阿里云服务器添加安全组规则,端口号为20和21,授权对象均为0.0.0.0/0
此时可以ftp 你的公网ip后输入用户名密码后连接ftp服务器登录,如图所示:
5.用浏览器访问
首先要设置vsftp被动模式,修改其配置文件。
进入目录
cd /etc/vsftpd/
修改配置文件
vim vsftpd.conf
将以下代码插入并保存退出
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
pasv_min_port=30000
pasv_max_port=30999
重启服务
systemctl restart vsftpd
返回阿里云服务器添加安全组规则,端口范围与授权类型如下
打开浏览器或者 win+r cmd
输入ftp://ip/ 如图所示
完成!