openssl生成证书和nginx配置ssl证书
一般情况下,使用ssl证书需要三个操作步骤:1.生成密钥对;2.生成证书请求文件;3.生成证书文件。从单纯的开发者角度来说,可以使用开源的openssl生成密钥和证书,且通过openssl的req命令,可以一个命令完成上述3个操作。
一、openssl生成证书
1.1、req命令简介
req命令主要的功能:生成证书请求文件、验证证书请求文件和自签名证书(创建根证书)。
通过向openssl 提供一个无效的命令参数,比如:-help 就可以获得可用的命令帮助说明,如下图
1.2、req命令的配置模板文件
使用config参数,需要编写模板文件req.cnf,如下:
# 定义输入用户信息选项的"特征名称"字段名,该扩展字段定义了多项用户信息。
distinguished_name = req_distinguished_name
# 生成自签名证书时要使用的证书扩展项字段名,该扩展字段定义了要加入到证书中的一系列扩展项。
x509_extensions = v3_req
# 如果设为no,那么 req 指令将直接从配置文件中读取证书字段的信息,而不提示用户输入。
prompt = no
[req_distinguished_name]
# 国家代码
C = CN
# 省份
ST = HeBei
# 城市
L = ShiJiaZhuang
# 企业/单位名称
O = Network
# 企业部门
OU = Development
# Common Name
CN = www.network.cn
##### 要加入到证书请求中的一系列扩展项 #####
[v3_req]
keyUsage = critical, digitalSignature, keyAgreement
extendedKeyUsage = serverAuth
subjectAltName = @alt_names
[ alt_names ]
DNS.1 = www.network.cn
DNS.2 = *.network.cn
IP.1 = 192.168.6.106
1.3、执行req命令
如果私钥不需要口令,则增加参数-nodes
openssl req -x509 -days 365 -newkey rsa:2048 -keyout ng_server_key.key -out ng_server_crt.crt -config req.cnf -sha256
备注:配置nginx时需要该口令
二、nginx配置证书
server {
# 设置端口开启ssl
listen 443 ssl;
# 存放私钥口令的文件
ssl_password_file ssl_pwd;
# 证书
ssl_certificate ng_server_crt.crt;
# 密钥
ssl_certificate_key ng_server_key.key;
......
}
重启nginx,查看效果
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhgeggia
系列文章
更多
同类精品
更多
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01 -
怎样阻止微信小程序自动打开
PHP中文网 06-13