利用Openssl可以生成一个自己发布的数字证书。
1,生成证书
-
生成私钥:
-
openssl genrsa -out private.key
-
利用私钥生成证书:
-
openssl req -x509 -new -key privkey.key -out my.crt
-
也可以不使用已有的私钥。
-
openssl req -x509 -nodes -newkey rsa:2048 -keyout private2.key -out my2.crt
2,查看证书
-
查看证书中的所有信息
-
openssl x509 -in my.crt -text
-
使用帮助信息,可以看到更多的方法。
-
-subject - print subject DN
-
-issuer - print issuer DN
-
-email - print email address(es)
-
-C - print out C code forms
3,利用证书,完成HTTPS通信
-
Openssl 模拟https服务器。
-
[root@pingshun openssl]# openssl s_server -cert my2.crt -key private2.key -WWW -tls1_2 -state
-
Using default temp DH parameters
-
Using default temp ECDH parameters
-
ACCEPT
-
SSL_accept:before/accept initialization
-
SSL_accept:SSLv3 read client hello A
-
SSL_accept:SSLv3 write server hello A
-
SSL_accept:SSLv3 write certificate A
-
SSL_accept:SSLv3 write key exchange A
-
SSL_accept:SSLv3 write server done A
-
SSL_accept:SSLv3 flush data
-
SSL_accept:SSLv3 read client key exchange A
-
SSL_accept:SSLv3 read finished A
-
SSL_accept:SSLv3 write session ticket A
-
SSL_accept:SSLv3 write change cipher spec A
-
SSL_accept:SSLv3 write finished A
-
SSL_accept:SSLv3 flush data
-
FILE:index.html
-
ACCEPT
4,逗逼一下
因为添加了-WWW 选项,可以把同路径的私钥都获取到,这下客户端就可以获取到
公钥和私钥了
!!!
5,这位大侠的姿势更帅,
阅读(1905) | 评论(0) | 转发(0) |