linux系统防火墙追加篇——iptables

在前面我们已经学习过了系统的防火墙,我们讲过redhat7以上的防火墙软件有两个,分别是firewalld和iptables,上一片我们讲的是firewalld,具体可见firewalld,那么今天我们来了解一下另一个防火墙软件iptables

iptables?

IPTABLES 是与最新的 3.5 版本 Linux 内核集成的 IP 信息包过滤系统。如果 Linux 系统连接到因特网或 LAN、服务器或连接 LAN 和因特网的代理服务器, 则该系统有利于在 Linux 系统上更好地控制 IP 信息包过滤和防火墙配置。
防火墙在做数据包过滤决定时,有一套遵循和组成的规则,这些规则存储在专用的数据包过滤表中,而这些表集成在 Linux 内核中。在数据包过滤表中,规则被分组放在我们所谓的链(chain)中。而netfilter/iptables IP 数据包过滤系统是一款功能强大的工具,可用于添加、编辑和移除规则。
虽然 netfilter/iptables IP 信息包过滤系统被称为单个实体,但它实际上由两个组件netfilter 和 iptables 组成。
netfilter 组件也称为内核空间(kernelspace),是内核的一部分,由一些信息包过滤表组成,这些表包含内核用来控制信息包过滤处理的规则集。
iptables 组件是一种工具,也称为用户空间(userspace),它使插入、修改和除去信息包过滤表中的规则变得容易。除非您正在使用 Red Hat Linux 7.1 或更高版本,否则需要下载该工具并安装使用它。

iptables过滤规则的四表五链

在iptables中对于内外信息的规律时有一定的规则的,对于不同的需求有不同的规则结构,而我们常将这种规则结构称为“四表五链”
linux系统防火墙追加篇——iptables_第1张图片

raw表

raw 有限级最高,设置raw时一般是为了不再让iptables做数据包的链接跟踪处理,提高性能。

filter表

filter 主要和自身有关,主要负责防火墙功能 过滤本机流入流出的数据包是默认使用的表
input 负责过滤所有目标地址是本机地址的数据包,就是过滤进入主机的数据包
forward 负责转发流经主机但不进入本机的数据包,和NAT关系很大
output 负责处理源地址的数据包,就是对本机发出的数据包

NAT表

NAT 负责网络地址转换,即来源于目的IP地址和端口的转换,一般用于共享上网或特殊端口的转换服务
snat 源地址转换
dnat 目标地址转换
pnat 目标端口转换

mangle表

mangle 将报文拆开来并修改报文标志位,最后封装起来

五链:

五链 多条链整合起来就叫做表
PREROUTING 数据包进入路由之前
INPUT 目标地址为本机
FORWARD 实现转发
OUTPUT 源地址为本机,向外发送
POSTROUTING 数据包进入路由之后

应用场景:
其中INPUT, OUTPUT链更多的应用在“主机访火墙”中,即主要针对服务器本机进出数据的安全控制:

你可能感兴趣的:(linux,防火墙,iptables,安全)