论文部分内容阅读
随着互联网和个人电脑的不断普及,网络已经成为日常生活中不可缺少的部分,学习,办公,贸易往来等各行各业都离不开网络。但与此同时,网络安全问题越来越突出,各种攻击方式层出不穷,在网络上我们随时都处于被攻击的威胁之中,所以针对个人电脑的安全防护需要加强,实现Windows下的防护软件就显得尤为重要。包过滤防火墙有很多种,有的防火墙在应用层过滤数据包,这样会使得程序实现简单,并且不会对系统造成影响,对系统资源的占用也比较少,但是在某些情况下不能捕获所有的数据包。有的防火墙工作在NDIS层,其可以对所有的数据包进行过滤,但是开发难度大,同时又占用较多的系统资源,如果考虑不完全,可能会造成系统崩溃。作为Winsock2.0版本引入的一种新的编程接口,Winsock2SPI(ServiceProvider Interface,服务提供者接口)可以被用来截获所有的基于Socket的网络通信,可以把自实现的分层服务提供者插入到系统的网络服务链中,实现对网络数据的过滤和监控。本文基于SPI接口在Windows平台上实现了简单的个人防火墙,可以根据用户设定的规则和一些默认的安全准则对系统的网络数据进行监控和过滤。过滤的规则包括源端口,目的IP地址和网络应用程序。经测试,防火墙可以良好的工作,对系统起到了基本的防护功能,并且使用极少的系统资源。该防火墙系统使用简单,灵活,具备基本的防护功能,可以满足系统日常的防护要求,可以用在个人电脑,一些要求比较简单或者系统资源紧张的场合,对系统实现简单防护。