其它文章
全面了解 谈光纤接入设备及使用图解
降低接入Internet成本 校园网应用Linux
网络交换机分布结构的五四三规则
Linux上的MRTG监控中心
给IPv6迁移算笔账
负载均衡技术
人怕出名猪怕壮 遁于无名求安全
互联网到底有多大?
网络使用的学习总结(二)
使用cacti监测系统性能
Cisco技术 / 网络知识 / 网络管理 / 分析解决局域网内盗用IP的安全问题

分析解决局域网内盗用IP的安全问题

作者:Wendy         http://cisco.ccxx.net

一、IP地址盗用方法分析

  IP地址的盗用方法多种多样,其常用方法主要有以下几种:

  1、静态修改IP地址

  对于任何一个TCP/IP实现来说,IP地址都是其用户配置的必选项。如果用户在配置TCP/IP或修改TCP/IP配置时,使用的不是授权机构分配的IP地址,就形成了IP地址盗用。由于IP地址是一个逻辑地址,是一个需要用户设置的值,因此无法限制用户对于IP地址的静态修改,除非使用DHCP服务器分配IP地址,但又会带来其它管理问题。

  2、成对修改IP-MAC地址

  对于静态修改IP地址的问题,现在很多单位都采用静态路由技术加以解决。针对静态路由技术,IP盗用技术又有了新的发展,即成对修改IP-MAC地址。MAC地址是设备的硬件地址,对于我们常用的以太网来说,即俗称的计算机网卡地址。每一个网卡的MAC地址在所有以太网设备中必须是唯一的,它由IEEE分配,是固化在网卡上的,一般不能随意改动。但是,现在的一些兼容网卡,其MAC地址可以使用网卡配置程序进行修改。如果将一台计算机的IP地址和MAC地址都改为另外一台合法主机的IP地址和MAC地址,那静态路由技术就无能为力了。

  另外,对于那些MAC地址不能直接修改的网卡来说,用户还可以采用软件的办法来修改MAC地址,即通过修改底层网络软件达到欺骗上层网络软件的目的。

  3、动态修改IP地址

  对于一些黑客高手来说,直接编写程序在网络上收发数据包,绕过上层网络软件,动态修改自己的IP地址(或IP-MAC地址对),达到IP欺骗并不是一件很困难的事。

#p#构建MRTG监控中心

下面介绍如何在Linux上构建一个MRTG监控中心。

第一步:安装操作系统

MRTG可运行在绝大多数操作系统中,当然也包括Linux。这里选用的是Fedora Core 1。为了构建一个MRTG监控中心,还需要安装Apache和MRTG。考虑到能适应更多的Linux版本,可以不选用RPM的安装方式,尽管它比较简单,而是从tar包开始安装。

第二步:安装Apache

解压:
#tar -xzpvf httpd-2.0.47.tar.gz -C /var/local/


编译:

#cd /var/local/httpd-2.0.47/
#./configure  --prefix=/usr/local/terry_yu/httpd --enable-so
#make


安装:

#make install


设置为开机时启动:

#echo "/usr/local/terry_yu/httpd/bin/apachectl start" >> /etc/rc.local


第三步:配置Apache的页面认证

在Apache的配置文件/usr/local/terry_yu/httpd/conf/httpd.conf中,找到对/usr/local/terry_yu/httpd/htdocs目录的定义,将其中的“AllowOverride None”修改为“AllowOverride all”。

在/usr/local/terry_yu/httpd/htdocs目录下创建一个名为.htaccess的文件,其内容如下:

authuserfile /usr/local/terry_yu/httpd/.htpasswd
authname "Traffic Monitor(Haplink IDC)"
authtype basic
require valid-user


然后,建立账号,并生成密码文件。使用以下命令为terry建立一个账号:

#/usr/local/terry_yu/httpd/bin/htpasswd  -c
#/usr/local/terry_yu/httpd/.htpasswd terry


