自己制作SSL证书的方法【20210503】

发表于 2020-06-18 11:26:14
阅读 310

介绍

介绍

如果我们需要一张SSL证书,又不想花钱,又不想麻烦,可以自己制作一个。

自己制作的SSL证书的好处是分分钟搞定,简单,快捷。

缺点是证书不受信任,浏览器会显示不安全。

教程

创建 server.key 文件

openssl genrsa -des3 -out server.key 1024

创建 server.csr 文件

有六项信息必须填写,其中“Common Name”就是证书的域名不要写错了

命令

openssl req -new -key server.key -out server.csr -config /etc/pki/tls/openssl.cnf

必填项

Country Name (2 letter code) [XX]:CN
State or Province Name (full name) []:Beijing
Locality Name (eg, city) [Default City]:District east
Organization Name (eg, company) [Default Company Ltd]:TONGFU.net
Organizational Unit Name (eg, section) []:TONGFU.net
Common Name (eg, your name or your server's hostname) []:tongfu.net

创建 ca.crt 和 ca.key 文件

有六项信息必须填写,其中“Common Name”就是证书的域名不要写错了

命令

openssl req -new -x509 -keyout ca.key -out ca.crt -config /etc/pki/tls/openssl.cnf

必填项

Country Name (2 letter code) [XX]:CN
State or Province Name (full name) []:Beijing
Locality Name (eg, city) [Default City]:District east
Organization Name (eg, company) [Default Company Ltd]:TONGFU.net
Organizational Unit Name (eg, section) []:TONGFU.net
Common Name (eg, your name or your server's hostname) []:tongfu.net

如果没有文件 /etc/pki/CA/index.txt 就创建一个

touch /etc/pki/CA/index.txt

如果没有文件 /etc/pki/CA/serial 就创建一个

echo "00" > /etc/pki/CA/serial

创建 server.crt 文件

openssl ca -in server.csr -out server.crt -cert ca.crt -keyfile ca.key -config /etc/pki/tls/openssl.cnf

最后会生成如下文件

ca.crt  ca.key  server.crt  server.csr  server.key

创建免密key文件

创建后使用server.key.unsecure就可以在重启web服务的时候不需要输入密码了

openssl rsa -in server.key -out server.key.unsecure

总结

通过以上的方法就可以随意制作SSL证书了,通过SSL证书可以给Nginx或者Apache这样的web服务器配置HTTPS访问方式。HTTPS方式传输是加密的,过程传输的数据很难被破解。

不过,由于我们自己制作的证书,我们自己是可以轻松解码的,所以浏览器才会提示不安全了。