版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、包过滤防火墙与NAT应用,1. 什么是防火墙 说穿了,其实防火墙就是在管制进入到我们网域内的主机的资料封包的一种机制,例如我们这一节要学习的 iptables 就是一种防火墙机制了。当然了,更广义的来说,只要能够分析与过滤进入我们管理之网域的封包资料,就可以称为防火墙,所以这个防火墙又可以分为硬件防火墙与本机的软件防火墙啊!,2. 防火墙的主要类别 除了以软件及硬件作为防火墙的分类之外,基本上,我们也可以使用防火墙对于封包的抵挡机制来进行分类。主要可以分为两大类,分别是代理服务器以及IP Filter。 3. 防火墙的一般线路布线与抵挡技巧 防火墙除了可以保护防火墙机制(iptables)本身
2、所在的那部主机之外,还可以保护防火墙后面的主机或 PC。 在简单的局域网络规划中, Firewall 搭配 Router ( 就是 NAT 主机的架构 ) 也是相当常见的一种规划!这种规划对于内部私有网域的安全也有一定程度的保护作用。,4. 目前常见的防火墙规划 (1)单一Linux主机兼任防火墙功能 我们的网域里面仅有一部Linux主机,该主机负责我们整个LAN里面所有个人计算机对外的联机,所以他也是我们LAN里面的Router。该防火墙一般会有两个接口,一个对内一个对外,同时,也可以直接在 Linux 防火墙上面架设网站,这是目前针对小型的企业所常见的网络配置状态。,这种配置的好处: 安全
3、维护在内部可以开放的权限较大! 安全机制的设定可以针对 Linux 主机来维护即可! 对外只看的到 Linux 主机,所以对于内部可以达到有效的安全防护!,(2)单一Linux防火墙,但LAN内另设防火墙 一般来说,我们的防火墙对于LAN的防备都不会设定的很严格,因为是我们自己的LAN!所以是信任网域之一!不过,最常听到的入侵方法也是使用这样的一个信任漏洞!因为不能保证所有使用企业内部计算机的使用者都是公司的员工,也无法保证您的员工不会搞破坏!,(3)在防火墙后端的主机设定 还有一种更有趣的设定,那就是将提供网络服务的主机放在防火墙后面,这有什么好处呢?,上面是目前比较常见的几种防火墙的配置方
4、法。那么如何进行封包的抵挡设定呢?一个数据封包的内容,如图所示: 由于防火墙可以分析网络上传送过来的数据封包,并取得分析该资料封包的表头数据,亦即可以分析上面图示中的目的地与来源地的 IP, port, 是否主动联机等等的其它信息!所以经由分析这些资料后,我们不难发现抵挡的方法可以有几个动作: (1)拒绝让封包进入主机的某些 port (2)拒绝让某些来源 IP 的封包进入 (3)拒绝让带有某些特殊旗标( flag )的封包进入 (4)分析硬件地址(MAC)来提供服务,5. 防火墙的使用限制 防火墙虽然可以防止不受欢迎的封包进入我们的网络当中,不过,某些情况下,他并不能保证我们的网络一定就很安
5、全。举几个例子来谈一谈: 防火墙并不能很有效的抵挡病毒或木马程序; 防火墙对于来自内部LAN的攻击较无承受力。 所以啦,在我们的 Linux 主机实地上网之前,还是得先: 关闭几个不安全的服务; 升级几个可能有问题的套件; 架设好最起码的安全防护:防火墙,6. Linux 核心版本与防火墙机制 Linux 的封包过滤机制是慢慢演进形成目前的 iptables 的,在核心不为 2.4 的时代,使用的防火墙机制是不同的! Version 2.0:使用 ipfwadm 这个防火墙机制; Version 2.2:使用的是 ipchains 这个防火墙机制; Version 2.4:主要是使用 ipta
6、bles 这个防火墙机制,而为了兼容于 ipchains ,因此在 Version 2.4 版本中,同时将 ipchains 编译成为模块,好让使用者仍然可以使用来自 2.2 版的 ipchains 的防火墙规划。 iptables 与 ipchains 两者不能同时执行!,7. iptables 的表格与封包进入的流程 只要是防火墙机制,通常都是以针对封包的分析规则来规范每种封包的通过与否,以及应该进行的动作,同样的道理,iptables 的工作方向,必须要依规则的顺序来分析封包。,事实上,上图就是iptables的一张表格里面的一条链(chains),可以想象一下,iptables的规则都
7、是写在表格, table里面的,而每个表格又依据封包的行进路线,而可大略分为三条链:进入、输出、转递等。 在 iptables 里面有两个经常用到的内建表格,分别是针对主机的 filter 以及针对防火墙后端的主机设定的 nat 两个,这两个表格又分别具有三条链,分别是: filter:主要跟 Linux 本机有关,这个是预设的 table ! INPUT:主要与封包想要进入我们 Linux 本机有关; OUTPUT:主要与我们 Linux 本机所要送出的封包有关; FORWARD:这个与 Linux 本机比较没有关系,他可以封包转递到后端的计算机中,与 nat 这个 table 相关性很高。
8、 nat:主要跟 NAT 主机的设定有关 PREROUTING:在进行路由判断之前所要进行的规则 POSTROUTING:在进行路由判断之后所要进行的规则 OUTPUT:与发送出去的封包有关,8. iptables的语法 iptables的语法相当的多,所以下面将这些语法分成规则清除、定义策略以及新增与插入规则三部分来说明: (1)清除规则与观察规则 iptables -t tables -L -n 参数说明: -t:后面接 iptables 的 table ,例如 nat 或 filter ,如果没有 -t table 的话,那么预设就是 -t filter 这个 table ! -L:列出
9、目前的 table 的规则 -n:不进行 IP 与 HOSTNAME 的转换,屏幕显示讯息的速度会快很多! 范例:iptables -L -n iptables -t nat -L -n,至于要清除规则,是这样的指令: Iptables -t tables -FXZ 参数说明: -F :清除所有的已订定的规则 -X :杀掉所有使用者建立的 chain (应该说的是 tables ) -Z :将所有的 chain 的计数与流量统计都归零 范例: roottest root# iptables -F roottest root# iptables -X roottest root# iptable
10、s -Z roottest root# iptables -t nat -F,(2)定义策略 策略指的是什么?当封包不在我们设定的规则之内时,则该封包的通过与否,以 Policy 的设定为准,通常这个策略在 filter 这个 table 的 INPUT 链方面可以定义的比较严格一点,而 FORWARD 与 OUTPUT 则可以订定的松一些!,iptables -t tables -P INPUT,OUTPUT,FORWARD| PREROUTING,OUTPUT,POSTROUTING ACCEPT,DROP 参数说明: -P :定义策略,注意,这个 P 为大写! INPUT:封包为输入主机
11、的方向; OUTPUT :封包为输出主机的方向; FORWARD:封包为不进入主机而向外再传输出去的方向; PREROUTING :在进入路由之前进行的工作; OUTPUT :封包为输出主机的方向; POSTROUTING:在进入路由之后进行的工作。 iptables -P INPUT DROP iptables -P OUTPUT ACCEPT iptables -P FORWARD ACCEPT iptables -t nat -P PREROUTING ACCEPT iptables -t nat -P OUTPUT ACCEPT iptables -t nat -P POSTROUTI
12、NG ACCEPT,(3)增加与插入规则 设定 iptables 规则的基本语法如下: iptables增加与插入规则语法.doc 9.一个简单的防火墙设定 要实际设定防火墙之前,最好先用笔将您所需要的规则与开放的服务设计一下,然后再来设计!而比较严密的防火墙规划特点就是: 拒绝所有,开放特定的设定方法较佳! 也就是将 Policy 设定为 DROP 而将其它的服务一个一个的启动,这样会比较好。,10. Linux防火墙的3个超典型应用 应用1:让区域网路内的电脑以一个真实IP来共享频宽(实作NAT) 所需设备: 一台 Linux server , 2张网卡 网卡1 : eth0 , 使用真实
13、IP , 网卡2 : eth1 , 使用 54 设定: 在 /etc/rc.d/rc.local 写入以下几行 echo 1 /proc/sys/net/ipv4/ip_forward modprobe ip_tables modprobe ip_nat_ftp modprobe ip_conntrack modprobe ip_conntrack_ftp iptables -t nat -A POSTROUTING -o eth0 -s /24 -j MASQUERADE,应用2:让区域网路内的电脑以一个ADSL来共享频宽(实作NAT) 这个例子和
14、上个例子很像, 只是某一个设定要做修改 所需设备: 一台 Linux server , 2张网卡 网卡1 : eth0 , 使用真实IP , 网卡2 : eth1 , 使用 54 设定: 在 /etc/rc.d/rc.local 写入以下几行 echo 1 /proc/sys/net/ipv4/ip_forward modprobe ip_tables modprobe ip_nat_ftp modprobe ip_conntrack modprobe ip_conntrack_ftp iptables -t nat -A POSTROUTING -o ppp0 -s 1
15、/24 -j MASQUERADE,应用3:让外界的电脑可以存取区域网路内的某部server(实作转址,转port) 此种做法有保护内部 server 的效果 所需设备: 一台 Linux server , 2张网卡 网卡1 : eth0 , 使用真实IP , 网卡2 : eth1 , 使用 54 设定: 在 /etc/rc.d/rc.local 写入以下几行 echo 1 /proc/sys/net/ipv4/ip_forward modprobe ip_tables modprobe ip_nat_ftp modprobe ip_conntrack
16、 modprobe ip_conntrack_ftp iptables -t nat -A POSTROUTING -o eth0 -s /24 -j MASQUERADE iptables -t nat -A PREROUTING -i eth0 -p tcp -d 真实IP -dport 80 -j DNAT -to-destination 3:80,11. 一些iptables的具体应用 ICMP相关应用 使自己不能ping通 iptables -A INPUT -s -p icmp -j DROP 19
17、/24 网段无法ping本机 iptables -A INPUT -s /24 -p icmp -j DROP 禁所有机器 # iptables -A INPUT -s 0/0 -p icmp -j DROP # ICMP(PING) 接受 ! echo-request /sbin/iptables -A INPUT -p icmp -icmp-type ! echo-request -j ACCEPT accept_redirects # echo 0 /proc/sys/net/ipv4/conf/all/accept_redirects or #
18、sysctl net.ipv4.conf.all.accept_redirects=0“ 禁止IP访问自己 rootlinux root# iptables -A INPUT -s 53 -j DROP,封杀MSN /sbin/iptables -I FORWARD -d -j DROP /sbin/iptables -I FORWARD -p tcp -dport 1863 -j DROP 封杀QQ /sbin/iptables -A FORWARD -p tcp -d -dport 80 -j DROP /sbin/iptables -A FORWARD -p tcp
19、 -d -dport 443 -j DROP /sbin/iptables -A FORWARD -p tcp -d -j DROP /sbin/iptables -A FORWARD -i eth0 -p udp -dport 8000 -j DROP 封杀BT /sbin/iptables -A FORWARD -i eth0 -p tcp -dport 6881:6890 -j DROP,# 禁止WWW /sbin/iptables -A FORWARD -p tcp -dport 80 -j DROP # 开放WWW /sbin/iptables -A FORWARD -p tcp -dport 80 -j ACCEPT # 禁止FTP /sbin/iptables -A FORWARD -i eth0 -p tcp -dport 20 -j DROP /sbin/iptables -A FORWARD -i eth0 -p tcp -dport 21 -j DROP # 开放FTP /sbin/iptables -A FORWARD -
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025版个人合伙跨境电商投资合作合同4篇
- 2025版学校办公物资零星采购合同范本3篇
- 2025版体育馆消防安全检测与维护保养合同范本3篇
- 2025年度木工设计版权授权合同4篇
- 2025年影视宣传片合同范本全面服务保障3篇
- 组织的资源战略能力和竞争地位分析课件
- 广东省广州市白云区2024-2025学年八年级上学期期末考试英语试题(无答案)
- 二零二五版电力工程项目设计承包合同3篇
- 2025版万科商业物业租赁合同样本(含合同备案)3篇
- 桥梁隧道工程-试验检测师《桥梁隧道工程》模考试卷9
- 2024企业答谢晚宴会务合同3篇
- 《客舱安全管理与应急处置》课件-第14讲 应急撤离
- 中华人民共和国文物保护法
- 节前物业安全培训
- 高甘油三酯血症相关的器官损伤
- 手术室护士考试题及答案
- 牙膏项目创业计划书
- 单位食堂供餐方案
- 风电工程需要编写的专项施工方案及危大工程目录
- 商业计划书(BP)财务计划风险控制资本退出与附录的撰写秘籍
- 七年级下册《Reading 1 A brave young man》优质课教案牛津译林版-七年级英语教案
评论
0/150
提交评论