第一步:安装vsftpd软件
[root@node0719 ~]# yum -y install vsftpd
第二步:关闭匿名访问
修改vsftpd配置文件 vi /etc/vsftpd/vsftpd.con
第三步:添加一个FTP用户
创建一个用户,专门用来访问vsftpd服务:
[root@node0719 ~]# useradd ftpuser
[root@node0719 ~]# passwd ftpuser
第四步:设置防火墙
vsftpd服务默认端口号为21,修改防火墙,开放此端口,重启防火墙。
[root@node0719 ~]# vim /etc/sysconfig/iptables
[root@node0719 ~]# service iptables restart
第五步:修改selinux(Linux安全内核系统)
(1)先查看selinux,默认是禁用了ftp访问的。
[root@bogon ~]# getsebool -a | grep ftp
allow_ftpd_anon_write --> off
allow_ftpd_full_access --> off
allow_ftpd_use_cifs --> off
allow_ftpd_use_nfs --> off
ftp_home_dir --> off
ftpd_connect_db --> off
ftpd_use_passive_mode --> off
httpd_enable_ftp_server --> off
tftp_anon_write --> off
(2)修改selinux,开放ftp访问权限
[root@bogon ~]# setsebool -P allow_ftpd_full_access on
[root@bogon ~]# setsebool -P ftp_home_dir on
第六步:启动vsftpd服务
[root@node0719 vsftpd]# service vsftpd start
为 vsftpd 启动 vsftpd: [确定]
第七步:通过浏览器访问测试
访问地址:ftp://192.168.23.12:21,发现无法访问。
原因:被动模式下,数据传输服务被防火墙拦截了。
(1)被动模式
第二次请求过程中,客户端跟服务端建立数据通道;
服务端被动将数据响应给客户端。
第二次请求数据传输,会随机生成一个服务端口。被防火墙禁用。
2)主动模式
服务端主动向客户端发送数据,会被客户端的防火墙禁掉。
多数客户端不支持主动模式,不安全。