您的位置:首页 > 理论基础 > 计算机网络

Https流程,openssl本地自建证书,抓包

2018-01-17 18:43 316 查看
HTTPS:超文本安全传输协议,和HTTP相比,多了一个SSL/TSL的认证过程,端口为443
在http(超文本传输协议)基础上提出的一种安全的http协议,因此可以称为安全的超文本传输协议。http协议直接放置在TCP协议之上,而https提出在http和TCP中间加上一层加密层(SSL层)。

从发送端看,这一层负责把http的内容加密后送到下层的TCP,从接收方看,这一层负责将TCP送来的数据解密还原成http的内容。

生成私钥
genrsa -des3 -out private.key 2048
des3代表加上了加密,后面的2048是代表生成的密钥的位数,1024已经不是很安全

生成服务器的私钥,去除密钥口令
rsa -in private.key -out server.key

生成证书请求
req -new -key private.key -out server.csr -days 36500 -subj /CN=127.0.0.1

使用私钥为证书请求签名,生成给服务器签署的证书,格式是x509的PEM格式
x509 -req -in server.csr -out server.crt -outform pem -signkey server.key -days 3650
-outform pem指定证书生成的格式,默认是pem,所以这个命令也可以写作成
x509 -req -in server.csr -out server.crt -signkey server.key -days 3650
-输出格式为cer格式
x509 -req -in server.csr -out server.cer -signkey server.key -days 3650

iis需要的pfx格式的证书,现在转换格式:iis.pfx
pkcs12 -export -clcerts -in server.cer -inkey server.key -out iis.pfx


View Code



安装cer证书的时候,一定要安装到受信任的根证书颁发机构,虽然其他的也能访问,但是浏览器会提示不安全。

根证书:

创建私钥:ca.key

genrsa -out ca/ca.key 1024


创建证书请求 : ca.csr

OpenSSL>  req -new -out ca/ca.csr -key ca/ca.key
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:cn
State or Province Name (full name) [Some-State]:shanghai
Locality Name (eg, city) []:shanghai
Organization Name (eg, company) [Internet Widgits Pty Ltd]:dfrzw
Organizational Unit Name (eg, section) []:dfrzw
Common Name (e.g. server FQDN or YOUR name) []:***.rongzi
Email Address []:hongda159505@aliyun.com

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:hongdada
An optional company name []:dfrzw


上述可直接在命令中用
-subj
跟在语句后面,如:

req -new -out ca/ca.csr -key ca/ca.key -days 3650 -subj /CN=127.0.0.1


自签署证书 :ca.cer

x509 -req -in ca/ca.csr -out ca/ca.cer -signkey ca/ca.key -days 3650


3650,设置10年的证书有效期

将证书导出成浏览器支持的.p12格式 :

pkcs12 -export -clcerts -in ca/ca.cer -inkey ca/ca.key -out ca/ca.p12

我这边的密码是:hongdada

创建server证书:

创建私钥:server.key

genrsa -out server/server.key 1024


创建证书请求 : server.csr

req -new -out server/server.csr -key server/server.key -days 3650 -subj /CN=127.0.0.1


自签署证书 :server.cer

x509 -req -in server/server.csr -out server/server.cer -signkey server/server.key -CA ca/ca.cer -CAkey ca/ca.key -CAcreateserial -days 3650


将证书导出成浏览器支持的.p12格式 :server.p12

pkcs12 -export -clcerts -in server/server.cer -inkey server/server.key -out server/server.p12


iis需要的pfx格式的证书,现在转换格式:iis.pfx

pkcs12 -export -clcerts -in server/server.cer -inkey server/server.key -out server/iis.pfx


使用Wireshark抓包https:

http://joji.me/zh-cn/blog/walkthrough-decrypt-ssl-tls-traffic-https-and-http2-in-wireshark



tcp.ssl:



http://www.ruanyifeng.com/blog/2014/02/ssl_tls.html

http://blog.csdn.net/shion0305/article/details/73776449

https://www.cnblogs.com/walkerwang/p/4910799.html

http://blog.csdn.net/mooncom/article/details/60140372

http://blog.csdn.net/sdsabc2000/article/details/77028635

http://www.cnblogs.com/AloneSword/p/4656492.html

http://blog.csdn.net/sxy2475/article/details/77918108?locationNum=2&fps=1?%3E

http://blog.csdn.net/PZ0605/article/details/51954876
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: