Iptables原理及应用解析

一、Iptables原理

现在防火墙主要分以下三种类型:包过滤、应用代理、状态检测

包过滤防火墙:现在静态包过滤防火墙市面上已经看不到了,取而代之的是动态包过滤技术的防火墙哈~

代理防火墙:因一些特殊的报文攻击可以轻松突破包过滤防火墙的保护,比如大家知道的SYN攻击、ICMP洪水攻击,所以以代理服务器作为专门为用户保密或者突破访问限制的数据转发通道的应用代理防火墙出现了哈~其使用了一种应用协议分析的新技术。

 状态检测防火墙:其基于动态包过滤技术发展而来,加入了一种状态检测的模块,进一点发展了会话过滤功能,会话状态的保留是有时间限制的,此防火墙还可以对包的内容进行分析,从而避免开放过多的端口。

netfilter/iptables IP数据包过滤系统实际上由netfilter和iptables两个组件构成。netfilter是集成在内核中的一部分,其作用是定义、保存相应的规则,而iptables是一种工具,用来修改信息的过滤规则及其他配置,我们可以通过iptables来设置一些适合我们企业需求环境的规则哈~,而这些规则会保存在内核空间之中。

netfilter是Linux核心中的一个通用架构,其提供了一系列的表(tables),每个表由若干个链(chains)组成,而每条链可以由一条或若干条规则(rules)组成。实际上netfilter是表的容器,表是链的容器,而链又是规则的容器。

iptables内置链

PREROUTING:数据包进入本机,进入路由器之前

INPUT:通过路由表后目的地为本机

FORWARDING:通过路由表后,目的地不为本机

OUTPUT:由本机产生,向外转发

POSTROUTIONG:通过路由表后,发送到网卡接口之前

以下是表和链的对应关系

二、iptables的基本用法

   基本语法:

        iptables [-t table] COMMAND CHAIN CRETIRIA -j TARGET

    -t table:

        net,mangle,raw,filter

默认为filter

COMMAND:

链:

-F:(flush)清空规则链

-N:(new)自建一条链

-X:(delete)删除一条自定义的空链

-Z:(zero)计数器归零

-P:(policy)设置默认策略,对filter表来讲,默认规则为ACCEPT或DROP

-E:重命名自定义链

 CHAIN:指定你接下来的规则到底是在哪个链上操作的

        CRETIRIA:指定匹配标准         

                  ACTION :指定如何进行处理

常用指令

DROP:悄悄丢弃;一般我们多用DROP来隐藏我们的身份,以及隐藏我们的链表

REJECT:明示拒绝

ACCEPT:接受

DNAT:明确申明要做的是目的地地址转换操作

SNAT:明确申明要做的是源地址转换操作

MASQUERADE:源地址伪装

REDIRECT:重定向:主要用于实现端口重定向

MARK:打防火墙标记的

RETURN:返回在自定义链执行完毕后使用返回,来返回原规则链。

 链中的规则

-A:(append)在所选择的链末添加一条或更多规则

-I:  (insert) 根据给出的规则序号向所选链中插入一条或更多规则

-D:(delete)从所选链中删除一条或更多规则

-R:(replace)从选中的链中取代一条规则

 常用查询命令

           -L

-n :数字格式显示主机地址端口

-v:显示详细格式信息

-vv

-vvv:越多显示的越详细

--line-numbers:显示规则编号

-x: exactly,不要对计数器的计数结果做单位换算,而显示其精确值

pkts bytes target     prot opt in     out     source       destination 
                    pkts: packets, 被本规则所匹配到的报文的个数;
                    bytes: 被本规则所匹配到的所有报文的大小之和,会执行单位换算;
                    target: 目标,即处理机制;
                    prot: 协议,一般为{TCP|UDP|ICMP}; 
                    opt: 可选项
                    in: 数据包的流入接口;
                    out: 数据包的流出接口;
                    source: 源地址;
                    destination: 目标地址;

Iptables原理及应用解析

时间: 2024-10-15 02:47:25

Iptables原理及应用解析的相关文章

DNS的工作原理、正反解析及子域委派

domain name server ----- 域名解析服务 DNS的工作原理:   正向解析 通过域名解析ip   反向解析 通过ip解析域名 BIND: Dns服务,程序包名bind,程序名named. 程序包,bind,bind-libs,bind-utils Bind-chroot:/var/named/chroot 服务脚本:/etc/init.d/named/start restart reload 主配置文件:/etc/named.conf,/etc/named.rcf1912.

