Linux--iptables 防火墙

本文详细介绍了Linux防火墙的基础知识,包括iptables的表、链结构,数据包过滤的匹配流程,以及如何编写和管理防火墙规则。重点讲解了iptables的安装、基本语法和数据包控制类型,如ACCEPT、DROP、REJECT、LOG。还涵盖了添加、查看、删除规则的基本操作,并举例说明了如何设置规则的匹配条件,如协议、地址、端口和状态匹配。
摘要由CSDN通过智能技术生成

前言

一、Linux 防火墙基础

1.1、Linux 包过滤防火墙概述

netfilter
位于Linux内核中的包过滤功能体系
称为Linux防火墙的"内核态"

iptables
位于/sbin/iptables,用来管理防火墙规则的工具
称为Linux防火墙的"用户态"
——以上两种称呼都可以表示Linux防火墙

包过滤的工作层次
主要是网络层,针对IP数据包
体现在对包内的IP地址、端口等信息的处理上
在这里插入图片描述

1.2、iptables 的表、链结构

iptables的作用是为包过滤机制的实现提供规则,通过不同的规则,告诉netfilter对来自某些源、前往某些目的或具有某些协议特征的数据包应该如何处理。为了更加方便地组织和管理防火墙规则,iptables采用了“表”和“链”的分层结构。
其中,每个规则“表”相当于内核空间的一个容器,根据规则集的不同用途划分为默认的四个表;在每个“表”容器内包括不同的规则“链”,根据处理数据包的不同时机划分为五种链;而决定是否过滤或处理数据包的各种规则,按先后顺序存放在各规则链中。
在这里插入图片描述

1.2.1、规则表

规则表
表的作用:容纳各种规则链
表的划分依据:防火墙规则的作用相似

默认包括4个规则表
raw表:确定是否对该数据包进行状态追踪
mangle表:为数据包设置标记
nat表:修改数据包中的源、目标IP地址或端口
filter表:确定是否放行该数据包(过滤)(核心,默认定义filter表)

1.2.2、规则链

规则链
规则的作用:对数据包进行过滤或处理
链的作用:容纳各种防火墙规则
链的分类依据:处理数据包的不同时机

默认包括5中规则链
INPUT:处理入站数据包(进防火墙的时候就会读这个链)
OUTPUT:处理出站数据包
FORWARD:处理转发数据包
POSTROUTING链:在进行路由选择后处理数据包
PREROUTING链:在进行路由选择前处理数据包

1.3、数据包过滤的匹配流程

(1)规则表之间的顺序
raw → mangle → nat → filter

(2)规则链之间的顺序
入站:PREROUTING → INPUT
出站:OUTPUT → POSTROUTING
转发:PREROUTING → FORWARD → POSTROUTING

(3)规则链的匹配顺序
按顺序依次检查,匹配即停止(LOG策略例外)
若找不到相匹配的规则,则按该链的默认策略处理

匹配流程示意图
在这里插入图片描述

二、编写防火墙规则

2.1、iptables 安装

关闭firewalld防火墙
CentOS 7默认使用firewalld防火墙,若想使用iptables防火

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值