新网互联获取的ssl证书,手动配置nginx使用的ssl格式(以及nginx和apache证书区别)
[ 2024-12-02 14:53:10 | 作者: admin ]
p.s. 现在都是3个月的免费证书,新网互联有便宜的ssl证书,但是生成的证书里面没有像其他平台一样自动生成nginx使用的证书文件,需要手动修改下。
我们知道一般申请证书的过程涉及到4个证书文件:
1、blog.xg98.com.csr 证书签名申请
2、blog.xg98.com.key 私钥
3、blog.xg98.com.crt 签发的用户证书,点击证书能看到用户信息和有效期
4、root_bundle.crt 证书链(中间证书)
nginx需要提供2个证书文件:一个key文件,一个crt文件(合并用户证书和中间证书)
apache需要提供3个证书文件:一个key文件,一个用户证书文件,一个中间证书(也就是证书链文件root_bundle.crt)
所以nginx和apache的证书区别是,nginx把用户证书和中间证书合并为一个了
通过 CSR 在线生成工具 https://myssl.com/csr_create.html ,我们能获取到CSR文件(证书请求文件)和KEY文件(密钥文件)
然后新网互联后台能提供3个证书文件 root 根证书 , intermediate 中间证书, end-entity 最终实体CA证书
只要将CA证书和中间证书合并就可以生成nginx需要的证书文件,后缀一般用pem或者crt。
最终得到nginx可以使用的证书文件 blog.xg98.com.key 和自己合并的 blog.xg98.com.crt
nginx下ssl证书配置范例
apache部署ssl证书演示代码
参考:
分析一下,nginx上配置ssl时的pem证书
https://blog.csdn.net/adminstate/article/details/135925800
评论Feed: http://blog.xg98.com/feed.asp?q=comment&id=2989
我们知道一般申请证书的过程涉及到4个证书文件:
1、blog.xg98.com.csr 证书签名申请
2、blog.xg98.com.key 私钥
3、blog.xg98.com.crt 签发的用户证书,点击证书能看到用户信息和有效期
4、root_bundle.crt 证书链(中间证书)
nginx需要提供2个证书文件:一个key文件,一个crt文件(合并用户证书和中间证书)
apache需要提供3个证书文件:一个key文件,一个用户证书文件,一个中间证书(也就是证书链文件root_bundle.crt)
所以nginx和apache的证书区别是,nginx把用户证书和中间证书合并为一个了
通过 CSR 在线生成工具 https://myssl.com/csr_create.html ,我们能获取到CSR文件(证书请求文件)和KEY文件(密钥文件)
然后新网互联后台能提供3个证书文件 root 根证书 , intermediate 中间证书, end-entity 最终实体CA证书
blog.xg98.com_ca.crt (最终实体CA证书,证书有时间限制,也就是用户证书,放服务器端,访问会下载)
blog.xg98.com_intermediatec.crt (中间证书,放服务器端,访问会下载)
blog.xg98.com_root.crt (根证书,一般浏览器都已默认安装,nginx不需要放到服务器,不过apache需要配置)
blog.xg98.com_intermediatec.crt (中间证书,放服务器端,访问会下载)
blog.xg98.com_root.crt (根证书,一般浏览器都已默认安装,nginx不需要放到服务器,不过apache需要配置)
只要将CA证书和中间证书合并就可以生成nginx需要的证书文件,后缀一般用pem或者crt。
最终得到nginx可以使用的证书文件 blog.xg98.com.key 和自己合并的 blog.xg98.com.crt
nginx下ssl证书配置范例
server {
#SSL 默认访问端口号为 443
listen 443 ssl;
#请填写绑定证书的域名
server_name blog.xg98.com;
#请填写证书文件的相对路径或绝对路径
ssl_certificate blog.xg98.com.crt;
#请填写私钥文件的相对路径或绝对路径
ssl_certificate_key blog.xg98.com.key;
ssl_session_timeout 5m;
#请按照以下协议配置
ssl_protocols TLSv1.2 TLSv1.3;
#请按照以下套件配置,配置加密套件,写法遵循 openssl 标准。
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
ssl_prefer_server_ciphers on;
location / {
#网站主页路径。此路径仅供参考,具体请您按照实际目录操作。
#例如,您的网站主页在 Nginx 服务器的 /etc/www 目录下,则请修改 root 后面的 html 为 /etc/www。
root html;
index index.html index.htm;
}
}
#SSL 默认访问端口号为 443
listen 443 ssl;
#请填写绑定证书的域名
server_name blog.xg98.com;
#请填写证书文件的相对路径或绝对路径
ssl_certificate blog.xg98.com.crt;
#请填写私钥文件的相对路径或绝对路径
ssl_certificate_key blog.xg98.com.key;
ssl_session_timeout 5m;
#请按照以下协议配置
ssl_protocols TLSv1.2 TLSv1.3;
#请按照以下套件配置,配置加密套件,写法遵循 openssl 标准。
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
ssl_prefer_server_ciphers on;
location / {
#网站主页路径。此路径仅供参考,具体请您按照实际目录操作。
#例如,您的网站主页在 Nginx 服务器的 /etc/www 目录下,则请修改 root 后面的 html 为 /etc/www。
root html;
index index.html index.htm;
}
}
apache部署ssl证书演示代码
<VirtualHost 0.0.0.0:443>
DocumentRoot "/var/www/html"
#填写证书名称
ServerName cloud.tencent.com
#启用 SSL 功能
SSLEngine on
#证书文件的路径(用户证书)
SSLCertificateFile /etc/httpd/ssl/cloud.tencent.com.crt
#私钥文件的路径
SSLCertificateKeyFile /etc/httpd/ssl/cloud.tencent.com.key
#证书链文件的路径(中间证书)
SSLCertificateChainFile /etc/httpd/ssl/root_bundle.crt
</VirtualHost>
DocumentRoot "/var/www/html"
#填写证书名称
ServerName cloud.tencent.com
#启用 SSL 功能
SSLEngine on
#证书文件的路径(用户证书)
SSLCertificateFile /etc/httpd/ssl/cloud.tencent.com.crt
#私钥文件的路径
SSLCertificateKeyFile /etc/httpd/ssl/cloud.tencent.com.key
#证书链文件的路径(中间证书)
SSLCertificateChainFile /etc/httpd/ssl/root_bundle.crt
</VirtualHost>
参考:
分析一下,nginx上配置ssl时的pem证书
https://blog.csdn.net/adminstate/article/details/135925800
[最后修改由 admin, 于 2024-12-11 16:37:09]

这篇日志没有评论。
此日志不可发表评论。