4. SSL证书的秘钥,签名和签发

SSL证书的生成工具有很多,其中,比较常用的是JDK自带的keytool和开源的openssl。

创建一个证书,通常需要产生这个证书对应的服务器私钥,并使用私钥进行签名,进而通过这个签名来签发一个针对该服务器的SSL可信证书。

第一步:

创建一个私有的服务器key-server.key(私有秘钥),创建的过程中需要输入秘钥对应的密码

openssl genrsa -des3 -out server.key 2048
4. SSL证书的秘钥,签名和签发_第1张图片

第二步:

基于服务器的私有秘钥创建一个证书签名,创建过程中要指定秘钥,并输入针对秘钥的密码
在这个过程中会不断提示各种信息,需要按照提示输入证书签名所需的国家,地区,公司,邮箱等信息
最终会生成server.csr(证书签名)

openssl req -new -key server.key -out server.csr -sha256
4. SSL证书的秘钥,签名和签发_第2张图片

第三步:

使用签名签发一个SSL证书

openssl x509 -req -in server.csr -signkey server.key -out server.crt -sha256

需要在创建时输入秘钥对应的密码


4. SSL证书的秘钥,签名和签发_第3张图片
image.png

注意:最终生成的server.csr(签名), server.crt(证书), server.key(签名)

你可能感兴趣的:(4. SSL证书的秘钥,签名和签发)