防火墙 之 基本命令

■Firewalld和iptables的关系

■Firewalld防火墙的配置方法

■Firewall-config图形工具

一:Firewalld和iptables的区别

在这里插入图片描述

二:四表五链(重要)

表就是存储的规则:数据包到了该链处,会去对应表中查询设置的规则,然后决定是否放行。丢弃、转发还是修改等等操作。

链共有五个:

进路由(REROUTING)、进系统(INPUT)、转发(FORMARD)、出系统(OUTPUT)、出路由(POSTROUTING) ;
1,INPUT链

进来的数据 包应用此规则链中的策略

2,OUTPUT链

外出的数据包应用此规则链中的策略

3,FORWARD链

转发数据包时应用此规则链中的策略

4,PREROUTING链

对数据包作路由选择前应用此链中的规则(所有的数据包进来的时侯都先由这个链处理)

5,POSTROUTING链

对数据包作 路由选择后应用此链中的规则(所有的数据包出来的时候都先由这个链处理)

三:具体的四表:

filter表 ~~ 过滤 转发 数据包。 默认的表。
Nat表 ~~ 用 于网络地址转换(IP、 端口)
Mangle表 ~~ 修改数据包的服务类型,TTL. 井且可以配置路由实现
Raw表 ~~ 决定 数据包是否被状态跟踪机制处理

注:表与链的关系:一个表 包含多个链;一个链 包含多条规则。

四:iptables 语法格式:

iptables [ -t 表名 ] 选项 [链名] [条件] [ -j 控制类型]

iptables常用参数

-P 设置默认策略:iptables
-P INPUT (DROP |ACCEPT)
-F 清空规则链
-L 查看规则链
-A 在规则链的末尾加入新规则
-I num 在规则链的头部加入新规则
-D num 删除某一条规则
-s 匹配来源地址 IP/MASK,加叹号"!"表示除这个IP外。
-d 匹配目标地址
-i 网卡名称 匹配从这块网卡流入的数据
-o 网卡名称匹配从这块网卡流出的数据
-p 匹配协议,如tcp, udp, icmp
- - dport num 匹配目标端口号
- - sport num 匹配来源端口号

五:Firewall-config命令行工具

1,查询 firewalld状态:
#firewall-cmd --state
#systemctl status firewalld

在这里插入图片描述

2,重新加载 firewalld设置:
#firewall-cmd --reload        //重新加载 firewalld设置
#firewall-cmd --complete-reload
状态信息将会丢失,多用于处理防火墙出现问题时。
#systemctl restart firewalld     //重启防火墙服务

在这里插入图片描述

3,查看预定义信息命令:
#firewall-cmd --get-zones     //查看预定义的区域
#firewall-cmd --get-services   //查看预定义的服务
#firewall-cmd --get-icmptypes  //查看预定义的ICMP类型 

在这里插入图片描述

4,显示及设置区域的命令:
#firewall-cmd --get-default-zone      
//显示接口的默认区域
#firewall-cmd --set-default-zone=internal  
//设置接口的默认区域为internal
#firewall-cmd --get-active-zones    
//显示已激活的所有区域

激活的条件:区域至少关联1个接口或1个源地址/网段

在这里插入图片描述

5,为区域 添加、更改、删除接口命令:
#firewall-cmd --get-zone-of-interface=ens33
//显示ens33接口绑定的区域
#firewall-cmd --zone=work --add-interface=ens33
//为ens33绑定work区域

在这里插入图片描述

#firewall-cmd --get-zone-of-interface=ens36

//显示ens36接口绑定的区域
#firewall-cmd --zone=work --change-interface=ens36

//为work区域更改绑定的网络接口ens36
#firewall-cmd --zone=work --query-interface=ens36

//查询work区域中是否包含接口ens36
#firewall-cmd --zone=work --remove-interface=ens36

//为work区域删除绑定的网络接口ens36
#firewall-cmd --zone=work --add-interface=ens36

//为ens36接口绑定work区域

在这里插入图片描述

6,查看区域及规则:
#firewall-cmd --list-all           //显示默认区域的所有规则
#firewall-cmd --list-all-zones     //显示所有区域的所有规则
#firewall-cmd --zone=internal --list-all 
//显示internal区域的所有规则

在这里插入图片描述

7,设置firewall服务 命令:
#firewall-cmd --zone=internal --list-services
//显示internal区域内允许访问的所有服务
#firewall-cmd --zone=internal --remove-service=ssh
//删除internal 区域中的SSH的服务
#firewall-cmd --zone=public --add-service=smtp
//为public区域设置 允许访问SMTP服务
#firewall-cmd --zone=public --query-service=smtp
//查询public区域中是否启用了SMTP服务

在这里插入图片描述

8,firewalld端口操作命令:
#firewall-cmd --zone=internal --add-port=80/tcp --timeout=5m
//启用internal区域80端口的TCP协议组合
#firewall-cmd --zone=internal --list-ports
//显示internal区域内允许访问的所有端口号
#firewall-cmd --zone=internal --remove-port=80/tcp
//禁用internal区域80端口的TCP协议组合
#firewall-cmd --zone=internal --query-port=80/tcp
//查询internal区域中是否启用了80端口和TCP协议组合

在这里插入图片描述

9,firewalld阻塞ICMP操作命令:
**#firewall-cmd --zone=work --add-icmp-block=echo-reply
//为work区域设置 阻塞echo-reply类型的ICMP**
#firewall-cmd --zone=work --list-icmp-blocks
//显示work区域内阻塞的所有ICMP类型
#firewall-cmd --zone=work --remove-icmp-block=echo-reply
//删除work区域已阻塞的echo-reply类型的ICMP
#firewall-cmd --zone=work --query-icmp-block=echo-reply
//查询work区域的echo-reply类型的ICMP 是否阻塞

在这里插入图片描述

发布了56 篇原创文章 · 获赞 6 · 访问量 1889

猜你喜欢

转载自blog.csdn.net/weixin_45691464/article/details/103460006