资源描述
课程设计(大作业)报告
课程名称: 网络协议工程
设计题目: SSH协议
院 系: 信息技术学院
班 级: 09计科一班
设 计 者: 李 娜
学 号:
指导教师: 范老师、李老师
设计时间: 2023-12-19至2023-12-23
信息技术学院
昆明学院课程设计(大作业)任务书
姓 名:李娜 院(系):信息技术学院
专 业:计算机科学与技术 学 号:
任务起止日期:2023-12-19至2023-12-23
课程设计题目:
用协议分析工具分析SSH以及以下各层协议的工作机制
课程设计规定:
1. 通过实验加深对课堂讲授的内容有实际的体验,加深对网络协议、握手协议、安全算法的理解、掌握、应用,并激发进一步的思考和发挥,注重培养学习爱好和创新思维。
2. 通过实验,了解和掌握DELPHI网络控件UDP/TCP的基本编程方法;掌握使用简朴的安全算法建立网络通讯协议;结合实际编程工具如数据库系统开发简朴的网络协议应用程序,掌握一定的网络通讯程序的调试能力。
3. 熟悉UDP/TCP编程环境和特性
4. 了解SSH协议基本原理和协议流程的五个过程
5. 了解SSH协议最低层缓冲区的构架和数据包的加密解密原理;
6. 调试简朴的网络协议等方面的实验。
工作计划及安排:
19号选取题目,上网 取图书馆收集资料
20号 在机房与同学联机 配置服务器 抓取SSH协议包
21号对协议包进行分析 比较 对个协议层进一步了解
22号填写实验大报告
指导教师签字
年 月 日
课程设计(大作业)成绩
学号: 姓名:李娜 指导教师:范老师 李老师
课程设计题目:
用协议分析工具分析SSH以及以下各层协议的工作机制
总结:
通过本次课程设计1.使我了解了SSH协议既可以提供主机认证,又提供用户认证,同时还提供数据压缩,数据机密性和完整性保护。增强了对网络知识的学习。
2.了解SSH原理和应用,以及SSH各层协议的工作。
3.培养具有综合应用相关知识来解决测试问题的基础理论
;
4.培养在实践中研究问题,分析问题和解决问题的能力;我们必须坚持理论联系实际的思想,以实践证实理论,从实践中加深对理论知识的理解和掌握。实验是我们快速结识和掌握理论知识的一条重要途径。
5.使我了解到团队精神的伟大,在团队里互相学习,互帮互助,共同进步。
6.将课堂的知识与实战设计相结合,更深刻的了解平时所学知识更为深层的含义
指导教师评语:
成绩:
填表时间: 指导教师署名:
课程设计(大作业)报告
一、 题目分析
SSH,即Secure Shell,是一种介于传输层和应用层之间的加密隧道协议,具有C/S的体系结构。SSH可以在本地主机和远程服务器之间设立“加密隧道”,并且这样设立的“加密隧道”可以跟常见的FTP,SMTP,POP应用程序,X应用程序相结和。目的是要在非安全的网络上提供安全的远程登陆和相应的网络安全服务。既然SSH是以提供安全服务为目的的协议,其中必不可少的是一套完备的密匙机制。由于SSH协议是面向互联网中主机之间的互访 与信息互换,所以主机密匙成为基本的密匙机制。即SSH规定每一个使用本协议的主机都必须至少有一个自己的主机密匙对,服务器方通过对客户方主机密匙的认证之后,才允许其连接请求。一个主机可以使用多个密匙,针对不同的密匙算法而拥有不同的密匙。
SSH在运营方式上,不像其他TCP/IP应用,被设计为工作于自己的基础之上,而不是运用包装(Wrappers)或通过Internet守护进程inetd运营。
根据IETF关于SSH草案的定义,SSH协议包含3个组成部分(层次)。
(1)传输层协议(SSH-TRANS)
(2)用户认证协议(SSH-UXERAUTH)
(3)连接协议(SSH-CONNECT)
二、 总体设计
2.1 设计原则
本着少花钱办大事的原则,充足运用有限的投资,在保证网络先进性的前提下,选用性能价格比最佳的设备,我们认为SSH建设应当遵循以下原则:
1 先进性
以先进、成熟的网络通信技术进行组网,支持数据、语音、视像等多媒体应用,用基于互换的技术替代传统的基于路由的技术。
2 标准化和开放性
网络协议采用符合ISO及其他标准,采用遵从国际和国家标准的网络设备。
3 可靠性和可用性
选用高可靠的产品和技术,充足考虑系统在程序运营时的应变能力和容错能力,保证整个系统的安全与可靠。
4 灵活性和兼容性
选用符合国际发展潮流的国际标准的软件技术,以便系统有可靠性强、可扩展和可升级等特点,保证此后可迅速采用计算机网络发展出现的新技术,同时为现存不同的网络设备、小型机、工作站、服务器、和微机等设备提供入网和互连手段。
系统的灵活性重要表现在软件配置与负载平衡等方面,配合互换机产品与路由器产品支持的最先进的虚拟网络技术,整个网络系统可以通过软件快速简便地将用户或用户组从一个网络转移到另一个网络,可以跨越办公室、办公楼,而无需任何硬件的改变,以适应机构的变化。同时也可以通过平衡网络的流量,以提高网络的性能。
5 实用性和经济性
从实用性和经济性出发,着眼于近期目的和长期的发展,选用先进的设备,进行最佳性能组合,运用有限的投资构造一个性能最佳的网络系统。
6 安全性和保密性
在接入Internet的情况下,必须保证网上信息和各种应用系统的安全。 扩展性和升级能力, 网络设计应具有良好的扩展性和升级能力,选用品有良好升级能力和扩展性的设备。在以后对该网络进行升级和扩展时,必须能保护现有投资。应支持多种网络协议、多种高层协议和多媒体应用。
三、 实验器材
SSH服务器 SSH客户端 计算机
四、 制作环节
(1)网络设立
根据规定windows XP和虚拟机的网络设立如下:
1) 将服务器端刚才产生的私钥存入本地
2) 在客户端 windows系统中查找刚才取得的私钥文献
由于刚才自己设立了目录在Xp的桌面上,所以在桌面上。如下图:
获取客户端
启动wireshark
Sudo wireshark
2) 开始抓包,进行ssh连接,包如下图:
分析过程:
a. 一方面是TCP三次握手
b. 紧接着是一个SShv2的包,server向client说明自己的SSH版本信息和系统版本信息, client发TCP响应收到
c. Client发一个SSHv2包,向server说明client的SSH版本信息和系统版本信息,server发TCP包响应收到
d. Client发Key Exchange init包,server响应收到
e. Server发key Exchange init包
f. Client向server发DH GEX请求
g. Server应答DH keyExchange请求
h. Client发送DHkey初始化请求
i. Server应答DHkey初始化请求
DH密钥互换验证过程结束,安全的连接建立
j. 后面是加密数据的传输
3)重新开始抓包,进行telnet连接,包如下图:
a. 一方面还是TCP的三次握手
b. Client向server发送telnet数据,server响应之
c. Server向client端发送telnet环境,client响应
d. Client向server端发送telnet环境,server响应
e. Server向client端发送系统环境,client响应
f. Server向client发送登录框,请求输入用户名
g. Client每次一个字符向server发送命令,server收到对的的字符后响应client,这些数据互换都是以明文形式的,直至碰到回车符
h. Server请求输入密码
i. Client仍然每次发送一个字符把密码以明文的形式传送过去,知道回车
j. 密码验证成功后,server向client发送登录成功信息
k. 以后的命令都是以明文方式一个字符一个字符传送。
对比分析:通过比较SSH远程登录和telnet远程登录,明显可以看到,SSH比telnet安全,telnet的数据传输都是明文,没有通过加密解决,登录名和密码以及传输的数据很容易被人窃听,很不安全。而SSH登录的话,是一个密钥验证的过程,并且以后的数据传输都是通过加密解决的,使得客户端和服务器之间的通信比较安全
五、 方案比较
该方案简朴方便 更容易掌握 方便操作
实验得到SSH协议既可以提供主机认证,又提供用户认证,同时还提供数据压缩,数据机密性和完整性保护。SSH的局限性之处在于他使用的是手工分发并预配置的公匙而非基于证书的密匙管理。与SSL和TLS相比,这是SSH的重要缺陷。但从SSH2.0协议开始允许一同使用PKI证书和密匙,将来在SSH产品中把这种特性和通用的PKI一起实现,这样可以减少密匙管理的承担并提供更强大的安全保障。虽然SSH尚有其局限性之处,但相对于VPN和专业防火墙的复杂性和费用来说,也不失为一种可行的网络安全解决方案,特别适合中小公司部署应用。
SSH解决了许多和网络有关的安全漏洞,有效地防止了网络窃听(Sniffer)、IP欺骗、DNS欺骗、连接劫持(Connection Hijacking)、插入袭击(Compensation Attack)和中间人袭击(man-in-the-middle)等,但并没有解决所有问题,特别是他仍然容易受到针对底层TCP/IP缺陷而发起的服务器拒绝袭击(DoS);他也不能解决一些考虑环境因素而产生的袭击方法,例如流量分析和隐秘通道;也不能防止出现病毒,Trojin木马和咖啡豆(coffee spill)。对于TCP/IP的缺陷引起的问题,只能通过更低档的网络层技术才干很好的解决,例如硬件链路加密或IPSec;对于流量分析袭击,SSH可以在空闲时发送一些随机的,非操作性的信息来干扰活动状态的分析
六、 参考文献
1] Daniel J. Barrett,Richard E. Silverman,《SSH权威指南》,中国电力出版社,2023.
[2] 王华等,《Delphi 5编程实例与技巧》,机械工业出版社,2023.
[3] (美)Steve Teixeira,《Delphi 5开发人员指南》,机械工业出版社,2023.
[4] IETF,《SSH DRAFT IETF》,,2023.4.
[5]《TCP/IP基础》.电子工业出版社.2023.6;
展开阅读全文