找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12376|回复: 22

[原创] IP过滤简单原理

[复制链接]
发表于 2004-4-21 01:15:26 | 显示全部楼层 |阅读模式
LBHIDDEN[0]LBHIDDEN[watermark]许多朋友照我的文章配置了ASUS的MODEM的IP Filter后,不再掉线了,可是玩不了网络游戏。不是我不愿写出详细例子,因为网络应用配置是一个灵活性很大的工作,就说游戏程序,有的应用使用一个端口,又有的使用二个甚至多个端口,有的使用TCP端口,又有的使用UDP端口。开通一条通信通道并不难,难的是如何在开通想要的通信时不出现安全漏洞。
通信数据总是要从客户端向服务器发送。定义数据的来源和目标的要素一般为:IP地址、协议类型、端口号,因为协议类型在编写程序时已被确定,所以一般定义数据的源和目标时只说IP和PORT。
一般较简单的情况下数据从客户端发出时,IP地址为网卡IP,协议类型在写程序时已固定,一般为TCP,也有用UPD的,而端口号是由操作系统决定的,操作系统会查找一个大于1024,小于65535的,并且目前未被使用端口号作为本次通信的端口号,数据在客户端的IP和PORT称为源IP、源PORT。
与客户端不同,为了使客户端能访问指定服务,服务程序守护的端口是固定的。我们把服务端的IP地址和PORT值称为目标IP、目标PORT。
在定义IP Filter时可遵照以下规律:
1、数据流的进入或流出是对于通信设备面言的,在MODEM的PRIVATE上,从内部网到因特网时为incoming(流入MODEM),从因特网到内部网为Outgoing(流出MODEM);而在PUBLIC上,从内部网到因特网时为Outgoing(流出MODEM),从因特网到内部网为incoming(流入MODEM);
2、数据通信的过程是先从客户端到服务端发送请求数据,再从服务端返回请求被响应后的返回数据到客户端,从而完成一次数据过程。所以内部PC访问因特网时,先出现源在内部网、目标在特网的请求数据流,然后出现源在因特网,目标在内部网的返向数据流。
3、如果访问数据以s_ip:s_port向t_ip:t_port发数据,则正常的返回数据遵守从t_ip:t_port到s_ip:s_port的规则返回,也即从哪里来,就回到哪里去的规则。
4、为了灵活、准确定位通信条件,IP、PORT的设定可以是单一值、一个范围或所有值,作为特例,MODEM还有一个self值,它等同于MODEM上所有接口卡的的IP值。当接口卡的IP由DHCP获得时,self是一个动态值,会动态地等于各接口卡的IP。
5、实用的IP过滤列表,不可能用一二条语句来实现,充分利用集合的概念是优化配置的基础。做IP过滤前一定要确定允许什么和不允许什么,而条件一般只要源、目标的IP、PORT和协议类型就够了。更进一步的应用可以把同步数据包和非同步数据包分开,这个留给需要更严格的应用来定义,这里不作介绍。
6、网络配置没有标准配置,也无法说明哪一个更好,只能说哪一种组合更合理一些。往往不同的语句组合能得到相同的效果。当着眼点不同时,会有不同的配置组合。
7、利用IP过滤对ADSL路由器进行安全配置还可以借助于NAT。
8、考滤到一般情况下内网被称为安全区域,所以所有配置都在ADSL路由器的public端口卡上实现。
实例:我们允许且只允许内部所有PC向外WEB访问。
配法1: 1、缺省为Deny;
        2、允许:源IP为内部网段所有IP,源PORT为大于1024,目标IP为ANY,目标PORT为80,协议类型为TCP方向为OUTGOING的数据;
        3、允许:所有INCOMING数据包。
配法2: 1、缺省为Deny;
        2、允许:目标IP为内部网段所有IP,目标PORT为大于1024,源IP为ANY,源PORT为80,协议类型为TCP方向为INCOMING的数据;
        3、允许:所有OUTGOING数据包。
配法3: 1、缺省为Deny;
        2、允许:目标IP为内部网段所有IP,目标PORT为大于1024,源IP为ANY,源PORT为80,协议类型为TCP方向为INCOMING的数据;
        3、允许:源IP为内部网段所有IP,源PORT为大于1024,目标IP为ANY,目标PORT为80,协议类型为TCP方向为OUTGOING的数据;
