.2 路由器隔离
采用路由器隔离的办法其主要依据是mac地址作为以太网卡地址全球唯一不能改变。其实现方法为通过snmp协议定期扫描校园网各路由器的arp表,获得当前ip和mac的对照关系,和事先合法的ip和mac地址比较,如不一致,则为非法访问[2]。对于非法访问,有几种办法可以制止,如:
使用正确的ip与mac地址映射覆盖非法的ip-mac表项;
向非法访问的主机发送icmp不可达的欺骗包,干扰其数据发送;
修改路由器的存取控制列表,禁止非法访问。
路由器隔离的另外一种实现方法是使用静态arp表,即路由器中ip与mac地址的映射不通过arp来获得, 而采用静态设置。这样,当非法访问的ip地址和mac地址不一致时,路由器根据正确的静态设置转发 的帧就不会到达非法主机。
路由器隔离技术能够较好地解决ip地址的盗用问题,但是如果非法用户针对其理论依据进行破坏,即成对修改ip-mac地址,对这样的ip地址盗用它就无能为力了。
2.3 防火墙与代理服务器
使用防火墙与代理服务器相结合,也能较好地解决ip地址盗用问题:防火墙用来隔离内部网络和外部网络,用户访问外部网络通过代理服务器进行[3]。使用这样的办法是将ip防盗放到应用层来解决,变ip管理为用户身份和口令的管理,因为用户对于网络的使用归根结底是要使用网络应用。这样实现的好处是,盗用ip地址只能在子网内使用,失去盗用的意义;合法用户可以选择任意一台ip主机使用,通过代理服务器访问外部网络资源,而无权用户即使盗用ip,也没有身份和密码,不能使用外部网络。
使用防火墙和代理服务器的缺点也是明显的,由于使用代理服务器访问外部网络对用户不是透明的,增加了用户操作的麻烦;另外,对于大数量的用户群(如高校的学生)来说,用户管理也是一个问题。
[ 本贴由 michaelhsing 于 2003-3-1 18:58 最后编辑 ]
--------------------------------------------------------------------------------
作者: logi ( 时间: 2003-3-2 11:15 am)
呵呵,的确是好东西
--------------------------------------------------------------------------------
作者: eureka ( 时间: 2003-3-4 08:43 am)
好东西
--------------------------------------------------------------------------------
作者: aohua ( 时间: 2003-3-5 07:16 pm)
长见识
--------------------------------------------------------------------------------
作者: ibook ( 时间: 2003-3-6 12:14 pm)
很不错
--------------------------------------------------------------------------------
作者: tang_la ( 时间: 2003-3-6 04:44 pm)
早就想有人讲讲这个了。谢谢。
资料来源:清风小木虫专业代理论坛
http://emuch.net/bbs/viewthread.php?tid=66
--------------------------------------------------------------------------------
本文版权归http://emuch.net与tang_la所有,请勿转载
清风小木虫专业代理论坛
标题: socks 5协议详解 zz [打印本页]
--------------------------------------------------------------------------------
作者: wjjn ( 时间: 2003-3-12 06:57 pm 标题: socks 5协议详解 zz)
socks 5协议详解----------------------------------------------------------------------------
----
文章摘要:
该文档描述了一个应用层的用于穿越ip网络防火墙的协议。这种穿越的安全性是
高度依赖于正规的认证和正规执行方法提供的有效封装,以及在socks客户端和socks
服务端所选择的安全性,还有管理员对认证方法选项所作的小心周密的考虑。
---------------------------------------------------------------------------
正文:
socks 5协议详解
”收 在实际学习中?由于在有些软件用到了socks5(如oicq,icq等),对其原理不
甚了解,相信很多朋友对其也不是很了解,于是仔细研读了一下rfc1928,觉得有必要
译出来供大家参考。
1.介绍:
防火墙的使用,有效的隔离了机构的内部网络和外部网络,这种类型的internet
架构变得越来越流行。这些防火墙系统大都充当着网络之间的应用层网关的角色,通
常提供经过控制的telnet,ftp,和smtp访问。为了推动全球信息的交流,更多的新的应
用层协议的推出。这就有必要提供一个总的架构使这些协议能够更明显和更安全的穿
过防火墙。也就有必要在实际上为它们穿过防火墙提供一个更强的认证机制。这种需
要源于客户机-服务器联系在不同组织网络之间的实现,而这种联系需要被控制和是很
大程度上被认证的。
该协议被描述为用来提供在tcp和udp域下为客户机-服务器应用程序便利和安全的
穿过防火墙的一个架构。该协议在概念上被描述为一个介于应用层和传输层之间的"隔
离层",但是这类服务并不提供网络层网关服务,如icmp报文的传输。
2.现状:
socks 4为基于tcp的客户机-服务器应用程序提供了一种不安全的穿越防火墙的机
制,包括telnet,ftp和当前最流行的信息发现协议如http,wais和gopher.
新协议为了包括udp扩展了socks 4,为了包括对总体上更强的认证机制的支持扩
展了协议架构,为了包括域名和ipv6地址的支持扩展了地址集。
socks协议执行最具代表性的是包括了在socks库中利用适当的封装程序来对基于
tcp的客户程序进行重编译和重链结。
注意:
除非特别提及,封装在包格式中的十进制数表示的是通讯域的长度(用八位组
octect表示)。一个给定的八位组必须具有指定的值,格式x'hh'被用来表示在该域中
单个八位组的值。当单词"变量variable"被使用时,它指出了通讯域拥有一个可变长
度,这个可变长度要么由一个联合的(一个或两个八位组)长度域定义,要么由一个数
据类型域所定义。
3.基于tcp客户机的程序
当一台基于tcp的客户机希望和目标主机建立连接时,而这台目标主机只有经过防
火墙才能到达(这种情况?一直持续到?它被执行时),它就必须在socks服务器端的适
当的socks端口打开一个tcp连结。socks服务按常例来说定位于tcp端口1080。如果连
接请求成功,客户机为即将使用的认证方式进行一种协商,对所选的方式进行认证,
然后发送一个转发请求。socks服务器对该请求进行评估,并且决定是否建立所请求转
发的连接。
客户机连接到服务器,发送一个版本标识/方法选择报文:
+----+----------+----------+
|ver | nmethods | methods |
+----+----------+----------+
| 1 | 1 | 1 to 255 |
+----+----------+----------+
ver(版本)在这个协议版本中被设置为x'05'。nmethods(方法选择)中包含在
methods(方法)中出现的方法标识八位组的数目。
服务器从methods给出的方法中选出一种,发送一个method selection(方法选择
)报文:
+----+--------+
|ver | method |
+----+--------+
| 1 | 1 |
+----+--------+
如果所选择的method的值是x'ff',则客户机所列出的方法是没有可以被接受的,
客户机就必须关闭连接。
当前被定义的method的值有:
>> x'00' 无验证需求
>> x'01' 通用安全服务应用程序接口(gssapi)
>> x'02' 用户名/密码(username/password)
>> x'03' 至 x'7f' iana 分配(iana assigned)
>> x'80' 至 x'fe' 私人方法保留(reserved for private methods)
>> x'ff' 无可接受方法(no acceptable methods)
***iana是负责全球internet上的ip地址进行编号分配的机构(译者著)***
于是客户机和服务器进入方法细节的子商议。方法选择子商议另外描述于独立的
文档中。
欲得到该协议新的method支持的开发者可以和iana联系以求得到method号。已分
配号码的文档需要参考method号码的当前列表和它们的通讯协议。
如果想顺利的执行则必须支持gssapi和支持用户名/密码(username/password)认
证方法。
4.需求
一旦方法选择子商议结束,客户机就发送请求细节。如果商议方法包括了完整性
检查的目的和/或机密性封装,则请求必然被封在方法选择的封装中。
socks请求如下表所示:
+----+-----+-------+------+----------+----------+
|ver | cmd | rsv | atyp | dst.addr | dst.port |
+----+-----+-------+------+----------+----------+
| 1 | 1 | x'00' | 1 | variable | 2 |
+----+-----+-------+------+----------+----------+
其中:
o ver protocol version:x'05'
o cmd
o connect x'01'
o bind x'02'
o udp associate x'03'
o rsv