我是靠谱客的博主 勤恳蜡烛,最近开发中收集的这篇文章主要介绍【网络安全】在局域网里创建个人CA证书前言生成CA证书生成server证书生成client证书,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

前言

这篇文章主要是给另一篇文章提供生成个人CA证书步骤的教程。

生成CA证书

首先网上下载一个openssl软件,Windows可以从这里下载:已经编译好的Windows下的openssl,当然也可以在Linux下生成。

之后按步骤输入下面指令生成证书。这一步是创建根证书。

创建私钥

> openssl genrsa -out ca/ca-key.pem 1024

创建证书请求

> openssl req -new -out ca/ca-req.csr -key ca/ca-key.pem
Country Name (2 letter code) [AU]:cn
State or Province Name (full name) [Some-State]:guangdong
Locality Name (eg, city) []:guangzhou
Organization Name (eg, company) [Internet Widgits Pty Ltd]:test
Organizational Unit Name (eg, section) []:test
Common Name (eg, YOUR name) []:root
Email Address []:test 

依次输入cnguangdongguangzhoutest等信息。

自签署证书

>openssl x509 -req -in ca/ca-req.csr -out ca/ca-cert.pem -signkey ca/ca-key.pem -days 3650

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

>openssl pkcs12 -export -clcerts -in ca/ca-cert.pem -inkey ca/ca-key.pem -out ca/ca.p12

如果要输入其它信息直接全部为test。

生成server证书

这一步生成的证书是要放在服务器上。

创建私钥

>openssl genrsa -out server/server-key.pem 1024

创建证书请求

> openssl req -new -out server/server-req.csr -key server/server-key.pem
Country Name (2 letter code) [AU]:cn
State or Province Name (full name) [Some-State]:guangdong
Locality Name (eg, city) []:guangzhou
Organization Name (eg, company) [Internet Widgits Pty Ltd]:test
Organizational Unit Name (eg, section) []:test
Common Name (eg, YOUR name) []:192.168.1.246
# 注释:一定要写服务器所在的ip地址
Email Address []:sky

自签署证书

> openssl x509 -req -in server/server-req.csr -out server/server-cert.pem -signkey server/server-key.pem -CA ca/ca-cert.pem -CAkey ca/ca-key.pem -CAcreateserial -days 3650

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

> openssl pkcs12 -export -clcerts -in server/server-cert.pem -inkey server/server-key.pem -out server/server.p12

如果要输入其它信息直接全部为test。

生成client证书

创建私钥

> openssl genrsa -out client/client-key.pem 1024

创建证书请求

> openssl req -new -out client/client-req.csr -key client/client-key.pem
Country Name (2 letter code) [AU]:cn
State or Province Name (full name) [Some-State]:guangdong
Locality Name (eg, city) []:hangzhou
Organization Name (eg, company) [Internet Widgits Pty Ltd]:skyvision
Organizational Unit Name (eg, section) []:test
Common Name (eg, YOUR name) []:sky
Email Address []:sky
# 注释:就是登入中心的用户(本来用户名应该是Common Name,但是中山公安的不知道为什么使用的Email Address,其他版本没有测试) 
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:test
An optional company name []:test

自签署证书

> openssl x509 -req -in client/client-req.csr -out client/client-cert.pem -signkey client/client-key.pem -CA ca/ca-cert.pem -CAkey ca/ca-key.pem -CAcreateserial -days 3650

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

> openssl pkcs12 -export -clcerts -in client/client-cert.pem -inkey client/client-key.pem -out client/client.p12

如果要输入其它信息直接全部为test。


update 2018-03-05:

本人使用Python编写了一键创建以上证书的脚本,放在了github的gist:https://gist.github.com/AngelLiang/730edb0042b9ac50f692c905ca8f1310

最后

以上就是勤恳蜡烛为你收集整理的【网络安全】在局域网里创建个人CA证书前言生成CA证书生成server证书生成client证书的全部内容,希望文章能够帮你解决【网络安全】在局域网里创建个人CA证书前言生成CA证书生成server证书生成client证书所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(65)

评论列表共有 0 条评论

立即
投稿
返回
顶部