Ssldump 编译过程、解密过程以及通过openssl在iis上配置https服务器
作者:LUHOO
1.Ssldump简介
ssldump is an SSLv3/TLS network protocol analyzer. It identifies TCP connections on the chosen network interface and attempts to interpret them as SSLv3/TLS traffic. When it identifies SSLv3/TLS traffic, it decodes the records and displays them in a textual form to stdout. If provided with the appropriate keying material, it will also decrypt the connections and display the application data traffic
官网:http://www.rtfm.com/ssldump/
2.linux下编译ssldump
环境:linux: Red Hat Linux release 9 (Shrike)
Windows2003 +iis6.0
一、准备工作
下载
Ssldump
http://www.rtfm.com/ssldump/ssldump-0.9b3.tar.gz
libpacp
http://www.tcpdump.org/release/libpcap-1.0.0.tar.gz
Openssl
http://www.openssl.org/source/openssl-0.9.8e.tar.gz
二.linux下编译安装 libpcap、Openssl、Ssldump
编译libpcap 和编译Openssl 的过程就不写了,如果不会可以找相关资料
重点说一下ssldump编译
[root@localhost root]# tar zxvf ssldump-0.9b3.tar.gz
[root@localhost root]# cd ssldump-0.9b3
[root@localhost ssldump-0.9b3]# ./configure
[root@localhost ssldump-0.9b3]# make
编译后会出现错误:
报错:找不到krb5.h文件。Krb5.h文件在/usr/kerberos/include/下 我们在/usr/include/openssl/这个路径下找到kssl.h文件 打开,把头文件的路径加全
编译会出现一下错误:
根据错误的提示,找到文件,把里面的头文件路径补全,编译就可以了,这个过程就不详细说了
把所报的错误修改完后,
[root@localhost ssldump-0.9b3]# make
就会编译成功
接着
[root@localhost ssldump-0.9b3]# make install
安装
到此我们的ssldump 编译安装完成
3.windows2003 +iis6.0+openssl配置https服务器,以及提取私钥的过程
一、 首先安装iis
安装windows组件 勾选“应用程序服务器” 点击进去
进入,勾选 “asp.net ”和"iis" 点击确定
然后勾选 “证书服务”
点击“是” 在点击“下一步”
选择 “独立根CA” 下一步 按照提示填写
填写完成后,按下一步 一直到安装完成
二、 获取IIS证书请求
打开iis 在默认网站 点击右键属性,选择安全目录 点击“证书服务”
点击“下一步” 新建证书
然后点击下一步 ,“现在准备证书请求 但稍后发送” 点击下一步,然后填入名称,下一步
填写单位和部门 点击下一步,填写公用名称, 下一步, 填写 国家 、省、市县。下一步
下一步,到完成,会在c盘下生成一个certreq.txt 文件。 注:请牢记刚才输入的内容
三 、openssl生成 、签发、安装 证书,以及提取私钥
把编译好的Openssl 拷贝到c盘(因为我是在虚拟机里面,只有一个盘,其他盘也可以,)
我使用的是openssl-0.9.8g
开始利用Openssl 制作证书,等一系列过程
运行 cmd ---->cd C:/openssl-0.9.8g/out32dll
1.生成自签名根证书
openssl req -x509 -newkey rsa:1024 -keyout cakey.pem -out cacert.pem -days 3650 -config C:/openssl-0.9.8g/apps/openssl.cnf
然后根据提示,填写刚才在iis 创建证书的内容
然后在out32dll目录下创建一个demoCA目录 里面分别创建一个newcerts 和private目录
同时创建一个index.txt 文档 和一个以serial为名的文件,serial 内容为011E
2、分别执行一下命令
copy cakey.pem demoCA/private
copy cacert.pem demoCA
把cakey.pem 拷贝到/demoCA/private, 把cacert.pem拷贝到out32dll/demoCA
3.用CA证书cacert.pem为IIS请求certreq.txt签发证书server.pem
openssl ca -in c:/certreq.txt -out server.pem -config c:/openssl-0.9.8g/apps/openssl.cnf
然后安装提示操作
4.把server.pem转换成x509格式
openssl x509 -in server.pem -out server.cer
然后把server.cer 文件拷贝到c盘下
5.将server.cer导入到IIS
打开iis 在【默认网站】上单击右键【属性】,在【目录安全性】选项卡中点击【服务器证书】按钮,【下一步】
点击下一步 选择c:/server.cer
然后点击一步,一步,到完成
回到【目录安全性】选项卡在【安全通信】栏目中单击【编辑】按钮,勾上【要求安全通道(SSL)】,勾上【要求128位加密】,点击【确定】按钮。
6.生成客户端证书
openssl req -newkey rsa:1024 -keyout clikey.pem -out clireq.pem -days 365 -config c:/openssl-0.9.8g/apps/openssl.cnf
注,和刚才填写的信息一致
7.CA签发客户端证书
openssl ca -in clireq.pem -out client.crt -config c:/openssl-0.9.8g/apps/openssl.cnf
8.将客户端证书转换为pk12格式
openssl pkcs12 -export -clcerts -in client.crt -inkey clikey.pem -out client.p12
9.安装信任的根证书
把cacert.pem拷贝到c盘改名为cacert.cer,双击cacert.cer文件,打开证书信息窗口,单击【安装证书】按钮,【下一步】。
选择将所有证书放入系列存储 点击浏览 勾选【显示物理存储区】选择【受信任的根证书颁发机构/本地计算机】 点击下一步,完成
10.安装客户端证书
将client.p12文件拷贝到c盘,然后双击, 安装步骤同上
11. 导出当前证书的pfx文件
.1.进入IIS所要操作的【默认网站】,右键【属性】,进入【目录安全性】标签。
2.点击【服务器证书】,然后“下一步”,按下图设置导出pfx文件。
3.然后“下一步” 路径文件名默认,然后“下一步”输入密码,“下一步”直到“完成”。(忘记截图了,嘿嘿)
12. 从pfx文件中提取密钥
openssl pkcs12 -in C:/as-esl99q0huyz1_w3svc1_cert.pfx -out c:/pkey.key
然后把pkey.key
拷贝到linux下 打开
把里面除过下面的
-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: DES-EDE3-CBC,26D4D5A7FF139423
5/eW/r0mSMWbDqyL1wnCZFsgBNggi8UmAtoFwSwN+SS9vrsyNxu8hwIkgDsFIHRw
zFNo5JIgCBd+R9T8uZfa+ejd7FKdnsq3P+1xGyA52jVITh3wwAmHTj/0QNZOyxgO
Q4U2wb52ApSMnNugfkJKxtpBTwitum8satKMH+MvXoc967Gz/YmHtphDzc4xg3Zl
ETKTY9H3fIvNQ8swlZUfb0aJ43NRsPZkbQHeB1gJtlldygS/CvXpKn/dx6pS0pnM
mK8hSsqc1x7SB0vK/SpNtVRE+XHD5Fp0QlhaII/8b6W7xESUcGQLTfwgi4UGwUth
PpWsw8PL6T3NfC4vfzskMdrp0t72mLDYLNFkUwSvHGTodWRA7Xnjpfy2++GBtRkq
xQ4JL18Wfu8TpX0CUxw3vxI6U76c4zD4XBLh9qUJUEwkEGIm7F7w21U4exiXDxJg
kQ4QppSlwq+ByG6NynOobY3O/dCLH6zrUt08hneDqutazwIZ8vN+bzJs9vmu2TAA
g9jIoomnMBpw+dpUoxVTSmWiO9KAzyCYjpTU5H6Vu/8buQU/rj01U3T5+XTKuJsj
D4/m+Idq3fjgMVsqmkloJr1GE4nz5hMMKr2a47v3cp+sgIZIcbHGSwXW1CM09bC5
YWRMkxbsLvwHKq0lcLQ5fmJINF3DIHFevJvEyh9oa9nlESz9lREidli7y+te7otZ
fXbYO77eIRbe0pzp5VDuEApJeAfDHGjmI8j2ZzNU5BY57Q1YnHoBRJynrcKJbYvt
QwTg56hwHJ8OEdX6eGSl1S9YsA8ivJ3CPXPUyPnP7kRMOdNNjng1Qg==
-----END RSA PRIVATE KEY-----
的所有文件删除保存
4.Ssldump解密过程
在linux里面运行
[root@localhost ssldump-0.9b3]# ssldump -i eth0 -k pkey.key -nn -Ad host 192.168.1.123 and port 443
同时通过浏览器,访问 https://192.168.1.123
电子书下载地址:http://download.csdn.net/source/3173963