可以使用以下命令修改terry的账号密码:

#/usr/local/terry_yu/httpd/bin/htpasswd -m .htpasswd terry


最后,启动Apache。使用以下命令启动Apache:

#/usr/local/terry_yu/httpd/bin/apachectl start


启动Apache后,访问HTTP服务,如果要求输入用户名、密码进入,则Apache的页面认证配置成功。

#p#第四步:安装MRTG

由于MRTG需要其它的一些库来生成图片,所以先要安装zlib、ibpng和gd。具体安装方法如下:下载并安装zlib:

#wget http://www.gzip.org/zlib/zlib-1.1.4.tar.gz
#tar -xzpvf zlib-1.1.4.tar.gz
#mv zlib-1.1.4 /usr/local/terry_yu/zlib
#cd /usr/local/terry_yu/zlib/
#./configure
#make


下载并安装libpng:

#wget http://ftp6.us.freebsd.org/pub/libs/png/src/libpng-1.0.15.tar.gz
#tar -xzpvf libpng-1.0.15.tar.gz
#mv libpng-1.0.15 /usr/local/terry_yu/libpng
#cd /usr/local/terry_yu/libpng/
#make -f scripts/makefile.std CC=gcc ZLIBLIB=../zlib ZLIBINC=../zlib


下载并安装gd:

#wget http://www.boutell.com/gd/http/gd-1.8.4.tar.gz
#tar -xzpvf gd-1.8.4.tar.gz
#mv gd-1.8.4 /usr/local/terry_yu/gd
#cd /usr/local/terry_yu/gd
#perl -i~ -p -e s/gd_jpeg.o//g Makefile
#make INCLUDEDIRS="-I. -I../zlib -I../libpng" \
LIBDIRS="-L../zlib   -L. -L../libpng" \
LIBS="-lgd -lpng -lz -lm" CFLAGS="-O -D HAVE_LIBPNG"


安装MRTG:

#tar -xzpvf mrtg-2.10.13.tar.gz
#cd mrtg-2.10.13/
#./configure --prefix=/usr/local/terry_yu/mrtg \
--with-gd=/usr/local/terry_yu/gd  \
--with-z=/usr/local/terry_yu/zlib \
--with-png=/usr/local/terry_yu/libpng


第五步:配置MRTG

生成配置文件:

#mkdir /usr/local/terry_yu/mrtg/cfg
#cd /usr/local/terry_yu/mrtg/bin
#./cfgmaker --global 'WorkDir: /usr/local/terry_yu/httpd/htdocs/' \
--global 'Options[_]: bits,growright'\
--global 'Language: GB2312' \
--output /usr/local/terry_yu/mrtg/cfg/xxx.cfg \
public@XXX.XXX.XXX.XXX


“XXX.XXX.XXX.XXX”是SNMP服务器的IP,以上命令将生成对服务器的配置文件。MRTG生成的HTML页面可以完全由用户定制,所有定制都是通过对生成的该配置文件的修改来实现的。MRTG配置文件的内容很丰富,相关内容请参考MRTG的帮助文档。

还可以对MRTG设置定期执行方式。执行“crontab -e”,加入如下行:

*/5 * * * * /bin/env LANG=en_US /usr/local/terry_yu/mrtg/bin/mrtg
/usr/local/terry_yu/mrtg/cfg/xxx.cfg


以上命令设定每隔5分钟监控一次配置文件xxx.cfg中所定义的服务器。5分钟是一个比较合理的值,也可以按自己的需求重新定义。

执行以下命令还可以生成一个索引页面:

#cd /usr/local/terry_yu/mrtg/bin
#./indexmaker  --output="/usr/local/terry_yu/httpd/htdocs/index.html" 
--title="Taffic Monitor Center" /usr/local/terry_yu/mrtg/cfg/xxx.cfg


使用MRTG监控中心

