Linux操作系统:17防火墙基本设置_第1页
Linux操作系统:17防火墙基本设置_第2页
Linux操作系统:17防火墙基本设置_第3页
Linux操作系统:17防火墙基本设置_第4页
Linux操作系统:17防火墙基本设置_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第十七章防火墙基本设置1本章内容Linux下防火墙的基本设置主机防火墙NAT网络地址转换2Linux防火墙概述Linux系统的防火墙功能是由内核实现的2.0版内核中,包过滤机制是ipfw,管理工具是ipfwadm2.2版内核中,包过滤机制是ipchain,管理工具是ipchains2.4版及以后的内核中,包过滤机制是netfilter,管理工具是iptables3Linux防火墙概述netfilter位于Linux内核中的包过滤防火墙功能体系称为Linux防火墙的“内核态”iptables位于/sbin/iptables,是用来管理防火墙的命令工具为防火墙体系提供过滤规则/策略,决定如何过滤或处理到达防火墙主机的数据包称为Linux防火墙的“用户态”——习惯上,上述2种称呼都可以代表Linux防火墙4Linux防火墙概述包过滤防火墙工作在TCP/IP的网络层链路层网络层传输层应用代理上层程序链路层网络层传输层应用层客户程序链路层网络层传输层应用层服务程序外部网络网络层防火墙受保护网络5防火墙配置直接在终端中输入“system-config-firewall”命令,打开防火墙配置窗口6防火墙配置直接在终端中输入“system-config-firewall-tui”命令7使用iptables命令进行策略设置iptables命令是对防火墙配置管理的核心命令iptables命令提供了丰富的功能,可以对Linux内核中的netfilter防火墙进行各种策略的设置iptables命令的设置在系统中是即时生效的使用iptables命令手工进行的防火墙策略设置如果不进行保存将在系统下次启动时丢失8使用iptables-save命令保存设置iptables-save命令提供了防火墙配置的保存功能iptables-save命令缺省只将配置信息显示到标准输出(屏幕)中#iptables-save如果需要将iptables-save命令的输出保存,需要将命令输出结果重定向到指定的文件中#iptables-save>ipt.v1.0使用iptables-save命令可以将多个版本的配置保存到不同的文件中9使用iptables脚本保存防火墙设置iptables脚本可以保存当前防火墙配置在保存防火墙当前配置前应先将原有配置进行备份#cp/etc/sysconfig/iptablesiptables.raw

iptables脚本的save命令可以保存防火墙配置#serviceiptablessave

配置内容将保存在“/etc/sysconfig/iptables”文件中,文件原有的内容将被覆盖10iptables的规则表、链结构规则链规则的作用在于对数据包进行过滤或处理,根据处理时机的不同,各种规则被组织在不同的“链”中规则链是防火墙规则/策略的集合默认的5种规则链INPUT:处理入站数据包OUTPUT:处理出站数据包FORWARD:处理转发数据包POSTROUTING链:在进行路由选择后处理数据包PREROUTING链:在进行路由选择前处理数据包11iptables的规则表、链结构规则表具有某一类相似用途的防火墙规则,按照不同处理时机区分到不同的规则链以后,被归置到不同的“表”中规则表是规则链的集合默认的4个规则表raw表:确定是否对该数据包进行状态跟踪mangle表:为数据包设置标记nat表:修改数据包中的源、目标IP地址或端口filter表:确定是否放行该数据包(过滤)12iptables的规则表、链结构iptables

防火墙默认的规则表、链结构filter表第1条规则

第2条规则

第3条规则

……INPUT链……FORWARD链……OUTPUT链mangle表PREROUTING链……POSTROUTING链……INPUT链……OUTPUT链……FORWARD链……raw表PREROUTING链……OUTPUT链……nat表PREROUTING链……POSTROUTING链……OUTPUT链……13数据包过滤匹配流程规则表间的优先顺序依次为:raw、mangle、nat、filter规则链间的匹配顺序入站数据:PREROUTING、INPUT出站数据:OUTPUT、POSTROUTING转发数据:PREROUTING、FORWARD、POSTROUTING规则链内的匹配顺序按顺序依次进行检查,找到相匹配的规则即停止(LOG策略会有例外)若在该链内找不到相匹配的规则,则按该链的默认策略处理14数据包过滤匹配流程本机的应用进程mangle:POSTROUTINGmangle:FORWARDraw:PREROUTINGraw:OUTPUTmangle:INPUT转发数据流向出站数据流向入站数据流向网络A网络Bmangle:PREROUTINGnat:PREROUTINGnat:POSTROUTINGfilter:INPUTmangle:OUTPUTnat:OUTPUTfilter:OUTPUTfilter:FORWARD路

择路

择15管理和设置iptables规则iptables命令的语法格式iptables[-t表名]管理选项[链名][条件匹配][-j目标动作或跳转]几个注意事项不指定表名时,默认表示filter表不指定链名时,默认表示该表内所有链除非设置规则链的缺省策略,否则需要指定匹配条件16iptables命令的管理选项设置规则内容:

-A:在链尾追加一条新的规则

-I:在指定位置(或链首)插入一条新的规则

-R:修改、替换指定位置或内容的规则

-P:设置指定链的默认策略列表查看规则-L:列表查看各条规则信息--line-numbers:查看规则信息时显示规则的行号-n:以数字形式显示IP地址、端口等信息-v:显示数据包个数、字节数等详细信息[root@localhost~]#iptables-tfilter-AINPUT-ptcp-jACCEPT[root@localhost~]#iptables

