赞
踩
目录
阅读本文前您需要学会如何安装Nginx, 如果您还不会安装Nginx请参考CentOS7安装Nginx,或者直接关注本栏目Nginx。
如果是在Windows下,请先安装OpenSSL
官网地址:https://slproweb.com/products/Win32OpenSSL.html
第一步是生成私钥(key),以下命令用于生成一个包含 1024 比特长度的 RSA 密钥的私钥文件。生成的私钥存储在 server.key 文件中。
Linux下命令为
openssl genrsa -des3 -out server.key 1024
Windows下命令为
openssl.exe genrsa -des3 -out d:/linux/server.key 1024
命令参数解释:
genrsa: 是 OpenSSL 命令的子命令,用于生成 RSA 密钥对。
-des3: 指定了使用 Triple DES 算法对生成的私钥进行加密。这样生成的私钥将会被一个密码保护。
-out server.key: 指定生成的私钥文件的输出路径和文件名为 server.key。
1024: 指定生成的 RSA 密钥的长度为 1024 比特。
第二步是用使用已有的私钥 (server.key) 生成证书签名请求 /公钥(CSR),该 CSR 包含了对应私钥的公钥和与该公钥关联的其他信息,用于申请数字证书。
Linux下命令为
openssl req -new -key server.key -out server.csr
Windows下命令为
openssl.exe req -new -key d:/linux/server.key -out d:/linux/server.csr
命令参数解释:
req: 这是 OpenSSL 命令的子命令,用于处理证书请求。
-new: 指定生成一个新的证书请求。
-key server.key: 指定使用 server.key 中的私钥来生成 CSR。
-out server.csr: 指定生成的证书签名请求 (CSR) 文件的输出路径和文件名为 server.csr。
在生成公钥的过程中需要填写的信息如下:
生成成功后可以使用以下命令查看公钥信息:
openssl.exe req -text -in d:/linux/server.csr
第三步是对签名请求(公钥CSR)进行签名生成证书。如果上线产品这个时候应该提交资料到受信任的证书颁发机构 (CA) ,提交 CSR 以获得由 CA 签名的证书。这里为了演示我们创建一个自签名的服务器证书来测试。以下自签名(Self-Signed) X.509 数字证书的命令。
Linux下命令为
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
Windows下命令为
openssl.exe x509 -req -days 365 -in d:/linux/server.csr -signkey d:/linux/server.key -out d:/linux/server.crt
命令参数解释:
x509: 这是 OpenSSL 命令的子命令,用于操作 X.509 数字证书。
-req: 表示输入的文件是一个证书签名请求 (CSR)。
-days 365: 指定证书的有效期为 365 天(1年)。
-in server.csr: 指定输入的证书签名请求文件为 server.csr。
-signkey server.key: 指定用于签名证书的私钥文件为 server.key。
-out server.crt: 指定生成的自签名证书文件的输出路径和文件名为 server.crt。
这个命令的作用是使用私钥 (server.key) 对证书签名请求 (CSR) 进行签名,生成一个自签名的 X.509 数字证书 (server.crt)。这样就得到了一个可以用于安全通信的服务器证书,该证书在签发后的 365 天内有效。
第四步是在nginx的服务配置 nginx.conf的虚拟主机(server)的SSL信息。监听443端口,并指定自签名证书server.crt和自己的私钥server.key。
- server {
- listen 443 ssl;
- server_name localhost;
-
- ssl_certificate /usr/local/tengine/server.crt;
- ssl_certificate_key /usr/local/tengine/server.key;
- }
配置完成后就可以在浏览顺输入HTTPS地址进行访问了。
https://nginx-ip
注意nginx-ip是指你nginx服务器的IP地址。
由于我们使用的自签名证书,测试时浏览器可能会阻止,您需要手动允许,如下图。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。