Linux--firewalld防火墙基础(firewalld和iptables的关系,四表五链,netfilter与iptables的关系,iptables语法与参数,firewalld网络区域)
文章目录
- 前言
- 一:Firewalld,iptables概述
- 1.1:Firewalld简介
- 1.2:iptables简介
- 二:Firewalld和iptables的关系
- 2.1:netfilter
- 2.2:Firewalld、iptables
- 2.3:netfilter和Firewalld,iptables关系
- 2.4:Firewalld和iptables的区别
- 2:5:CentOS 6 和CentOS 7 防火墙的区别
- 三:iptables详解
- 3.1:Netfilter模块概念
- 3.2:Netfilter与iptables之间的关系
- 3.3:四表五链☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
- 3.3.1:具体的四表
- 3.3.2:具体的五链
- 3.3.3:四表五链之间的关系
- 3.4:iptables语法格式与常用参数
- 3.5:设置防火墙策略,演示安装Apache服务
- 四:Firewalld网络区域☆☆☆☆☆
- 4.1:区域介绍
- 五:Firewalld防火墙的配置方法
- 六:Firewall-config图形工具(操作截图)
前言
- Linux防火墙体系主要工作在网络层,针对TCP/IP数据包实施过滤和限制,属于典型的包过滤防火墙(或称为网络层防火墙)
- Linux系统的防火墙体系基于内核编码实现,具有非常稳定的性能和极高的效率,因此得到广泛的应用
一:Firewalld,iptables概述
1.1:Firewalld简介
- 支持网络区域所定义的网络链接以及接口安全等级的动态防火墙管理工具
- 支持IPv4,IPv6防火墙设置以及以太网桥
- 支持服务或应用程序直接添加防火墙规则接口
- 拥有两种配置模式
- 运行时配置(一般测试的时候使用)
- 永久配置
1.2:iptables简介
- iptables是Linux的防火墙管理工具而已,真正实现防火墙功能的是Netfilter,我们配置类iptables规则后Netfilter通过这些规则来进行防火墙过滤等操作
二:Firewalld和iptables的关系
2.1:netfilter
- 位于Linux内核中的包过滤功能体系
- 称为Linux防火墙的“内核态”
2.2:Firewalld、iptables
- CentOS 7默认的管理防火墙规则的工具(Firewalld)
- 称为Linux防火墙的“用户态”
2.3:netfilter和Firewalld,iptables关系
只有iptables才能和内核态进行交互
2.4:Firewalld和iptables的区别
Firewalld | iptables | |
---|---|---|
配置文件 | /usr/lib/firewalld,/etc/firewalld | /etc/sysconfig/iptables |
对规则的修改 | 不需要全部刷新策略,不丢失现行连接 | 需要全部刷新策略,丢失链接 |
防火墙类型 | 动态防火墙 | 静态防火墙 |
2:5:CentOS 6 和CentOS 7 防火墙的区别
centos7有firewalld,iptables
centos6是iptables
图形化管理工具 firewall-config
命令管理工具:iptables(操作复杂) firewall-cmd
三:iptables详解
3.1:Netfilter模块概念
- netfilter是主要的工作模块,位于内核中,在网络层的五个位置(就是防火墙四表五链中的五链)注册了一些函数,用来抓取数据包
- 将数据包的信息拿出来匹配各个链位置在对应表中的规则:匹配之后,进行相应的处理ACCEPT,DROP等等
3.2:Netfilter与iptables之间的关系
- 总结,只有iptables才能和内核态进行交互
3.3:四表五链☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
- 链就是位置:共有五个
- 进路由(PREROUTING)
- 进系统(INPUT)
- 转发(FORWARN)
- 出系统(OUTPUT)
- 出路由(POSTROUTING)
- 表就是存储的规则
- 数据包到了该链处,会去对应表中查询设置的规则,然后决定是否放行,丢弃,转发还是修改等操作
3.3.1:具体的四表
- filter表——过滤数据包(filter是默认的表,在使用iptables命令进行配置规则的时候,不特指其他的表就会默认filter)
- Nat表——用于网络地址转换(IP,端口)
- Mangle表——修改数据包的服务类型,TTL,并且可以配置路由实现QOS
- Raw表——决定数据包是否被状态跟踪机制处理
3.3.2:具体的五链
- INPUT链——进来的数据包应用此规则链中的策略
- OUTPUT链——外出的数据包应用此规则链中的策略
- FORWARD链——转发数据包时应用此规则链中的策略
- PREROUTING链——对数据包做路由选择前应用此规则链中的规则(所有的数据包进来的时候都先由这个链处理)
- POSTROUTING链——对数据包作路由选择后应用此规则链中的规则(所有的数据包出来的时候都先由这个链处理)
3.3.3:四表五链之间的关系
表包含链
链包含规则
3.4:iptables语法格式与常用参数
iptables语法格式
iptables [-t 表名] 选项 [链名] [条件] [-j 控制类型] 如果不指定表名,则会默认指定filter表
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 匹配来源端口号
iptables命令使用总结
所有链名必须大写 INPUT/OUTPUT/FORWARD/PREROUTING/POSTROUTING 所有表名必须小写 filter/nat/mangle 所有动作必须大写 ACCEPT/DROP/SNAT/DNAT/MASQUERADE 所有匹配必须小写 -s/-d/-m <module_name>/-p
3.5:设置防火墙策略,演示安装Apache服务
环境:
VMware软件
一台centos 7系统
一台win10
配置centos7
[root@localhost~]# yum install httpd -y [root@localhost~]# systemctl start httpd '此时用win10浏览器访问本主机ip地址发现是无法连接的' [root@localhost~]# iptables -I INPUT -i ens33 -p tcp --dport 80 -s 192.168.197.141/24 -j ACCPET '在规则链头部加入规则,指定从ens33网卡流入的,匹配tcp协议,匹配80端口(httpd的端口号)匹配源ip地址(win10),指定控制类型为接受' [root@localhost~]# iptables -L '查看策略是否设置成功'
此时使用win10网页输入centos7ip地址,可以看到Apache服务,配置成功
四:Firewalld网络区域☆☆☆☆☆
4.1:区域介绍
区域 | 描述 |
---|---|
drop(丢弃) | 任何接收的网络数据包都会被丢弃,没有任何回复。仅能有发送出去的网络连接 |
block(限制) | 任何接收的网络连接都被IPv4的icmp-host-prohibited信息和IPv6的icmp6-adm-prohibited信息所拒绝 |
public(公共) | 在公共区域内使用,不能相信网络内的其他计算机不会对您的计算机造成危害,只能接收经过选取的链接 |
external(外部) | 特别是为路由器启动了伪装功能的外部网。您不能信任来自网络的其他计算,不能相信他们不会对您的计算机造成危害,只能接收经过选择的连接 |
dmz(非军事区) | 用于您的非军事区内的电脑,此区域内可公开访问,可以有限的进入您的内部网络,仅仅接收经过选择的连接 |
work(工作) | 用于工作区,您可以基本相信网络内的其他电脑不会危害您的电脑,仅仅接收经过选择的连接 |
home(家庭) | 用于家庭网络,您可以基本信任网络内的其他计算器不会危害您的计算机,仅仅接收经过选择的连接 |
internal(内部) | 用于内部网络,您可以基本上信任网络内的其他计算机不会威胁您的计算机,仅仅接受经过选择的连接 |
trusted(信任) | 可接收所有的网络连接 |
- 区域如同进入主机的安全门,每个区域都具有不同限制程度的规则
- 可以使用一个或多个区域,但是任何一个活跃区域至少需要关联源地址或接口
- 默认情况下,public区域是默认区域,包含所有接口(网卡)
- iptables没有区域的概念
- 外部流量通过规则进入相应的区域接口(网卡)
- firewalld数据处理流程
- 检查数据来源的源地址
- 若源地址关联到特定的区域,则执行该区域所指定的规则
- 若源地址未关联到特定的区域,则使用传入网络接口的区域并执行该区域所指定的规则
- 若网络接口未关联到特定的区域,则使用默认区域并执行该区域所指定的规则
- 检查数据来源的源地址
五:Firewalld防火墙的配置方法
- 运行时配置
- 实时生效,并持续至firewalld重新启动或重新加载配置
- 不中断现有连接
- 不能修改服务配置
- 永久配置
- 不立即生效,除非firewalld重新启动和重新加载配置
- 中断现有连接
- 可以修改服务配置
- firewall-config图形工具(用的少)
- firewall-cmd命令行工具(用的多)
- /etc/firewalld/中的配置文件
- firewalld会优先使用/etc/firewalld/中的配置,如果不存在配置文件,则使用/usr/bin/firewalld/中的配置
- /etc/firewalld/:用户自定义配置文件,需要时可通过从/usr/lib/firewalld/中拷贝
- /usr/lib/firewalld/:默认配置文件,不建议修改,若恢复至默认配置,可以直接删除/etc/firewalld/中的配置
六:Firewall-config图形工具(操作截图)
[root@localhost ~]# firewall-config '//在终端输入,不要远程'
包含运行时配置/永久配置
重新加载防火墙
- 更改永久配置并生效
关联网卡到指定区域
修改默认区域
连接状态
“区域”选项卡
-
- “服务”子选项卡
- “端口”子选项卡
- “协议”子选项卡
- “源端口”子选项卡
- “伪装”子选项卡
- “端口转发”子选项卡
- “ICMP过滤器”子选项卡
“服务”选项卡
Linux--firewalld防火墙基础(firewalld和iptables的关系,四表五链,netfilter与iptables的关系,iptables语法与参数,firewalld网络区域)相关推荐
- Linux系统管理(3)——防火墙 iptables基本原理 四表五链 NetFilter 概述
Linux防火墙主要就行工作的部分在内核,这个模块叫NetFilter:我们平时配置的iptables是给我们的一个配置界面,我们通过iptables配置规则,配置之后,NetFilter通过这些规则 ...
- iptables总结--理解四表五链/snat/dnat/redirect/synproxy/性能
1. iptables四表五链 四表五链: 链就是位置:共有五个 进路由(PREROUTING).进系统(INPUT) .转发(FORWARD).出系统(OUTPUT).出路由(POSTROUTING ...
- Firewalld,iptables概述(netfilter和Firewalld,iptables三者之间的关系,四表五链,Firewalld防火墙的配置方发,SNAT,DNAT了解)
文章目录 Firewalld,iptables概述 Firewalld了解 iptables了解 Firewalld和iptables的关系 netfilter Firewalld.iptables ...
- 云小课 | 守护网络安全不是问题,iptables的四表五链为你开启“八卦阵”
摘要:担心网络基本安全?iptables八卦阵为您守护!本文带您一起了解iptables的相关知识. 网络世界就和现实世界一样,总是会有些不怀好意的"人"出现,扫扫你的端口啊,探测 ...
- iptables四表五链
本文收录于微信公众号「 LinuxOK 」,ID为:Linux_ok,关注公众号第一时间获取更多技术学习文章. 如下是具有双网卡的Linux服务器,数据入口网卡是eth0,数据出口网卡是eth1: 而 ...
- Firewalld防火墙基础
目录 前言 一.概述 2 Firewalld和iptables的关系 2.1 Firewalld和iptables的关系 3 Firewalld区域 3.1 firewalld区域的概念 3.2 fi ...
- 理论+实操: linux中firewalld防火墙基础讲解(转载)
前言 firewalld概述.firewalld 中的d代表服务 firewalld 和 iptables 的关系 firewalld 网络区域 firewalld 防火墙的配置方法 firewall ...
- centos7 防火墙_Linux系统安全Centos 7的Firewalld防火墙基础
一.Linux防火墙的基础 Linux的防火墙体系主要工作在网络层,针对TCP/IP数据包实时过滤和限制,属于典型的包过滤防火墙(或称为网络层防火墙).Linux系统的防火墙体系基于内核共存:fire ...
- linux脚本变量运算符,linux——Shell 脚本基础篇(变量类型,变量操作,定义,运算与逻辑关系)...
Shell 脚本基础 1.变量 什么是变量 #a=1 # echo $a 1 变量:可以变化的量 1.2变量名称注意事项 变量名不能以数字开头 不能与系统中已有的环境变量重名,尽量不要全部使用大写,尽 ...
最新文章
- android 自定义view如何控制view的高度_Android自定义View属性动画
- Kotlin实战指南六:可空类型、非可空类型
- Yii的控制器等名称获取
- 2020年十大币预测_2020年十大商业智能工具
- DNS域名解析基础知识
- 第 3 章 sqlmap - automatic SQL injection and database takeover tool
- 申宝投资-昨日三大指数缩量探底回升
- android killer反编译闪退,Android Killer反编译失败
- Ansys2020r2 提示The requested data is not available.The ETABLE command is ignored
- 开屏展示图的优化与理解
- 世界上最有名的十大思想实验
- Discovery studio使用之DNA建模
- 2021-10-26 2021年B站1024安全攻防题第一题(加密解密)
- python实现远程控制
- LBS AR开发实录(1):手机位姿数据的实时获取
- 组合预测模型 | PSO-ELM、ELM极限学习机数据回归预测对比(Matlab程序)
- 福建2013年度翻译专业资格考试工作通知
- 智邦国际ERP系统实现手机端扫码汇报生产工序
- Swift —— 属性
- Firefox浏览器浏览自己做的网站需要输入用户名和密码解决
热门文章
- 奇瑞汽车用鸿蒙,奇瑞正式确认:将搭载“华为鸿蒙车机系统”,鸿蒙系统真的要来了...
- 工作笔记:Android高德定位使用说明
- 以太坊的区块和存储(一):区块头
- 有5个人坐在一起,问第五个人多少岁?他说比第4个人大2岁。问第4个人岁数,他说比第3个人大2岁。问第三个人,又说比第2人大两岁。问第2个人,说比第一个人大两岁。最后问第一个人,他说是10岁。
- Exception caught: mqAdminExt get broker stats data TOPIC_PUT_NUMS failed
- 【雷达仿真 | FMCW TDMA-MIMO毫米波雷达信号处理仿真(可修改为DDMA-MIMO)】
- Vertica 常用语法
- 微信开发者工具,调试公众号网页,控制台不显示,解决方案
- php网页解析器,浅析php插件 HTMLPurifier HTML解析器
- 附件的文件夹超过了服务器,邮件附件太大发不了 这3种方式了解一下