配法4: 1、缺省为Accept;
        2、禁止:源IP为ANY,源PORT为ANY,目标IP为ANY,目标PORT不等于80,协议类型为ANY,方向为OUTGOING的数据;
        3、禁止:源IP为ANY,源PORT小于或等1024,目标IP为ANY,目标PORT为ANY,协议类型为ANY,方向为OUTGOING的数据;
        4、禁止:源IP为ANY,源PORT为ANY,目标IP为ANY,目标PORT为ANY,协议类型不为TCP,方向为OUTGOING的数据;
        5、禁止:源IP不在内部网IP范围内,源PORT为ANY,目标IP为ANY,目标PORT为ANY,协议类型为ANY,方向为OUTGOING的数据;
配法5: 1、缺省为Accept;
        2、禁止:源IP为ANY,源PORT不等于80,目标IP为ANY,目标PORT为ANY,协议类型为ANY,方向为INCOMING的数据;
        3、禁止:源IP为ANY,源PORT为ANY,目标IP为ANY,目标PORT小于或等1024,协议类型为ANY,方向为INCOMING的数据;
        4、禁止:源IP为ANY,源PORT为ANY,目标IP为ANY,目标PORT为ANY,协议类型不为TCP,方向为INCOMING的数据;
        5、禁止:源IP为ANY,源PORT为ANY,目标IP不在内部网IP范围内,目标PORT为ANY,协议类型为ANY,方向为INCOMING的数据;
配置方法还有更多,但就这些,就已足够我们进行一个简单的比较分析:
从通信全程的角度看,以上五种配置都达到了要求。虽然每种配置都蕴涵了路由器的局域网IP能访问外部WEB,但路由器上没有WEB访问客户程序,所以为基本上认为是合格的。
相比之下,缺省为Deny可能更合理一点,好在也可以在最后定义一条所有条件为ANY的规则来指定DENY,从而使缺省为ACCEPT这一条永不被执行,否则配法4和配法5在开通的通信端口相对较多时,一段一段地禁止难保会有漏洞。
如果完全按照题目的要求,配法3是最合理的,但实际应用中往往不会是单一的应用,所以使用配法1或配法2能减少规则条数,从而提高效率,但配法1还有一个缺点:试想一下,如果MODEM有一个BUG,外部IP非正常访问WEB端口时,MODEM会因为溢出而暂时不响应,虽然最终在因特网上的WEB浏览器无法访问ADSL路由器的配置界面,但因允许所有INCOMING数据包,ADSL路由器实际上收到了不正常的WEB访问,从而出现类似于断流的情况。
有了配法2,只要再知道相应游戏的通信方式就可以很方便地开通通信。比如,某游戏需要与固定服务IP1的TCP端口PORT1通信,则增加:
        4、允许:目标IP为内部网段指定IP,目标PORT为大于1024,源IP为IP1,源PORT为PORT1,协议类型为TCP方向为INCOMING的数据;
如果此游戏同时还守护在TCP端口:PORT2,则增加:
        5、允许:目标IP为内部网段指定IP,目标PORT为PORT2,源IP为ANY,源PORT为大于1024,协议类型为TCP方向为INCOMING的数据;
以上只个人浅见,目的在于抛砖引玉,如有不对之处,敬请大家批评指出。[/watermark]
发表于 2004-4-21 10:10:06 | 显示全部楼层

[原创] IP过滤简单原理

第一时间浮出水面捧场!!!
发表于 2004-4-21 10:20:37 | 显示全部楼层

[原创] IP过滤简单原理

不错哦,,,收藏
发表于 2004-4-21 15:12:43 | 显示全部楼层

[原创] IP过滤简单原理

受益匪浅。
发表于 2004-4-21 19:09:53 | 显示全部楼层

[原创] IP过滤简单原理

这么好的帖子,先顶再看
发表于 2004-4-22 11:28:38 | 显示全部楼层

[原创] IP过滤简单原理

alanlql真是厉害角色,该加个头衔~~~
发表于 2004-4-22 12:49:09 | 显示全部楼层

[原创] IP过滤简单原理

ding
发表于 2004-4-22 20:16:24 | 显示全部楼层

[原创] IP过滤简单原理

经典。学习!
发表于 2004-4-22 22:41:54 | 显示全部楼层

[原创] IP过滤简单原理

顶~~~~~顶~~~~~~~
发表于 2004-4-23 16:46:58 | 显示全部楼层

[原创] IP过滤简单原理

alanlql  非常弓虽。
不得不说一声佩服。
不过这文章不知道有多少个呢看得明白。
我自己是看明白了。
调查一下:以下的所有回贴网友请写明你是否看得明白?
*滑块验证:
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|小黑屋|宽带技术网 |网站地图

粤公网安备 44152102000001号

GMT+8, 2024-5-6 23:27 , Processed in 0.025332 second(s), 4 queries , Redis On.

Powered by Discuz! X3.5 Licensed

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表