012Linux网络监听技术样本
(样本只提供该系统的基本情况介绍,若需要完整的设计和论文,建议您购买本系统,凡是购买本站系统的,本站均根据您的要求,把系统上的开发信息,题目等修改成符合您的要求)
本设计包含内容:毕业论文+开题报告+答辩稿
论文大概:
摘要
论文题目:Linux网络监听技术
本毕业设计课题是在Linux系统下利用tcpdump和snort来实现监听和截获Linux下的网络信息。更深一步的去了解Linux系统强大的功能,懂得怎样监听网络,熟知网络监听的概念及意义用途。通过近阶段的学习与练习,我能够掌握利用tcpdump和snort两个工具来对网络进行监听和截获信息。我的设计的主要目的是使用tcpdump和snort来监听并截获TCP/IP、UDP、ICMP等协议的信息包和通过IP地址或端口来截获的主机的信息包并加以分析,从而进一步的对网络进行信息流量控制等。利用tcpdump和snort两个工具中的参数和配置文件,加以调适或shell编译,来进行网络的监听。
tcpdump就是:dump
the traffice on a
network.,根据使用者的定义对网络上的数据包进行截获的包分析工具。它能够截获当前所有通过本机网卡的数据包。它拥有灵活的过滤机制,可以确保得到想要的数据。由于Tcpdump只能收集通过本机的数据,因此它的应用受到了一些限制,大多应用在网关或服务器自我检测上。它还可以将网络中传送的数据包的“头”完全截获下来提供分析。它支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助你去掉无用的信息。
snort是一个强大的轻量级的网络入侵检测系统。它具有实时数据流量分析和日志IP网络数据包的能力,能够进行协议分析,对内容进行搜索/匹配。它能够检测各种不同的攻击方式,对攻击进行实时报警。此外,snort具有很好的扩展性和可移植性。
snort有三种工作模式:嗅探器、数据包记录器、网络入侵检测系统。嗅探器模式仅仅是从网络上读取数据包并作为连续不断的流显示在终端上。数据包记录器模式把数据包记录到硬盘上。网路入侵检测模式是最复杂的,而且是可配置的。我们可以让snort分析网络数据流以匹配用户定义的一些规则,并根据检测结果采取一定的动作。
其内容是利用shell脚本将其tcpdump与snort的参数命令编成可执行文件来进行对网络的监听控制。用awk命令来截取IP。通过本机IP来监听并截获本机的信息包,用tcpdump和snort中的参数来定义或控制本机与目的主机之间的信息包和通过协议来监听网络。网络监听的意义是使用tcpdump和snort可以随时查看网络的状态,可以监听不祥信息的包或是恶意信息,用来做网络安全工作。
本文的主要工作集中在:
1.利用shell脚本把tcpdump和snort编程可执行文件来实现网络监听;
2.使用awk字符截取命令来截获IP;
3.通过使用tcpdump和snort的参数及功能来进行更深度的网络监听
本文组织如下:
第一章 网络监听的概念
第二章
tcpdump网络监听工具的介绍
第三章
snort网络监听工具的介绍
第四章shell脚本的介绍
第五章awk字符截取命令的介绍
第六章
毕业设计过程
结束语
总结了对Linux网络监听技术的学习心得,并更深地了解利用tcpdump和snort工具来对网络监听的功能,更加理解了Linux系统的强大并阐述了自己的看法。
关键字:Tcpdump网络监听工具、Snort网络监听工具、Shell编程技术
Awk字符截取命令。
目录
引言
第一章 网络监听的概念
1.1 Linux网络监听的概述
1.2
网络监听的原理
1.3 网络监听的方法步骤及安全措施
第二章 tcpdump网络监听工具的介绍
2.1
tcpdump的概念
2.1 tcpdump的命令参数
2.2 tcpdump的应用
第三章
snort网络监听工具的介绍
3.1 snort的概念
3.2
snort的命令参数
3.3 snort的应用
第四章shell脚本的介绍
4.1
shell的概念
4.2 shell的编程介绍
第五章awk字符截取命令的介绍
5.1
awk的概念
5.2 awk的应用
第六章 毕业设计过程
结束语
参考文献
致谢
引言
网络监听,在网络安全上一直是一个比较敏感的话题,作为一种发展比较成熟的技术,监听在协助网络管理员监测网络传输数据,排除网络故障等方面具有不可替代的作用,因而一直倍受网络管理员的青睐。在网络中,当信息进行传播的时候,可以利用相关工具,对其整个网络进行监听。网络监听可以将网络中正在传播的信息截获或者捕获到并进行控制和分析,这样可以对信息流量进行控制,从而减轻网络的负担,加快了网络的运行速度。
本课题是一个面向网络实际应用的课题,对于了解计算机系统并利用Linux系统下的两款功能强大的网络监听工具tcpdump和snort对网络进行监听并截取信息加以分析,从而学会监听技术来维护网络是很有意义的。而在课题的制作过程中,对其网络监听的概念、功能、用途还有重要性有了很深的了解并学习加以掌握,对于网络的维护起着很重要的作用。
本课题运用软件:tcpdump和snort,操作平台为:Linux
7.0操作系统。通过这两款软件,加深我们对网络监听技术的认识。
具体工作包括:利用tcpdump和snort的内核参数来监听网络截获信息并加以分析。用awk字符截取命令来取得IP,在利用shell脚本编程技术,把监听技术变得简单化等……
这次的选题是结合了毕业设计和网络监听技术学习而选择的,制作过程不仅使我对所学的专业知识得以发挥及更深一步的学习,还在掌握网络监听技术的同时提高了自己的shell编程技术。
第一章 网络监听的概念
1.1 Linux网络监听的概述
一、概述
在网络中,当信息进行传播的时候,可以利用工具,将网络接口设置在监听的模式,便可将网络中正在传播的信息截获或者捕获到,从而进行攻击。网络监听在网络中的任何一个位置模式下都可实施进行。而黑客一般都是利用网络监听来截取用户口令。比如当有人占领了一台主机之后,那么他要再想将战果扩大到这个主机所在的整个局域网话,监听往往是他们选择的捷径。很多时候我在各类安全论坛上看到一些初学的爱好者,在他们认为如果占领了某主机之后那么想进入它的内部网应该是很简单的。其实非也,进入了某主机再想转入它的内部网络里的其它机器也都不是一件容易的事情。因为你除了要拿到他们的口令之外还有就是他们共享的绝对路径,当然了,这个路径的尽头必须是有写的权限了。在这个时候,运行已经被控制的主机上的监听程序就会有大收效。不过却是一件费神的事情,而且还需要当事者有足够的耐心和应变能力。主要包括:
1. 数据帧的截获
2. 对数据帧的分析归类
3. dos攻击的检测和预防
4. IP冒用的检测和攻击
5. 在网络检测上的应用
6. 对垃圾邮件的初步过滤
二、研究的意义:
1.
我国的网络正在快速发展中,相应的问题也就显现出来,网络管理及相应应用自然将越发重要,而监听技术正是网络管理和应用的基础,其意义当然重要,放眼当前相关工具linux
有snort tcpdump ,snift
等,随着中国网络的发展,监听系统必将大有用武之地,因此监听技术的研究已是时事的要求。
2. 为什么选择linux
作为环境?中国入世,各种针对盗版的打击力度和对于正版软件的保护力度都将大大加强,windows的盗版软件随处可见的现象将会一去不返,面对这样的情况,大部分的公司只有两种选择:要么花大价钱向微软购买正版软件,要么是用自由操作系统linux,特别是重要部门,如国家机关,政府部门,难道要把自己的办公系统操纵在国外大公司手里?北京的政府办公系统已经转用红旗linux,而且linux的界面也在不但的改进,更加容易操作,我们有理由相信linux将在我国大有作为,这也是研究Linux
下网络监听的原因。
三、关于Linux下网络监听技术主要有两个要点:
1.
如何尽可能完整的截取网络上的数据帧,因为以太网上每时每刻都可能有信息传递,而且根据以太网的规模不同网络上的信息量也变化不大,所以截取数据帧不仅要保证数据帧的完整,而且还要考虑到如何才能减少漏截取数据帧。
2.
就是对截取的数据帧的过滤分析,所谓监听当然要“听”得懂才行,所以把截取的数据帧翻译成我们能用的数据,监听才算成功。
第二章 snort网络监听工具的介绍
3.4
snort的概念
snort是一个强大的轻量级的网络入侵检测系统。它具有实时数据流量分析和日志IP网络数据包的能力,能够进行协议分析,对内容进行搜索/匹配。它能够检测各种不同的攻击方式,对攻击进行实时报警。此外,snort具有很好的扩展性和可移植性。
snort有三种工作模式:嗅探器、数据包记录器、网络入侵检测系统。嗅探器模式仅仅是从网络上读取数据包并作为连续不断的流显示在终端上。数据包记录器模式把数据包记录到硬盘上。网路入侵检测模式是最复杂的,而且是可配置的。我们可以让snort分析网络数据流以匹配用户定义的一些规则,并根据检测结果采取一定的动作。
其内容是利用shell脚本将其tcpdump与snort的参数命令编成可执行文件来进行对网络的监听控制。用awk命令来截取IP。通过本机IP来监听并截获本机的信息包,用tcpdump和snort中的参数来定义或控制本机与目的主机之间的信息包和通过协议来监听网络。网络监听的意义是使用tcpdump和snort可以随时查看网络的状态,可以监听不祥信息的包或是恶意信息,用来做网络安全工作。
3.5
snort的命令参数
作为一个网络入侵检测的软件,snort有三种用途:数据包嗅探器(packet
sniffer)、数据包分析器(packet
analyser)以及网络入侵检测系统。让我们从最简单的命令开始,输入一个简单的命令列出所有的命令行开关。
bash#
snort -?
-*> Snort! <*-
Version 1.7
By Martin
Roesch (
roesch@clark.net,
http://www.snort.org/)
USAGE:
snort [-options]
Options:
-A
设置报警模式:fast、full、none(只是使用报警文件)、unsock(使用UNIX套接字记入日志,出于测试阶段)
-a
显示ARP(Address Resolution Protocol,地址解析协议)包
-b
日志文件使用tcpdump格式(更快)
-c <rules> 使用规则文件rules
-C
只使用字符方式打印负载信息(不使用hex方式)
-d 复制应用层
-D
在后台运行snort(精灵状态)
-e 显示第二层(数据链路层)包头信息
-F <bpf> Read
BPF filters from file
-g <gname>
初始化完成后,使snort的gid为gname
-h <hn> Home网络为hn
-i
<if> 在接口if上监听
-I 把界面名加入到报警输出界面。
-l <ld>
设置目录ld为日志目录
-M <wrkst> 把SMB消息发送到文件wrkst列出的工作站中(Requires
smbclient to be in PATH)
-n <cnt> 收到cnt个包后退出
-N
关闭日志功能(警报功能仍然有效)
-o 把规则测试顺序修改为:Pass|Alert|Log
-O
打乱被日志的IP地址
-p 关闭混杂嗅探模式
-P <snap>
设置复制的包的长度为snaplen(默认: 1514)
-q 安静模式。不输出banner和状态报告。
-r
<tf> 读取并处理tcpdump文件tf(回放功能)
-s 把所有警告信息记入syslog
-S
<n=v> 设置规则文件中的n的值等于v的值
-t <dir>
初始化完成后Chroot到dir目录
-u <uname>
初始化完成后,把snort的uid设置为uname
-v 设置冗余模式
-V 显示版本号
-X
从链路层开始复制包的数据
-?
显示帮助信息
作为嗅探器
所谓的嗅探器模式就是snort从网络上读出数据包然后显示在你的控制台上。首先,我们从最基本的用法入手。如果你只要把TCP/IP包头信息打印在屏幕上,只需要输入下面的命令:
./snort
-v
使用这个命令将使snort只输出IP和TCP/UDP/ICMP的包头信息。如果你要看到应用层的数据,可以使用:
./snort
-vd
这条命令使snort在输出包头信息的同时显示包的数据信息。如果你还要显示数据链路层的信息,就使用下面的命令:
./snort
-vde
注意这些选项开关还可以分开写或者任意结合在一块。例如:下面的命令就和上面最后的一条命令等价:
./snort
-d -v -e
运行Linux 7.0
登陆
建立shell脚本