当前位置: 首页  >> 信息资讯  >> 帮助中心  >> 查看详情

瑞斯云:系统防火墙认识之关于Iptables实例、规则以及常用命令

Iptables实例Iptabels是与Linux内核集成的包过滤防火墙系统,几乎所有的linux发行版本都会包含Iptables的功能。如果 Linux 系统连接到因特网或 LAN、服务器或连接 L...

Iptables实例

序列号 CPU RAM HDD 带宽 售价(美元) 免费试用
香港服务器1 E5-2620 32G 1T HDD 50M/无限流量 $196.00 立即申请
香港服务器2 E5-2650 32G 1T HDD 50M/无限流量 $256.00 立即申请
香港服务器3 E5-2680 32G 1T HDD 50M/无限流量 $316.00 立即申请
香港服务器4 E5-2690 32G 1T HDD 50M/无限流量 $336.00 立即申请
香港服务器5 E5-2697 32G 1T HDD 50M/无限流量 $376.00 立即申请
香港服务器6 E5-2620*2 32G 1T HDD 50M/无限流量 $376.00 立即申请
香港服务器7 E5-2650*2 32G 1T HDD 50M/无限流量 $436.00 立即申请
香港服务器8 E5-2680*2 32G 1T HDD 50M/无限流量 $476.00 立即申请
香港服务器9 E5-2690*2 32G 1T HDD 50M/无限流量 $556.00 立即申请
香港服务器10 E5-2697*2 32G 1T HDD 50M/无限流量 $596.00 立即申请
香港服务器11 E5-2680v4*2 32G 1T HDD 50M/无限流量 $696.00 立即申请
香港服务器12 E5-2698v4*2 32G 1T HDD 50M/无限流量 $796.00 立即申请

Iptabels是与Linux内核集成的包过滤防火墙系统,几乎所有的linux发行版本都会包含Iptables的功能。如果 Linux 系统连接到因特网或 LAN、服务器或连接 LAN 和因特网的代理服务器, 则Iptables有利于在 Linux 系统上更好地控制 IP 信息包过滤和防火墙配置。

netfilter/iptables过滤防火墙系统是一种功能强大的工具,可用于添加、编辑和除去规则,这些规则是在做信息包过滤决定时,防火墙所遵循和组成的规则。这些规则存储在专用的信 息包过滤表中,而这些表集成在 Linux 内核中。在信息包过滤表中,规则被分组放在我们所谓的链(chain)中。

虽然netfilter/iptables包过滤系统被称为单个实体,但它实际上由两个组件netfilter 和 iptables 组成。

netfilter 组件也称为内核空间(kernelspace),是内核的一部分,由一些信息包过滤表组成,这些表包含内核用来控制信息包过滤处理的规则集。

iptables 组件是一种工具,也称为用户空间(userspace),它使插入、修改和除去信息包过滤表中的规则变得容易。

规则示例

先回顾下iptables的格式:

iptables [-t table] command [match] [-j target/jump]-t 参数用来指定规则表,内建的规则表有三个,分别是:nat、mangle 和 filter,当未指定规则表时,则一律视为是 filter。

各个规则表的功能如下:

nat此规则表拥有 Prerouting 和 postrouting 两个规则链,主要功能为进行一对一、一对多、多对多等网址转换工作(SNAT,DNAT),由于转换的特性,需进行目的地网址转换的数据包,就不需要进行来源网址转换,反之亦然,因此为了提升改写封包的效率,在防火墙运作时,每个封包只会经过这个规则表一次。如果我们把数据包过滤的规则定义在这个数据表里,将会造成无法对同一包进行多次比对,因此这个规则表除了作网址转换外,请不要做其它用途。mangle 此规则表拥有 Prerouting、FORWARD 和 postrouting 三个规则链。

除了进行网址转译工作会改写封包外,在某些特殊应用可能也必须去改写数据包(TTL、TOS)或者是设定 MARK(将数据包作记号,以进行后续的过滤),这时就必须将这些工作定义在 mangle 规则表中。

mangle表主要用于对指定数据包进行更改,在内核版本2.4.18 后的linux版本中该表包含的链为:INPUT链(处理进入的数据包),RORWARD链(处理转发的数据包),OUTPUT链(处理本地生成的数据包)POSTROUTING链(修改即将出去的数据包),PREROUTING链(修改即将到来的数据包)LINUX教程 centos教程

filter这个规则表是预设规则表,拥有 INPUT、FORWARD 和 OUTPUT 三个规则链,这个规则表顾名思义是用来进行封包过滤的动作(例如:DROP、 LOG、 ACCEPT 或 REJECT),我们会将基本规则都建立在此规则表中。

常用命令示例:

1、命令 -A, —append

范例:iptables -A INPUT -p tcp —dport 80 -j ACCEPT

说明 :新增规则到INPUT规则链中,规则时接到所有目的端口为80的数据包的流入连接,该规则将会成为规则链中的最后一条规则。

2、命令 -D, —delete

范例:iptables -D INPUT -p tcp —dport 80 -j ACCEPT

或 : iptables -D INPUT 1

说明: 从INPUT规则链中删除上面建立的规则,可输入完整规则,或直接指定规则编号加以删除。

3、命令 -R, —replace

范例: iptables -R INPUT 1 -s 192.168.0.1 -j DROP

说明 取代现行第一条规则,规则被取代后并不会改变顺序。

4、命令 -I, —insert

范例:iptables -I INPUT 1 -p tcp —dport 80 -j ACCEPT

说明: 在第一条规则前插入一条规则,原本该位置上的规则将会往后移动一个顺位。

5、命令 -L, —list

范例: iptables -L INPUT

说明:列出INPUT规则链中的所有规则。

6、命令 -F, —flush

范例: iptables -F INPUT

说明: 删除INPUT规则链中的所有规则。

7、命令 -Z, —zeroLINUX教程 centos教程

范例:iptables -Z INPUT

说明 将INPUT链中的数据包计数器归零。它是计算同一数据包出现次数,过滤阻断式攻击不可少的工具。

8、命令 -N, —new-chain

范例: iptables -N denied

说明: 定义新的规则链。

9、命令 -X, —delete-chain

范例: iptables -X denied

说明: 删除某个规则链。

10、命令 -P, —policy

范例 :iptables -P INPUT DROP

说明 :定义默认的过滤策略。 数据包没有找到符合的策略,则根据此预设方式处理。

11、命令 -E, —rename-chain

范例: iptables -E denied disallowed

说明: 修改某自订规则链的名称。

联系我们

文章链接: https://www.ruisiidc.com/help/9676.html

文章标题: 瑞斯云:系统防火墙认识之关于Iptables实例、规则以及常用命令

给TA打赏
上一篇:

瑞斯云:简单探讨云计算20年来的发展简史

下一篇:

瑞斯云:简单讲解如何使用jenkins配置搭建环境

  • 24H在线
  • Tg纸飞机