CentOS7 防火墙设置
CentOS7 默认的防火墙 不是iptables, 而是firewalle.
我们先看看firewalld
1. 查看firewall服务状态
systemctl status firewalld
2、查看firewall的状态
firewall-cmd --state
3、开启、重启、关闭、firewalld.service服务
# 开启
service firewalld start
# 重启
service firewalld restart
# 关闭
service firewalld stop
4、查看防火墙规则
firewall-cmd --list-all
5、指定端口开放,关闭
# 查询端口是否开放
firewall-cmd --query-port=8080/tcp
# 开放80端口
firewall-cmd --permanent --add-port=80/tcp
# 移除端口
firewall-cmd --permanent --remove-port=8080/tcp
#重启防火墙(修改配置后要重启防火墙)firewall-cmd --reload
# 参数解释
1、firwall-cmd:是Linux提供的操作firewall的一个工具;
2、--permanent:表示设置为持久;
3、--add-port:标识添加的端口;
再来看看iptables
默认情况下,CentOS7 在/etc/sysconfig/目录下是没有iptables文档。
因此我们需要安装 iptable 与 iptable-service才能使用iptables。
1、先检查是否安装
service iptables status
2、安装 iptables
yum install -y iptables* 网友推荐
如果你下载的版本低的话,建议做一下更新
yum update iptables
3、安装iptables-services
yum install iptables-services #通常情况下没有安装
4、禁用/停止自带的firewalld服务
systemctl stop firewalld #停止firewalld服务
systemctl mask firewalld #禁用firewalld服务
5、查看iptables现有规则并调整
iptables -L -n #查看iptables现有规则
iptables -P INPUT ACCEPT #先设置所有的端口都可以访问
iptables -F #清空所有默认规则
iptables -X #清空所有自定义规则
iptables -A INPUT -i lo -j ACCEPT #允许本地(本机)访问
iptables -A INPUT -p tcp --dport 22 -j ACCEPT #开放22端口
iptables -A INPUT -p tcp --dport 21 -j ACCEPT #开放21端口(FTP)
iptables -A INPUT -p tcp --dport 80 -j ACCEPT #开放80端口(HTTP)
iptables -A INPUT -p tcp --dport 443 -j ACCEPT #开放443端口(HTTPS)
iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT #允许ping
iptables -A INPUT -p tcp -s 45.96.174.68 -j ACCEPT #如果要添加内网ip信任(接受其所有TCP请求)
iptables -P INPUT DROP #过滤所有非以上规则的请求
iptables -I INPUT -s ***.***.***.*** -j DROP #要封停一个IP
iptables -D INPUT -s ***.***.***.*** -j DROP #要解封一个IP
6保存上述规则
service iptables save #保存防火墙规则
7.注册iptables服务
systemctl enable iptables.service
8.开启防火墙服务
systemctl start iptables #开启服务
systemctl start iptables.service #开启服务
systemctl restart iptables #重启服务
systemctl stop iptables #停止服务
systemctl status iptables.service #检查防火墙服务状态
systemctl enable iptables.service #设置防火墙开机启动
手动修改iptables文件指定开放端口号
vim /etc/sysconfig/iptables #修改iptables文件
#将如下端口号放到如下图所示位置
-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 443 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 7963 -j ACCEPT
#然后保存。
#最后在执行命令
service iptables save #保存防火墙配置