linux centos6.8 安装vsftpd组件
一、安装vsftpd组件
安装命令:yum -y install vsftpd
安装完后,有/etc/vsftpd/vsftpd.conf 文件,是vsftp的配置文件。
二、添加一个ftp用户
添加用户命令:useradd ftpuser
此用户就是用来登录ftp服务器用的,这样一个用户建完,可以用这个登录,记得用普通登录不要用匿名了。登录后默认的路径为 /home/ftpuser。
三、给ftp用户添加密码
添加密码命令:passwd ftpuser
输入两次密码后修改密码。
四、防火墙开启21 端口
因为ftp默认的端口为21,而centos默认是没有开启的,所以要修改iptables(防火墙)文件:
- 打开防火墙文档:
vim /etc/sysconfig/iptables
- 打开21端口:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
- :wq 保存并退出
- 重启防火墙:
service iptables restart
五、修改selinux
外网是可以访问上去了,可是发现没法返回目录(使用ftp的主动模式,被动模式还是无法访问),也上传不了,因为selinux作怪了。
修改selinux:
执行以下命令查看状态:getsebool -a | grep ftp
若看到此页面,证明selinux启动中。可以进行下一步,若提示:LINUX中错误 SELinux is disabled。则说明selinux已经被彻底的关闭了,需要重新开启selinux,请按下面步骤:
1、打开设置文档:vi /etc/selinux/config
2、更改:SELINUX=1
3、重启linux,不重启是没办法立刻开启selinux的
回归主题。
若:
allow_ftpd_full_access --> off
ftp_home_dir --> off
看到两行都是off,代表没有开启外网的访问。
输入以下两行命令:
1、setsebool -P allow_ftpd_full_access on
2、setsebool -P ftp_home_dir on
这样应该没问题了(如果还是不行,看看是不是用了ftp客户端工具用了passive模式访问了,如提示Entering Passive mode,就代表是passive模式,默认是不行的,因为ftp passive模式被iptables(防火墙)挡住了,下面会讲怎么开启,如果懒得开的话,就看看你客户端ftp是否有port模式的选项,或者把passive模式的选项去掉。如果客户端还是不行,看看客户端上的主机的电脑是否开了防火墙,关吧)
FileZilla的主动、被动模式修改:
菜单:编辑→设置
六、关闭匿名访问
打开vsftpd.conf文档:vi /etc/vsftpd/vsftpd.conf
重启ftp服务:service vsftpd restart
七、开启被动模式
默认是开启的,但是要指定一个端口范围。
打开vsftpd.conf文档:vi /etc/vsftpd/vsftpd.conf
在后面加上:
pasv_min_port=30000
pasv_max_port=30999
表示端口范围为30000~30999,这个可以随意改。改完重启一下vsftpd:service vsftpd restart
由于指定这段端口范围,iptables(防火墙)也要相应的开启这个范围,所以像上面那样打开iptables文件。
也是在21上下面另起一行,更那行差不多,只是把21 改为30000:30999:-A INPUT -m state --state NEW -m tcp -p tcp --dport 30000:30999 -j ACCEPT
:wq保存。
重启iptables(防火墙):service iptables restart
这样就搞定了。
八、设置开机启动vsftpd ftp服务
设置开机启动命令:chkconfig vsftpd on
到此 vsftpd 组件安装完毕。
有其他交流的想法,可以加我创建的Q群:820080257