分类: LINUX
2009-02-23 09:26:56
毕 业 设 计 任 务 书
班级 计算机二班 学生姓名 cifan 学号 123456 专业 计算机科学与技术
发题日期:2008 年 1 月 10 日 完成日期: 2008 年 6 月 12 日
题 目 Linux防火墙设计与实现
题目类型:工程设计 技术专题研究 理论研究 软硬件产品开发
一、设计任务及要求
1.设计背景:
广泛分布的企业内部网络和公共网络互联起来,这种互联方式面临多种安全威胁,极易受到外界的攻击,导致对网络的非法访问和信息泄露。防火墙是安全防范的最有效也是最基本的手段之一。Linux以其开放源码的特性,开放的网络特性使越来越多的用户选择Linux作为防火墙的操作平台。
2.设计要求:
(1)熟悉LINUX系统的NETFILTER防火墙技术与原理。
(2)熟悉LINUX下C语言的调试和编译;熟悉PERL,CGI。
(3)熟悉LINUX内核模块的原理与编程实现。
(4)基于NETFILTER进行二次开发,设计包过滤防火墙,该防火墙架设在双宿主主机上,隔离内外网,实现系统管理,网络配置,安全策略配置,日志与流量统计等基本功能。
(5)进行系统总体方案设计以及各功能模块的详细设计与编程实现。
(6)测试系统。
二、应完成的硬件或软件实验
完成系统的开发,测试所设计的软件,能够实现所要求的功能。
三、应交出的设计文件及实物(包括设计论文、程序清单或磁盘、实验装置或产品等)
软件产品;毕业论文;光盘;英文翻译。
四、指导教师提供的设计资料
1.计算机网络技术的有关论文、书籍和资料;
2.Linux内核编程、网络编程的相关书籍和资料。
五、要求学生搜集的技术资料(指出搜集资料的技术领域)
1.搜集和整理与NETFILTER相关资料;
2.搜集Linux内核编程相关资料;
3.收集网络安全,防火墙的相关资料。
六、设计进度安排
第一部分 收集防火墙、Linux等方面相关资料;防火墙系统概要设计; ( 6周 )
第二部分 防火墙系统详细设计,编写Linux防火墙程序; ( 8周 )
第三部分 测试防火墙程序,写论文,英文翻译。 ( 4 周 )
评阅及答辩 ( 1 周 )
指导教师: 年 月 日
系主任审查意见:
审 批 人: 年 月 日
注:设计任务书审查合格后,发到学生手上。
西南交通大学信息科学与技术学院 2008 年制
在科技日益发展的今天,大众生活与互联网的关系越来越密切,可是网络安全问题也越来越严重。近年来媒体报导的很多黑客入侵事件都是通过互联网进行攻击的。防火墙是目前最为流行也是使用最为广泛的一种网络安全技术。在构建安全网络环境的过程中,防火墙作为第一道安全防线而倍受关注。
本论文主要研究了Linux 2.4内核防火墙Netfilter系统的结构框架特点、工作原理及其在内核中的实现机制;Linux内核模块的开发。
论文设计了一个简单的包过滤防火墙。本设计在Netfilter上进行二次开发,设计一个内核模块,通过动态加载到内核中实现对数据包的过滤功能, 具有很高的效率,数据包处理能力较强。Netfilter框架的使用使其具有良好的代码结构,易于维护和扩展。防火墙架设在双网卡Linux服务器上,连接内部网络和外部网络。该防火墙主要实现以下功能:实现用户配置;基于IP地址的过滤;针对TCP/UDP协议端口的过滤;日志记录。
论文主要内容包括:研究背景和本领域的研究现状;防火墙的基本概念;GNU/Linux 2.4内核防火墙Netfilter的工作原理和LINUX内核模块设计;防火墙主框架设计;详细说明防火墙的各个功能模块的设计与实现;防火墙系统的测试,其中包括测试环境,测试方法与结果分析。
关键词: 防火墙;包过滤;内核模块;Netfilter;钩子函数
Nowadays,as technology is developing increasingly fast,the relationship between people’s ordinary life and Internet has become closer and closer. Meanwhile,the safety of Internet,becomes more and more serious. Recently,it has often been reported that a lot of accidents about hacker’s attacking are done through the Internet. In the process of constructing security in the network environment in the process,firewall,as the first line of defense and security is very important.
This paper works on the framework,theory and implementation mechanisms in kernel of the Linux firewall named Netfilter and Linux kernel module development.
This paper designs a simple packet filtering firewall. The firewall system is the second development based on the Netfilter. The firewall is a kernel module which is dynamic loaded into the kernel to realize the packet filtering. This firewall has high efficiency and ability of dealing with data packages. It has good code structure because of using of Netfileter framework so it is easy to maintain and extend. The Linux server which the firewall is set up on has two network interface cards. A card connects the internal network and the other one connects external networks. The main functions of the firewall are as follows: achieving user profiles; IP address filtering; TCP / UDP port filters; log records.
The main content of the paper includes: the background and research status quo of this field; the basic theory of firewall; the GNU/Linux 2.4 kernel Netfilter firewall's working principle and Linux kernel module design; the design of the firewall main framework; descriptions of the firewall's each function module’s design in detail and implementation; At last,firewall system testing is introduced,including test environment,testing methods and results.
Key words: firewall; packet filtering; Kernel module; Netfilter; hook function
目 录
|