Linux之iptables防火墙概述及相关规则(一)

简介: Linux之iptables防火墙概述及相关规则(一)

前言


保障数据的安全性是继保障数据的可用性之后最为重要的一项工作。防火墙作为公网与内网之间的保护屏障,在保障数据的安全性方面起着至关重要的作用。

iptables

centos 5/6  系统默认防火墙

firewalld

centos 7/8  系统默认防火墙

iptables用的较多

在7和8上也是有的,现在流行的k8s就是基于iptables


一、iptables防火墙基础


硬件防火墙:性能好,用图形化 管理,一般公司用硬件(华为E9000)

软件防火墙:做辅助,做在服务器上,用命令管理

Linux系统的防火墙:IP信息包过滤系统,它实际上由两个组件netfilter和iptables组成


主要工作在网络层,针对IP数据包,体现在对包内的IP地址、端口、协议等信息的处理上


1.1 netfilter和iptables关系

Linux中称为包过滤防火墙,iptables和firewalld都有两个组件netfilter和iptables,这两种称呼都可以表示Linux防火墙。


注意:与netfilter相提并论的iptables是iptables防火墙的组件,可以认为是iptables防火墙的分支,但是名字一样


netfilter

1.位于Linux内核中的包过滤功能体系

2.称为Linux防火墙的“内核态”(又称内核空间)

iptables

1.位于/sbin/iptables,用来管理防火墙规则的工具

2.称为Linux防火墙的“用户态”(又称用户空间)

netfilter/iptables后期简称为iptables, iptables是基于内核的防火墙,其中内置了raw、mangle、nat和filter四个规则表。


表中所有规则配置后,立即生效,不需要重启服务。



1.2 iptables的四表五链

规则表的作用

容纳各种规则链

规则链的作用

容纳各种防火墙规则

总结

表中有链,链中有规则

1.2.1 四表

含义

包含的规则链

raw表

确定是否对该数据包进行状态跟踪

OUTPUT、PREROUTING

mangle表

修改数据包内容,用来做流量整形的,给数据包设置标记

INPUT、OUTPUT、FORWARD、PREROUTING、POSTROUING

nat表

负责网络地址转换,用来修改数据包中的源、目标IP地址或端口

OUTPUT、PREROUTING、POSTROUING

filter表

负责过滤数据包,确定是否放行该数据包(过滤)

INPUT、FORWARD、OUTPUT

在iptables的四个规则表中, mangle表和raw表的应用相对较少


filter表是防火墙的默认表



1.2.2 五链

作用

INPUT链

处理入站数据包,匹配目标IP为本机的数据包

OUTPUT链

处理出站数据包,一般不在此链上做配置

FORWARD链

处理转发数据包,匹配流经本机的数据包

PREROUTING链

在进行路由选择前处理数据包,用来修改目的地址,用来做DNAT。相当于把内网服务器的IP和端口映射到路由器的外网IP和端口上

POSTROUING链

在进行路由选择后处理数据包,用来修改源地址,用来做SNAT。相当于内网通过路由器NAT转换功能实现内网主机通过一个公网IP地址上网

规则链之间的匹配顺序:


主机型防火墙:


入站数据(来自外界的数据包,且目标地址是防火墙本机):PREROUTING --> INPUT -->本机的应用程序


出站数据(从防火墙本机向外部地址发送的数据包) :本机的应用程序--> OUTPUT --> POSTROUTING


网络型防火墙:


转发数据(需要经过防火墙转发的数据包) : PREROUTING --> FORWARD --> POSTROUTING


规则链内的匹配顺序:


自上向下按顺序依次进行检查,找到相匹配的规则即停止(LOG策略例外,表示记录相关日志)


若在该链内找不到相匹配的规则,则按该链的默认策略处理(未修改的状况下,默认策略为允许)


1.3 数据包控制的匹配流程


标红的代表该链的规则通常在这个表上配置


1.3.1 入站

入站数据包从A网络发到B网络,首先发到防火墙,先后顺序经过有PREROUTING链的三个表(raw、mangle、nat),如果都是放通状态的会经过路由选择,然后根据目的地址一层一层往上送,经过有INPUT的两个表(mangle、filter),一直送到应用程序


1.3.2 转发

目的地不是本机,数据包先从A网络过滤,经过PREROUTING链,看是否是自己的目的地址,如果是外网到内网需要用nat转换成内网IP,找到内网用户,经过FORWARD链进行过滤,允许放通的到达POSTROUING链,再把内网地址转换成公网,这样数据包才能回去;如果是内网往外网发顺序就是反过来


1.3.3 出站    

从本机的应用程序发出来, 经过路由选择,让路由知道从哪里发,先后顺序经过有OUTPUT链的四个表(raw、mangle、nat、filter),都放通后到达POSTROUING链的两个表(mangle、nat),如果没有什么转换地址,就出站

目录
相关文章
|
11月前
|
存储 监控 安全
比较入站和出站防火墙规则
本文介绍了入站与出站流量的区别,以及如何通过配置入站和出站防火墙规则来保护网络安全。入站规则拦截恶意来源的流量,防止攻击;出站规则监控合法流量,阻止数据泄露。同时,推荐使用 EventLog Analyzer 工具实时监控防火墙规则变更、简化日志审计、分析流量和审核 VPN 日志,帮助构筑更安全的网络防线,快速响应潜在威胁。
1632 1
|
Unix Linux 编译器
windows下和linux下cmake的规则有区别吗
通过合理使用CMake的条件逻辑和平台特定的配置选项,开发者可以编写更加灵活和健壮的CMake脚本,确保项目在Windows和Linux上的一致性和可移植性。
658 76
|
Linux 网络性能优化 网络安全
Linux(openwrt)下iptables+tc工具实现网络流量限速控制(QoS)
通过以上步骤,您可以在Linux(OpenWrt)系统中使用iptables和tc工具实现网络流量限速控制(QoS)。这种方法灵活且功能强大,可以帮助管理员有效管理网络带宽,确保关键业务的网络性能。希望本文能够为您提供有价值的参考。
3006 28
|
机器学习/深度学习 安全 网络协议
Linux防火墙iptables命令管理入门
本文介绍了关于Linux防火墙iptables命令管理入门的教程,涵盖了iptables的基本概念、语法格式、常用参数、基础查询操作以及链和规则管理等内容。
571 73
|
人工智能 Java 关系型数据库
Red Hat Enterprise Linux 9.5 发布下载,新增功能亮点概述
Red Hat Enterprise Linux 9.5 发布下载,新增功能亮点概述
1053 4
Red Hat Enterprise Linux 9.5 发布下载,新增功能亮点概述
|
运维 安全 Linux
全面提升系统安全:禁用不必要服务、更新安全补丁、配置防火墙规则的实战指南
全面提升系统安全:禁用不必要服务、更新安全补丁、配置防火墙规则的实战指南
762 12
|
网络协议 Ubuntu 网络安全
|
运维 网络协议 安全
Linux安全运维--一篇文章全部搞懂iptables
Linux安全运维--一篇文章全部搞懂iptables
344 1
|
Unix Linux API
Linux内核许可规则 【ChatGPT】
Linux内核许可规则 【ChatGPT】
|
Linux 测试技术 API
Linux PWM接口概述 【ChatGPT】
Linux PWM接口概述 【ChatGPT】