第9章节 iptables.ppt

  1. 1、本文档共72页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第9章节 iptables

第9章 iptables 9.1 Linux 防火墙概述 iptables 是一款Linux系统下著名的防火墙软件。 已经成为Linux系统中防火墙软件的事实标准。 9.1.1 Linux 防火墙的架构 严格地说iptables只能算是防火墙与用户之间的接口,真正的起到防火墙作用的是在Linux内核中运行的netfilter。 netfilter运行在内核态,而iptables运行在用户态。 9.1.2 netfilter/iptables的功能 netfilter/iptables实现的功能总体上划分为以下3类: 1)数据包过滤防火墙 2)网络地址转换NAT 3)数据包拆分 iptables共有3张表,分别是: filter(过滤)表, nat(网络地址转换)表, mangle(拆分)表, 这3张表正好对应实现iptables的3类功能。 表链规则 在iptables的概念中,“表”是最大的容器 ; 在表中可以定义多条“链”; 每条链中又可以定义多条“规则”。 基于状态的防火墙 netfilter/iptables功能的一大特色是:可以根据连接状态来实施规则,因此,又称其为基于状态的防火墙。 可以跟踪的连接状态只有4种,分别是: (1)NEW 一般情况下,NEW状态表示这是一个新发起连接的数据包(如用于建立TCP连接的SYN包)。 (2)ESTABLISHED 已经建立连接的数据包处于这种状态。 (3)RELATED 这种状态很特殊,当一个连接与一个已处于ESTABLISHED状态的连接有关系时,就可以认为是RELATED状态。 最典型的RELATED状态的例子是FTP的数据连接,它与FTP的控制连接是相关的。 (4)INVALID INVALID状态的数据包是非法的数据包,因为其状态不能被识别,所以一般情况下要删除掉这种状态的数据包。 9.1.3 数据包通过iptables的流程 在iptables的3张表中,每张表都默认定义了若干条链。 数据包是如何通过这些链以及会受到哪些链的影响是一个非常重要的问题。 数据包通过iptables的具体流程 9.1.4 激活IP转发功能 把Linux主机配置成网关防火墙, 需要在执行iptables命令之前激活IP数据包的转发功能。 激活IP数据包的转发功能的命令如下: #echo “1” /proc/sys/net/ipv4/ip_forward 配置开机后自动激活IP数据包转发功能 方法: 编辑配置文件/etc/sysctl.conf,将该文件中包含ip_forward的行的值设置为1,具体配置如下: net.ipv4.ip_forward = 1 接下来,在命令行上执行如下命令: [root@redhat1 ~]# sysctl -p 说明:sysctl立即读取其配置文件/etc/sysctl.conf中的内容,并且立即生效。 9.2 iptables基础 iptables语法格式如下: iptables [-t table] command chain [match] [-j target/jump] 9.2.1 iptables语法格式中的命令 (1)命令 –A(--append) 示例: iptables –A INPUT -j ACCEPT 功能:命令-A用来向指定的链中追加新规则,本例为向filter表(默认表)的INPUT链中追加一条规则,其功能是接受源地址为任意、目标地址为防火墙本身的所有数据包。 说明: 新增加的规则将会成为规则链中的最后一条规则。 (2)命令 –D(--delete) 示例:iptables -D INPUT –p tcp --dport 80 -j DROP 功能:删除 “拒绝协议为tcp、目标端口为80的数据包进入本机”的规则。 说明:也可以通过直接指定规则编号加以删除,示例如下: iptables -D INPUT 1 功能:删除INPUT链中编号为“1”的规则。 (3)命令 –I(--insert) 示例: iptables -I INPUT 1 -p tcp --dport 80 -j ACCEPT 功能:命令–I用来插入规则,本例为在filter表(默认表)的INPUT链中第1条规则的位置插入一条规则,其功能是接受协议为tcp、目标端口为80的数据包进入本机。 说明:在指定的链中插入一条规则,原来在该位置及其以后的规则将依次往后移动一个位置。 (4)命令 –L(--list) 示例: iptables -L INPUT 功能:命令-L用来列出指定链中的规则,本例为列出位于filter

文档评论(0)

qiwqpu54 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档