配置 CA证书.note

noteId: WEBb02a8e36f8d001f8b091b497aa406213 · 原始路径:/ALL/Linux - A模块/服务配置/Apache2/配置合集/配置 CA证书.note · 图片:2 · 附件待处理:0

 
 
 
 
 
一、在 本地配置证书(CA 和 Web服务器在 同一台机器上)
 
 
(1)使用 apache2 自带的 证书 和 私钥:
 apt install -y apache2
 a2ensites default-ssl.conf
 systemctl restart apache2
 
 
 
 
(2)创建自签名证书:
# 正常创建证书:
 
openssl req -new -x509 -nodes -out /etc/ssl/cisco.crt -keyout /etc/ssl/cisco.key -addext "subjectAltName=DNS:www.cisco.com"    //如果要指定多个扩展名,就需要使用 ,逗号隔开,例如:"subjectAltName=DNS:www.cisco.com,DNS:cisco.com"
 
## 将这张 cisco.crt 证书提供给客户端图形化信任即可
 
 
(3)创建 CA根证书颁发机构:
/usr/lib/ssl/misc/CA.pl -newca    //创建根CA证书颁发机构
 
# 可选,可以在 /etc/ssl/openssl.cnf 中添加证书扩展字段:(新版本浏览器需要有 DNS扩展名称才会信任证书)
vim /etc/ssl/opnessl.cnf
/usr/lib/ssl/misc/CA.pl -newreq-nodes    //创建新的证书申请
/usr/lib/ssl/misc/CA.pl -sign    //签发证书
 
# 将证书移动到指定的位置
mkdir /etc/ssl/tls
rm newreq.pem    //证书申请可以直接删除
mv newcert.pem /etc/ssl/tls
mv newkey.pem /etc/ssl/tls
 
 
 
 
二、CA 和 Web 服务器不在同一台机器上:
 
1、Web服务器生成 私钥 和 证书申请,将证书申请传输给 CA:
# 生成证书申请:
openssl genrsa -out server.key 2048    //创建 证书私钥
openssl req -new -key server.key -out newreq.pem    //根据证书私钥 生成一个证书申请
 
# 将证书申请传输给 根CA服务器:
scp newreq.pem root@192.168.10.2
 
 
 
2、CA 机构签发证书:
# 先创建 根CA
/usr/lib/ssl/misc/CA.pl -newca
 
# 然后编辑 CA,配置扩展名称:(新版本浏览器需要有 DNS扩展名称才会信任证书)
vim /etc/ssl/openssl.cnf
 
# 签发证书:
## 注意:证书申请需要和 demoCA在同一目录下
/usr/lib/ssl/misc/CA.pl -sign
 
# 将签发成功的证书传输回 Web服务器:
scp newcert.pem root@192.168.10.254:/etc/ssl
 
这样证书就配置成功了,在 Web服务器中应用即可