CentOS7 防火墙详解
CentOS 有两种防火墙 FirewallD 和 iptables 防火墙。
CentOS7 使用的是 FirewallD 防火墙。
FirewallD 是 iptables 的前端控制器,用于实现持久的网络流量规则。它提供命令行和图形界面,在大多数 Linux 发行版的仓库中都有。与直接控制 iptables 相比,使用 FirewallD 有两个主要区别:
FirewallD使用区域和服务而不是链式规则。- 它动态管理规则集,允许更新规则而不破坏现有会话和连接。
FirewallD 是 iptables 的一个封装,可以让你更容易地管理 iptables 规则 – 它并不是 iptables 的替代品。虽然 iptables 命令仍可用于 FirewallD,但建议使用 FirewallD 时仅使用 FirewallD 命令。
1. firewalld 防火墙的基本使用
启动:
systemctl start firewalld
关闭:
systemctl stop firewalld
查看状态:
systemctl status firewalld
设置开机禁用防火墙 :
systemctl disable firewalld
设置开机启用防火墙 :
systemctl enable firewalld
2. systemctl 工具
systemctl 是 CentOS7 的服务管理工具中主要的工具,它融合之前 service 和 chkconfig 的功能于一体。
启动一个服务:
systemctl start firewalld.service
关闭一个服务:
systemctl stop firewalld.service
重启一个服务:
systemctl restart firewalld.service
显示一个服务的状态:
systemctl status firewalld.service
在开机时启用一个服务:
systemctl enable firewalld.service
在开机时禁用一个服务:
systemctl disable firewalld.service
查看服务是否开机启动:
systemctl is-enabled firewalld.service
查看已启动的服务列表:
systemctl list-unit-files|grep enabled
查看启动失败的服务列表:
systemctl --failed
3. 配置 firewalld-cmd
查看版本:
firewall-cmd --version
查看帮助:
firewall-cmd --help
显示状态:
firewall-cmd --state
查看所有打开的端口:
firewall-cmd --zone=public --list-ports
# 或
firewall-cmd --list-ports
更新防火墙规则:
firewall-cmd --reload
查看区域信息:
firewall-cmd --get-active-zones
查看指定接口所属区域:
firewall-cmd --get-zone-of-interface=eth0
拒绝所有包:
firewall-cmd --panic-on
取消拒绝状态:
firewall-cmd --panic-off
查看是否拒绝:
firewall-cmd --query-panic
4. 使用firewall-cmd配置端口
-
查看防火墙状态
firewall-cmd --state -
单个端口开放
firewall-cmd --zone=public --add-port=80/tcp --permanent命令含义:
zone#作用域add-port=80/tcp#添加端口,格式为:端口/通讯协议permanent#永久生效,没有此参数重启后失效
-
批量开放端口,如从3000到5000这之间的端口我们全部要打开
firewall-cmd --zone=public --add-port=3000-5000/tcp --permanent -
重新载入
firewall-cmd --reload -
查看
firewall-cmd --zone=public --query-port=80/tcp -
单个删除开放端口
firewall-cmd --zone=public --remove-port=80/tcp --permanent -
批量删除开放端口
firewall-cmd --zone=public --remove-port=3000-5000/tcp --permanent
技术好学屋


最新评论
搭好后 防火墙就自动关了,请问有没有办法让防火墙开起的情况下,比如添加端口,让梯子能用?
感谢,一次搞定
作者写的就是只能命令行访问,在GUI界面 注册表查询依旧没有走代理。
这个跟bandwagon的一样吗 也是能用v2ray吗
一步步来的,就是不行。
如果不需要了,如何恢复呢?