Atitit 表达式原理 语法分析 原理与实践 解析java的dsl  递归下降是现阶段主流的语法分析方法

Atitit 表达式原理 语法分析 原理与实践 解析java的dsl  递归下降是现阶段主流的语法分析方法 于是我们可以把上面的语法改写成如下形式:1 合并前缀1 语法分析有自上而下和自下而上两种分析方法2 递归下降是现阶段主流的语法分析方法,2 于是我们可以把上面的语法改写成如下形式: 1)       Operator="+" | "-" | "*" | "/" 2)       Expression=<数字>

Linux之iptables原理详解

本文和大家分享的主要是linux中iptables原理相关内容,一起来看看吧,希望对大家学习linux有所帮助. 目录: 一.netfilter与iptables 二.filter.nat.mangle等规则表 三.INPUT.FORWARD等规则链和规则 四.Linux数据包路由原理 五.iptables编写规则 一 .netfilter与iptables (1)Netfilter是由Rusty Russell提出的Linux 2.4内核防火墙框架,该框架既简洁又灵活,可实现安全策略应用中的许

iptables原理知识

一.iptables的原理 iptables实际上是定义防火墙规则的工具,真正对数据报文处理的是内核中的netfilter模块.netfilter对报文的处理方式一般有:过滤,地址转换,连接追踪. 1.常用的数据报文格式的解释 防火墙实际上是对进出本机的各种报文进行控制,所以了解常见报文的结构(格式)可以精确的控制报文. 1)IP报文的格式 ip报文的结构如下图: 在这里与防火墙关系最大的是源地址.目标地址.协议.源地址指明报文的来源,目标地址说明报文的去处,协议指明传输层所使用的协议. 补充:

iptables原理简介

1.iptables防火墙简介 Iptables也叫netfilter是Linux下自带的一款免费且优秀的基于包过滤的防火墙工具,它的功能十分强大,使用非常灵活,可以对流入.流出.流经服务器的数据包进行精细的控制.iptables是Linux2.4及2.6内核中集成的模块. 2.Iptables服务相关命令 查看iptables状态 service iptables status 开启/关闭iptables service iptables start service iptables stop

MYSQL 源代码 编译原理 AST和解析树 代码语法解析

MYSQL 源代码 编译原理 AST和解析树 代码语法解析 http://blog.csdn.net/wfp458113181wfp/article/details/17082355 使用AST树 分类:             antlr              2013-12-02 22:39     255人阅读     评论(0)     收藏     举报 目录(?)[+] 第五章使用AST树中间结果来计算表达式值 创建ASTS 第五章.使用AST树中间结果来计算表达式值 现在我们已

Sql Server Tempdb原理-日志机制解析实践

笔者曾经在面试DBA时的一句”tempdb为什么比其他数据库快?”使得95%以上的应试者都一脸茫然.Tempdb作为Sqlserver的重要特征,一直以来大家对它可能即熟悉又陌生.熟悉是我们时时刻刻都在用,陌生可能是很少有人关注它的运行机制.这次我将通过实例给大家介绍下tempdb的日志机制. 测试用例 我们分别在用户数据库(testpage),tempdb中创建相似对象t1,#t1,并在tempdb中创建创建非临时表,然后执行相应的insert脚本(用以产生日志),并记录执行时间用以比较用以比

Sql Server tempdb原理-启动过程解析实践

我们知道在SqlServer实例启动过程中数据库会进行还原(Redo,Undo)然后打开提供服务,但我们知道tempdb是不提供重做机制的(Redo)那tempdb是如何还原的呢?如果tempdb损坏我们该怎么办,这里我将通过实例给大家介绍. 有时tempdb因为一些原因会变得非常巨大,一些DBA的解决方式就是重启数据库实例,的确重启后tempdb就会恢复到初始设置大小,理由很简单tempdb会重新创建. Tempdb的创建过程. 1在model库打开后进行tempdb创建(可以日志中看到mod

网易视频云:流媒体服务器原理和架构解析

网易视频云是网易公司旗下的视频云服务产品,以Paas服务模式,向开发者提供音视频编解码SDK和开放API,助力APP接入音视频功能.今天,网易视频云的技术专家给大家分享一篇流媒体技术性文章:流媒体服务器原理和架构解析. 一个完整的多媒体文件是由音频和视频两部分组成的,H264.Xvid等就是视频编码格式,MP3.AAC等就是音频编码格式,字幕文件只是附加文件.目前大部分的播放器产品对于H.264 + AAC的MP4编码格式支持最好,但是MP4也有很多的缺点,比如视频header很大,影响在线视频