logo资料库

计算机网络ssl仿真实验.doc

第1页 / 共6页
第2页 / 共6页
第3页 / 共6页
第4页 / 共6页
第5页 / 共6页
第6页 / 共6页
资料共6页,全文预览结束
SSL 仿真作业 周小龙 201011677 集成电路设计 一、SSL 介绍 SSL(Secure Sockets Layer 安全套接层)及其继任者传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及数据完整性的一种安全协议。TLS 与 SSL 在传输 层对网络连接进行加密。 SSL 协议的工作流程: 1)客户端向服务器发送一个开始信息以便开始一个新的 会话连接;2)服务器根据客户的信息确定是否需要生成新的主密钥,如需要则服务 器在响应客户的信息时将包含生成主密钥所需的信息;3)客户根据收到的服务器响 应信息,产生一个主密钥,并用服务器的公开密钥加密后传给服务器;4)服务器恢 复该主密钥,并返回给客户一个用主密钥认证的信息,以此让客户认证服务器。 二、Openssl 在 Windows 系统下的仿真 1、在 windows 下生成 RSA 私钥 (1) 采用 1024 位 RSA 私钥,并利用 DES3 加密算法生成私钥。该过程中会提示输入 RSA 私钥密码,有效密码为 4~511 位,如输入有误会出现错误。 OpenSSL>genrsa-des3 -out myca.key 1024 指令和参数解释: genrsa -des3 -out myca.key 生成密钥文件 生成 rsa 私钥文件 用 des3 算法加密 myca.key 密钥文件 生成 RSA 私钥如图所示: 在该过程中要求设置密码,我们需要按要求设置密码。 (2)查看生成的私钥(要输入先前设置的密码):
2、生成自签名的数字证书 (1)用 req 命令创建自签名的 X.509V3 格式的 CA 证书。 创建时会提示输入先前所设的密码。然后提示输入国家,地区,城市,组织与姓名,电 子邮件等,我输入的是 cn,shandong,jinan,sduxy,zhouxiaolong,zhou70525319@126.com。 设置证书的有效期为 365 天。没有输入设置语句即为采用默认系统设置。 参数解释: -days 365 ——使这个证书的有效期是 365 天,之后它将不能再用; -new ——创建一个新的证书; -x509 ——创建一个 X509 证书(自己签名的); -nodes ——这个证书没有密码,为了建立 SSL 隧道使用,因为到目前为止,stunnul 仍不支持带有密码的证书; -out *.pem ——把 SSL 证书写到哪里; -keyout *.pem ——把 SSL 证书放到这个文件中;
(2)查看创建好的证书内容: 三、利用数字证书建立加密隧道 SSL
1、建立服务器/客户端连接 利用 VNC 软件 VNC Server 和 VNC Viewer 在服务器 server 与客户端 client 之间建立连 接。 2、生成密钥和证书 利用 openssl 软件生成建立连接所用到的密钥和证书,过程如前所述,生成证书为 server.pem(服务器端)、client.pem(客户端); server.pem 如下: client.pem 如下: 3、设置 stunnel,建立 SSL Stunnel 的设置是通过配置文件 stunnel.conf 完成的。 (1)服务端配置文件内容示范 # 使用服务器模式 client = no debug = 7 key = server.pem cert = server.pem # 隐藏 Stunnel 的托盘图标(值为 no 时隐藏)
taskbar = yes # 将代理服务器提供的端口加密映射成本机端口 [VNC] # 客户端连接的端口 accept = 443 # 代理服务器所在的 IP 及提供的端口 connect = 127.0.0.1:5900 含义:使用 server.pem 证书,将本机 127.0.0.1:5900 的端口加密映射成本机 443 端 口 VNC 是标识名,可以改成其他的标识。 直接运行 stunnel.exe,就可以服务器方式启动 Stunnel 了。 (2)客户方式配置文件内容示范 # 使用客户模式 client = yes key = server.pem cert = server.pem [VNC] accept = 127.0.0.1:995 connect = 202.194.20.230:443 直接运行 stunnel-4.11.exe,就可以以客户方式启动 Stunnel 了。
(3)设置浏览器的代理地址 将客户端的浏览器的代理地址设置为 127.0.0.1,端口设置为 accept 中设置的 值,即可通过 Stunnel 实现加密代理访问。服务器与客户端的隧道连接通讯如图所示: 服务器端: 客户端:
分享到:
收藏