CentOS 7防火墙管理:firewalld安装与配置
服务操作
启动服务
[root@ecs ~]# systemctl start firewalld关闭服务
[root@ecs ~]# systemctl stop firewalld重启服务
[root@ecs ~]# systemctl restart firewalld注:restart会关闭主进程后重新开启新进程;reload不会关闭主进程,重读配置文件后应用新规则。
开启自启动
[root@ecs ~]# systemctl enable firewalld关闭自启动
[root@ecs ~]# systemctl disable firewalld查看服务状态
[root@ecs ~]# systemctl status firewalld
命令操作
查看服务状态
[root@ecs ~]# firewall-cmd --state常见参数及说明:
参数 说明 --reload重启防火墙服务 --list-ports查看开放端口 --list-services查看开放服务 查询端口开放状态
[root@ecs ~]# firewall-cmd --query-port=80/tcp添加开放端口
[root@ecs ~]# firewall-cmd --zone=public --add-port=80/tcp --permanent--zone=public:作用域--add-port=80/tcp:开放80端口,格式:端口号/通讯协议--permanent:永久生效,不添加此参数则重启后失效
注:添加端口后,必须使用
firewall-cmd --reload重新加载后才生效。移除开放端口
[root@ecs ~]# firewall-cmd --zone=public --remove-port=80/tcp --permanent禁止指定IP访问
[root@ecs ~]# firewall-cmd --zone=public --add-rich-rule="rule family='ipv4' source address='10.0.0.1/24' port port=80 protocol='tcp' drop" --permanentport port=80:不设置port则禁止源IP访问所有端口。
解除禁止指定IP访问
[root@ecs ~]# firewall-cmd --zone=public --remove-rich-rule="rule family='ipv4' source address='10.0.0.1/24' port port=80 protocol='tcp' drop" --permanentdrop:直接丢弃请求,不返回任何数据,直到客户端连接尝试超时。WEB服务推荐,既节省资源,又可以延缓被攻击进度。reject:直接断开,并返回ICMP错误信息包。推荐内网使用,方便诊断、调试网络设备或防火墙造成的问题。
查看链表规则
[root@ecs ~]# iptables -t filter -vL INPUT