关于 SSL 的 CA 签名和用户加密过程,有篇简要介绍。
要自签证书自然需要自建的 CA 证书和你服务器的证书。
首先创建 CA 证书
- 创建 CA 的 rsa 私钥,私钥 4096 位:
openssl genrsa -out ca.key 4096
如果要加密私钥,可以加上 -des3 参数,给私钥加上 pass phrase
-
创建 x509 证书
openssl req -new -x509 -days 3650 -key ca.key -out ca.crt
服务器证书
- 创建私钥
openssl genrsa -out server.key 4096
-
创建签名请求
openssl req -new -key server.key -out server.csr
-
用 CA 证书给 csr 签名,然后生成服务器证书(既公钥)
openssl x509 -req -days 3650 -in server.csr -CA ca.crt -CAkey ca.key -set_serial 01 -out server.crt
修改 Apache,把下面的配置放到虚拟机配置段里
SSLEngine on SSLCertificateFile /etc/httpd/ssl/dongsheng.moodle.local/server.crt SSLCertificateKeyFile /etc/httpd/ssl/dongsheng.moodle.local/server.key
为了让浏览器更好的支持自建证书最好把该证书加到系统里,参见:Configuring SSL certificates on Linux