制作和使用SSL证书
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
制作和使用SSL证书
在Linux环境下,一般都安装有OPENSSL。下面的内容就是用OPENSSL快速制作root 证书以及客户端证书的步骤和方法。
1、初始准备工作
1)创建一个我们制作证书的工作目录
# mkdir CA
# cd CA
# mkdir newcerts private
2)制作一个我们创建证书时需要的配置文件f,内容可以参考见
# cd CA
# vi f
3)创建我们自己的证书库的索引
# echo '01' >serial
# touch index.txt
2、制作一个root证书
执行下面的命令
# openssl req -new -x509 -extensions v3_ca -keyout private/cakey.pem \ -out cacert.pem -days 3650 -config ./f
在屏幕上会出现如下的交互内容,按照提示相应的信息。注意,一定要记住PEM,这个在以后生成客户端证书时都需要。
Using configuration from ./f
Generating a 1024 bit RSA private key
.......++++++
..........................++++++
writing new private key to 'private/cakey.pem'
Enter PEM pass phrase:demo
Verifying password - Enter PEM pass phrase:demo
-----
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.
-----
Organization Name (company) [The Sample Company]:
Email Address []:ca@
Locality Name (city, district) [Metropolis]:
State or Province Name (full name) [New York]:
Country Name (2 letter code) [US]:
Common Name (hostname, IP, or your name) []:TSC Root CA
其中:
-new -x509:表示创建一个自我签名的证书
-extensions v3_ca:表示创建一个CA证书
-days 3650:表示证书的有效期为10年。在root证书过期后,需要重新创建root证书和为所有客户提供的客户端证书以及为客户重新发布证书。这些工作量会很大。
-keyout private/cakey.pem:指明root证书的Key文件
-out cacert.pem:指明root证书文件
-config ./f:表明用我们的配置文件
命令执行完成后,会生成两个文件
●一个存放私钥Key的文件:private/cakey.pem
●一个root CA证书文件:cacert.pem
可以分别用如下的命令来看证书的内容、有效期以及用途:
# openssl x509 -in cacert.pem -noout -text
# openssl x509 -in cacert.pem -noout -dates
# openssl x509 -in cacert.pem -noout -purpose
3、制作一个CSR(Certificate Signing Request)
执行下面的命令:
# openssl req -new -nodes -out req.pem -config ./f 在屏幕上会出现如下的交互内容,按照提示输入相应的信息。
...
Organizational Unit Name (department, division) []:Mail Server
Email Address []:postmaster@
Common Name (hostname, IP, or your name) []:
...
经过上面的命令,会有两个输出文件
●一个存放私钥Key的文件:key.pem
●一个CSR证书文件:req.pem
可以用下面的命令来看req.pem文件所包含的内容
# openssl req -in req.pem -text -verify -noout