1.安装vsftp
1.1 安装vsftp,测试安装的vsftpd的版本是:vsftpd-3.0.2-25.el7.x86_64
yum -y install vsftpd
1.2 修改配置文件
vi /etc/vsftpd/vsftpd.conf
anonymous_enable=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
1.3、设置vsftpd开机启动
systemctl enable vsftpd.service
1.4、启动并查看vsftpd服务状态,systemctl启动服务成功不会有任何提示,绿色的active表示服务正在运行
systemctl start vsftpd.service
systemctl status vsftpd.service
1.5、重新设置用户密码
passwd ftp
2、本地验证ftp是否可以正常访问
打开浏览器输入:ftp://localhost
3、 外部证ftp是否可以正常访问
3.1、关闭防火墙(也可以设置防火墙规则,得再百度了)
systemctl stop firewalld.service
为防止机器重启后防火墙服务重新开启,可将防火墙服务永久关闭。
systemctl disable firewalld.service
* 不关闭防火墙的方法:
永久开放 ftp 服务# firewall-cmd --add-service=ftp --permanent
永久关闭# firewall-cmd --remove-service=ftp --permanent
重起使设定生效。
systemctl restart firewalld
注:可以通过两种方式来激活最新配置 systemctl restart firewalld 和 firewall-cmd --reload
两种方式,前一种是重启firewalld服务,建议使用后一种“重载配置文件”。重载配置文件之后不会断掉正在连接的tcp会话,而重启服务则会断开tcp会话。
查看设定是否生效
iptables -L -n | grep 21
检测防火墙状态
firewall-cmd --state
* 查看防火墙开放所有的端口 netstat -ntlp
3.2、在window上输入ftp://IP地址,可看到ftp下的目录(pub为系统预设的)
4、文件读写。
到上面为止,我们发现ftp目录下并不能读写文件,这是由文件夹权限和selinux引起的。
4.1、设置文件夹权限,将pub文件夹的权限设置为777
chmod 777 -R /var/ftp/pub
4.2、关闭selinux服务
vi /etc/selinux/config
将SELINUX=enforcing改为:SELINUX=disabled
4.3、系统重启,让配置生效
shutdown -r now
其他命令:
重启 service vsftpd restart
启动/停止service vsftpd start/stop
状态 service vsftpd status
firewalld的基本使用
启动: systemctl start firewalld
关闭: systemctl stop firewalld
查看状态: systemctl status firewalld
开机禁用 : systemctl disable firewalld
开机启用 : systemctl enable firewalld
查看所有打开的端口: firewall-cmd --zone=public --list-ports
添加
firewall-cmd --zone=public --add-port=80/tcp --permanent (--permanent永久生效,没有此参数重启后失效)
重新载入
firewall-cmd --reload
查看
firewall-cmd --zone= public --query-port=80/tcp
删除
firewall-cmd --zone= public --remove-port=80/tcp --permanent