通过以上几步,已经完成了对一台服务器的监控设定,如果还有其它服务器需要流量监控,重复第五步即可。如果这些服务器都是位于防火墙后面,还要修改一个防火墙的规则,即开放MRTG监控中心对外的80端口,同时过滤掉所有外界对SNMP服务端口的访问。

以上安装配置完成,用户可以通过浏览器访问MRTG监控中心。MRTG监控中心会要求输入用户名、密码才能进入,而Apache的日志会记录相关的事件,以备日后对登录情况进行审查。

到此为止,已经可以应用一个简单的MRTG监控中心实现集中管理,并且拥有身份认证。然而,这仅仅只是一个开始,管理员还可以通过编写CGI程序来实现更多的功能。

比如详细记录访问情况、提供更直观的监控报告等。此外,还可以使用SSL加密页面来传输数据。更多的应用就要看各人发挥了,希望本文能给大家一些有益的启发。

#p#

二、防范技术研究

  针对IP盗用问题,网络专家采用了各种防范技术,现在比较通常的防范技术主要是根据TCP/IP的层次结构,在不同的层次采用不同的方法来防止IP地址的盗用。

  1、交换机控制

  解决IP地址的最彻底的方法是使用交换机进行控制,即在TCP/IP第二层进行控制:使用交换机提供的端口的单地址工作模式,即交换机的每一个端口只允许一台主机通过该端口访问网络,任何其它地址的主机的访问被拒绝。但此方案的最大缺点在于它需要网络上全部采用交换机提供用户接入,这在交换机相对昂贵的今天不是一个能够普遍采用的解决方案。

  2、路由器隔离

  采用路由器隔离的办法其主要依据是MAC地址作为以太网卡地址全球唯一不能改变。其实现方法为通过SNMP协议定期扫描校园网各路由器的ARP表,获得当前IP和MAC的对照关系,和事先合法的IP和MAC地址比较,如不一致,则为非法访问。对于非法访问,有几种办法可以制止,如:

  a. 使用正确的IP与MAC地址映射覆盖非法的IP-MAC表项;

  b. 向非法访问的主机发送ICMP不可达的欺骗包,干扰其数据发送;

  c. 修改路由器的存取控制列表,禁止非法访问。

  路由器隔离的另外一种实现方法是使用静态ARP表,即路由器中IP与MAC地址的映射不通过ARP来获得,而采用静态设置。这样,当非法访问的IP地址和MAC地址不一致时,路由器根据正确的静态设置转发的帧就不会到达非法主机。

  路由器隔离技术能够较好地解决IP地址的盗用问题,但是如果非法用户针对其理论依据进行破坏,成对修改IP-MAC地址,对这样的IP地址盗用它就无能为力了。

  3、防火墙与代理服务器

  使用防火墙与代理服务器相结合,也能较好地解决IP地址盗用问题:防火墙用来隔离内部网络和外部网络,用户访问外部网络通过代理服务器进行。使用这样的办法是将IP防盗放到应用层来解决,变IP管理为用户身份和口令的管理,因为用户对于网络的使用归根结底是要使用网络应用。这样实现的好处是,盗用IP地址只能在子网内使用,失去盗用的意义;合法用户可以选择任意一台IP主机使用,通过代理服务器访问外部网络资源,而无权用户即使盗用IP,也没有身份和密码,不能使用外部网络。

  使用防火墙和代理服务器的缺点也是明显的,由于使用代理服务器访问外部网络对用户不是透明的,增加了用户操作的麻烦;另外,对于大数量的用户群(如高校的学生)来说,用户管理也是一个问题。

收藏本页

共 0 人推荐文章 分析解决局域网内盗用IP的安全问题

Copyright © 2006 cisco.ccxx.net 版权所有.提供Cisco技术,Cisco培训,CCNA,CCNP,CCIE培训,Cisco论坛CCIE实验室
上海地区Cisco培训、CCNA培训、CCNP培训、CCIE培训