-IINPUT-pudp-jACCEPT[root@localhost~]#iptables

-IINPUT2-picmp-jACCEPT[root@localhost~]#iptables

-PINPUTDROP[root@localhost~]#iptables

-LINPUT--line-numbersChainINPUT(policyDROP)numtargetprotoptsourcedestination1ACCEPTudp--anywhereanywhere2ACCEPTicmp--anywhereanywhere3ACCEPTtcp--anywhereanywhere17iptables命令的管理选项清除规则-D:删除指定位置或内容的规则-F:清空规则链内的所有规则自定义规则链-N:创建一条新的规则链-X:删除自定义的规则链其他-h:查看iptables命令的使用帮助[root@localhost~]#iptables

-DINPUT2[root@localhost~]#iptables

-F[root@localhost~]#iptables-tnat

-F

[root@localhost~]#iptables-traw-N

TCP_PACKETS[root@localhost~]#iptables-traw-LChainPREROUTING(policyACCEPT)……ChainOUTPUT(policyACCEPT)……ChainTCP_PACKETS(0references)targetprotoptsourcedestination18设置匹配数据包的条件通用条件匹配可直接使用,不依赖于其他的条件或扩展模块包括网络协议、IP地址、网络接口等匹配方式隐含条件匹配一般需要以特定的协议匹配作为前提包括端口、TCP标记、ICMP类型等匹配方式显式条件匹配需要使用“-m扩展模块”的形式明确指定匹配方式包括多端口、MAC地址、IP地址范围、数据包状态等匹配方式19通用条件匹配协议匹配使用“-p

协议名”的形式协议名可使用在“/etc/protocols”文件中定义的名称常用的协议包括tcp、udp、icmp等地址匹配使用“-s

源地址”、“-d

目标地址”的形式地址可以是单个IP地址、网络地址(带掩码长度)接口匹配使用“-i

网络接口名”、“-o

网络接口名”的形式,分别对应接收、发送数据包的网络接口[root@localhost~]#iptables-IINPUT-p

icmp-jREJECT[root@localhost~]#iptables-AFORWARD-p!

icmp-jACCEPT[root@localhost~]#iptables-AFORWARD-s192.168.1.11-jREJECT[root@localhost~]#iptables-AINPUT-ieth1-s172.16.0.0/12-jDROP[root@localhost~]#iptables-AFORWARD-oeth1-d61.35.4.3-jDROP20隐含条件匹配端口匹配使用“--sport

源端口”、“--dport

目标端口”的形式采用“端口1:端口2”的形式可以指定一个范围的端口TCP标记匹配使用“--tcp-flags

检查范围被设置的标记”的形式如“--tcp-flagsSYN,RST,ACKSYN”表示检查SYN、RST、ACK这3个标记,只有SYN为1时满足条件ICMP类型匹配使用“--icmp-typeICMP类型”的形式ICMP类型可以使用类型字符串或者对应的数值,例如Echo-Request、Echo-Reply[root@localhost~]#iptables-AFORWARD-ptcp--dport22-jACCEPT[root@localhost~]#iptables-AOUTPUT-ptcp--sport20:80-jACCEPT[root@localhost~]#iptables-IINPUT-ieth1-ptcp--tcp-flagsSYN,RST,ACKSYN-jREJECT[root@localhost~]#iptables-AINPUT-ieth0-picmp--icmp-typeEcho-Request-jDROP[root@localhost~]#iptables-AINPUT-picmp--icmp-typeEcho-Reply-jACCEPT21显式条件匹配MAC地址匹配使用“-mmac”结合“--mac-sourceMAC地址”的形式多端口匹配使用“-mmultiport”结合“--sports

源端口列表”或者“--dports

目标端口列表”的形式多个端口之间使用逗号“,”分隔,连续的端口也可以使用冒号“:”分隔IP地址范围匹配使用“-miprange”结合“--src-range

源IP范围”或者“--dst-range

目标IP范围”的形式以“-”符号连接起始IP地址、结束IP地址[root@localhost~]#iptables-AFORWARD-mmac--mac-source00:0C:29:27:55:3F-jDROP[root@localhost~]#iptables-AINPUT-ptcp

-mmultiport--dport20,21,25,110,1250:1280-jACCEPT[root@localhost~]#iptables-AFORWARD-ptcp

-miprange--src-range192.168.1.20-192.168.1.99-jDROP22显式条件匹配(续)数据包状态匹配使用“-mstate”结合“--state

状态类型”的形式同时表示多种状态时以逗号“,”分隔常见的数据包状态包括:NEW、ESTABLISHED、RELATED[root@localhost~]#iptables-AFORWARD-mstate--stateNEW-ptcp!--syn-jDROP[root@localhost~]#iptables-AINPUT-ptcp

-mstate--stateNEW-jDROP[root@localhost~]#iptables-AINPUT-ptcp

-mstate--stateESTABLISHED,RELATED-jACCEPT23数据包控制常见的数据包处理方式ACCEPT:放行数据包DROP:丢弃数据包REJECT:拒绝数据包LOG:记录日志信息,并传递给下一条规则处理用户自定义链名:传递给自定义链内的规则进行处理SNAT:修改数据包的源地址信息DNAT:修改数据包的目标地址信息[root@localhost~]#iptables-AINPUT-ptcp--dport22-mlimit--limit3/minute--limit-b

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论