linux上搭载vsftpd服务
思路 :(1)安装软件
(2)测试服务是否可用
1.1.1.1 第一步:安装vsftpd软件
[root@node0719 ~]# yum -y install vsftpd |
1.1.1.2 第二步:关闭匿名访问
修改vsftpd配置文件 vim /etc/vsftpd/vsftpd.conf
1.1.1.3 第三步:添加一个FTP用户
创建一个用户,专门用来访问vsftpd服务。
[root@node0719 ~]# useradd ftpuser [root@node0719 ~]# passwd ftpuser |
1.1.1.4 第四步:设置防火墙
vsftpd服务默认端口号为21,修改防火墙,开放此端口,重启防火墙。
[root@node0719 ~]# vim /etc/sysconfig/iptables [root@node0719 ~]# service iptables restart |
1.1.1.5 第五步:修改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 |
1.1.1.6 第六步:启动vsftpd服务
[root@node0719 vsftpd]# service vsftpd start 为 vsftpd 启动 vsftpd: [确定] |
1.1.1.7 第七步:通过浏览器访问测试
访问地址:ftp://192.168.23.12:21,发现无法访问。
原因:被动模式下,数据传输服务被防火墙拦截了。
(1)被动模式
第二次请求过程中,客户端跟服务端建立数据通道;
服务端被动将数据响应给客户端。
第二次请求数据传输,会随机生成一个服务端口。被防火墙禁用。
(2)主动模式
服务端主动向客户端发送数据,会被客户端的防火墙禁掉。
多数客户端不支持主动模式,不安全。
1.1.1.8 第八步:配置被动模式
(1)编辑/etc/vsftpd/vsftpd.conf文件
[root@bogon ~]# vim /etc/vsftpd/vsftpd.conf |
(2)添加防火墙范围设置(在文件尾部添加即可):
pasv_min_port=30000 pasv_max_port=30999 |
(3)修改防火墙,开启30000:30999之间所有的端口。
(4)重启防火墙。
(5)重启vsftpd服务
再次访问浏览器,发现可以正常连接了。