linux防火墙(一)—— iptables架构介绍
一、防火墙的分类
一般宏观来说,防火墙分为主机型防火墙,例如我们为了防止个人电脑被攻击,而开启的防火墙,还分为网关型防火墙,一般部署在企业的网关,用于过滤和转发,保证整个企业的网络环境安全性。
按照物理状态又分为:软件防火墙和硬件防火墙
按照功能分:包过滤型、状态检测型和代理性
二、iptables介绍
iptables防火墙属于包过滤型,工作在网络层,针对IP数据包,体现在对包内的IP地址和端口等信息的处理上(源IP、端口和目标IP、端口)。
iptables防火墙由netfilter和iptables组成,netfilter指的是linux内核中实现包过滤防火墙的内部结构、不以程序或文件形式存在,属于“内核态”,iptables指用来管理linux防火墙的命令程序,通常位于/sbin/iptables目录下,是“用户态”。
三、iptables结构
iptables由4表、5链和用户在链内写入的各种规则所组成。
1、表:容纳各种规则链;表是按照功能分的类,具体功能如下:
(1)raw表:用来决定是否对数据包进行状态跟踪。(不常用)
(2)mangle表:为数据包设置标记,有ACK、SYN、FIN、RST、PSH、URG等标记。(不常用)
(3)nat表:修改数据包的IP地址、端口等信息。(网关型防火墙常用)
(4)filter表:确定是否放行数据包。(常用)
2、链:容纳各种防火墙规则;链是按照时机分的类。
(1)input:处理入站请求包
(2)output:处理出站包(就是响应、应答包)
(3)forward:处理转发数据包,实现不同网段间的通信
(4)prerouting:在包做路由选择之前应用此链的规则
(5)postrouting:在数据包做路由选择之后应用此链的规则
表链结构图

注:初学者很难把表和链的关系联系起来,首先大家要牢记,表是按照功能分类,链是按照时机分类,这里给大家举个例子,比如第三条意思是:只有在路由前和路由后还有出站的时候才能修改数据包的IP地址和端口信息。
四、数据包过滤的匹配流程
1、规则表之间的顺序:raw→mangle→nat→filter
2、规则链之间的顺序:
(1)入站数据流向:prerouting→input
(2)出站数据流向:output→postrouting
(3)转发数据流向:prerouting→forward→postrouting
注:(1)和(2)多用于主机型防火墙,(3)多用于网络型防火墙
3、规则链内的匹配顺序:
按照顺序依次检查,匹配即停止(log策略例外);若找不到相匹配的规则,按该链的默认策略处理。
匹配流程示意图:

五、防火墙的路由功能
防火墙可作为路由器起转发作用,具体操作如下:
(1)永久生效方法
vim etc/sysctl.conf
修改
forward = 1
sysctl -p(立即生效)
(2)临时生效方法
echo 1 > /proc/sys/net/ipv4/ipforward
或者 sysctl -w net.ipv4.ip_forward=1
linux防火墙(一)—— iptables架构介绍的更多相关文章
- Linux防火墙简介 – iptables配置策略
Linux防火墙简介 – iptables配置策略 Netfilter/iptables简介 要想真正掌握Linux防火墙体系,首先要搞清楚Netfilter和iptables的关系,Netfilte ...
- Linux防火墙(iptables/firewalld)
Linux防火墙(iptables/firewalld) 目录 Linux防火墙(iptables/firewalld) 一.iptables 1. iptables概述 2. netfilter和i ...
- linux防火墙之iptables
linux防火墙之iptables 1.1.1 关于iptables简介 IPTABLES 是与最新的 3.5 版本 Linux 内核集成的 IP 信息包过滤系统.如果 Linux 系统连接到因特网或 ...
- Linux防火墙配置(iptables, firewalld)
netfilter和底层实现 iptables firealld Linux中的防火墙 RHEL中有几种防火墙共存: iptables firewalld ip6tables ebtables 这些软 ...
- Linux防火墙:iptables禁IP与解封IP常用命令
在Linux服务器被攻击的时候,有的时候会有几个主力IP.如果能拒绝掉这几个IP的攻击的话,会大大减轻服务器的压力,说不定服务器就能恢复正常了. 在Linux下封停IP,有封杀网段和封杀单个IP两种形 ...
- linux防火墙相关 iptables
1. root用户查看防火墙状态(非root用户无权限查看) 查看防火墙状态: service iptables status 2.开启和关闭防火墙 //开启防火墙: service iptables ...
- Linux防火墙之iptables入门
一.防火墙的概念 什么是防火墙?防火墙是一台或一组设备,用以在网络间实施访问控制策略:事实上一个防火墙能够包含OSI模型中的很多层,并且可能会涉及进行数据包过滤的设备,它可以实施数据包检查和过滤,在更 ...
- Linux防火墙设置——iptables
防火墙用于监控往来流量,并根据用户定义的规则来过滤数据包以保证安全.iptables是Linux下设置防火墙规则的常用工具,它可以让你设置.维护以及查看防火墙的规则表.你可以定义多个表,每个表可以包含 ...
- Linux防火墙之iptables常用扩展匹配条件(二)
上一篇博文我们讲到了iptables的一些常用的扩展匹配模块以及扩展模块的一些选项的说明,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/12273755.htm ...
随机推荐
- 基于FORM组件学生管理系统【中间件】
目的:实现学生,老师,课程的增删改查 models.py from django.db import models # Create your models here. class UserInfo( ...
- linux grep打印匹配的上下几行
$grep -5 'parttern' inputfile //打印匹配行的前后5行 $grep -C 5 'parttern' inputfile //打印匹配行的前后5行 $grep -A 5 ' ...
- Deep Learning(深度学习)学习笔记整理系列
http://blog.csdn.net/zouxy09/article/details/8775360 http://blog.csdn.net/zouxy09/article/details/87 ...
- Dubbo+zookeeper应用的入门案例
前提:Linux安装zookeeper Dubbo管理中心部署 简单案例的项目结构: 1,demo_parent的pom.xml,用来统一管理依赖 <?xml version="1. ...
- spring quartz 配置多个定时任务
1.配置文件-quartz-1.7.3jar spring版本为3.1.3jar <?xml version="1.0" encoding="UTF-8&quo ...
- POJ 3169 C - Layout
题意 有n头奶牛从1到n编号,按照编号顺序站成一排,有可能有多头奶牛站在同一个坐标上.一些奶牛互相喜欢,所以他们的距离不能大于某个距离,一些奶牛互相讨厌,所以他们的距离不能小于某个距离,请计算如果可能 ...
- 【HDU1573】X问题
[题目描述] 求在小于等于N的正整数中有多少个X满足:X mod a[0] = b[0], X mod a[1] = b[1], X mod a[2] = b[2], …, X mod a[i] = ...
- laravel中间键组
` php artisan make:middleware Lend这边我定义一个登陆的中间件这边要注意的就是,当条件成立的时候一定要 return $next($request);不写这个larav ...
- PHP中 null ,false , 区别
先来测试一下吧: if(0 ==''){ echo '<br/>在PHP中0 ==\'\'' ; } if(0 !==''){ echo '<br/>在PHP中0 !==\'\ ...
- python操作Redis缓存
python操作Redis缓存 https://www.cnblogs.com/guotianbao/p/8683037.html 学习资料:电子书资源 联系邮箱:gmu1592618@gmail.c ...