Nginx 服务器 SSL 证书安装部署
创始人
2025-01-20 20:34:02
0

操作场景

本文档指导您如何在 Nginx 服务器中安装 SSL 证书。

说明

本文档以证书名称 xxx为例。

Nginx 版本以 nginx/1.18.0 为例。

当前服务器的操作系统为 CentOS 7,由于操作系统的版本不同,详细操作步骤略有区别。

安装 SSL 证书前,请您在 Nginx 服务器上开启 HTTPS 默认端口 443,避免证书安装后无法启用 HTTPS。具体可参考 服务器如何开启443端口?

SSL 证书文件上传至服务器方法可参考 如何将本地文件拷贝到云服务器。

前提条件

已准备文件远程拷贝软件,例如 WinSCP(建议从官方网站获取最新版本)。 若您需部署到腾讯云云服务器,建议使用云服务器的文件上传功能。

已准备远程登录工具,例如 PuTTY 或者 Xshell(建议从官方网站获取最新版本)。

已在当前服务器中安装配置含有 http_ssl_module 模块的 Nginx 服务。

安装 SSL 证书前需准备的数据如下:

说明

在腾讯云官网购买的云服务器,您可以登录 云服务器控制台  获取服务器 IP 地址、用户名及密码。

操作步骤

证书安装

1. 请在 SSL证书管理控制台中选择您需要安装的证书并单击下载

2. 在弹出的 “证书下载” 窗口中,服务器类型选择 Nginx,单击下载并解压缩 xxx证书文件包到本地目录。 解压缩后,可获得相关类型的证书文件。其中包含xxx_nginx 文件夹:

文件夹名称xxx_nginx

文件夹内容

xxx.com_bundle.crt 证书文件

xxx.com_bundle.pem 证书文件(可忽略该文件)

xxx.com.key 私钥文件

xxx.com.csr CSR 文件

3、使用 “WinSCP”(即本地与远程计算机间的复制文件工具)登录 Nginx 服务器。

说明

WinSCP 上传文件操作可参考 通过 WinSCP 上传文件到 Linux 云服务器。

若您需部署到腾讯云云服务器,建议使用云服务器的文件上传功能。详情请参见 上传文件到云服务器。

4、将已获取到的 xxx_bundle.crt 证书文件和 xxx.key 私钥文件从本地目录拷贝到 Nginx 服务器的 /etc/nginx 目录(此处为 Nginx 默认安装目录,请根据实际情况操作)下。

5. 远程登录 Nginx 服务器。例如,使用"PuTTY"工具 登录。

6. 编辑 Nginx 根目录下的 nginx.conf 文件。修改内容如下:

server {     #SSL 默认访问端口号为 443     listen 443 ssl;      #请填写绑定证书的域名     server_name xxx;      #请填写证书文件的相对路径或绝对路径     ssl_certificate xxx_bundle.crt;      #请填写私钥文件的相对路径或绝对路径     ssl_certificate_key xxx.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;     } }

7、通过执行以下命令验证配置文件问题。

nginx -t

若存在,请您重新配置或者根据提示修改存在问题。

若不存在,请执行 步骤8。

8. 通过执行以下命令重载 Nginx。

nginx -s reload

9、重载成功,即可使用 https://xxx进行访问。

HTTP 自动跳转 HTTPS 的安全配置(可选

如果您需要将 HTTP 请求自动重定向到 HTTPS。您可以通过以下操作设置:

1. 根据实际需求,选择以下配置方式:

在页面中添加 JS 脚本。

在后端程序中添加重定向。

通过 Web 服务器实现跳转。

Nginx 支持 rewrite 功能。若您在编译时没有去掉 pcre,您可在 HTTP 的 server 中增加 return 301 https://$host$request_uri;,即可将默认80端口的请求重定向为 HTTPS。修改如下内容:

server { #SSL 默认访问端口号为 443 listen 443 ssl; #请填写绑定证书的域名 server_name xxx;  #请填写证书文件的相对路径或绝对路径 ssl_certificate  xxx_bundle.crt;  #请填写私钥文件的相对路径或绝对路径 ssl_certificate_key xxx.key;  ssl_session_timeout 5m; #请按照以下套件配置,配置加密套件,写法遵循 openssl 标准。 ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; #请按照以下协议配置 ssl_protocols TLSv1.2 TLSv1.3; ssl_prefer_server_ciphers on; location / {   #网站主页路径。此路径仅供参考,具体请您按照实际目录操作。    #例如,您的网站主页在 Nginx 服务器的 /etc/www 目录下,则请修改 root 后面的 html 为 /etc/www。   root html;   index index.html index.htm; }}server { listen 80; #请填写绑定证书的域名 server_name xxx.com;  #把http的域名请求转成https return 301 https://$host$request_uri; }

2、通过执行以下命令验证配置文件问题。

nginx -t

若存在,请您重新配置或者根据提示修改存在问题。

若不存在,请执行 步骤3。

3、通过执行以下命令重载 Nginx。

nginx -s reload

重载成功,即可使用 https://xxx 进行访问。

如果浏览器地址栏显示安全锁标识,则说明证书安装成功。如下图所示:

相关内容

热门资讯

攻略辅助!德州私人局怎么透视,... 攻略辅助!德州私人局怎么透视,wejoker辅助软件视频,解迷教程(竟然有挂)该软件可以轻松地帮助玩...
必知教程!微乐小程序黑科技,7... 必知教程!微乐小程序黑科技,789大菠萝可以控制吗,积累教程(真的有挂)1、上手简单,内置详细流程视...
步骤辅助!竞技联盟破解版最新版... 步骤辅助!竞技联盟破解版最新版,hhpoker免费透视脚本,推荐教程(发现有挂)1、让任何用户在无需...
分享给玩家!创思维激k辅助工具... 分享给玩家!创思维激k辅助工具,约局吧辅助器,讲义教程(有挂总结)该软件可以轻松地帮助玩家将创思维激...
妙招辅助!德扑之心免费透视,w... 妙招辅助!德扑之心免费透视,wepoker怎么开辅助,辅助教程(有挂工具)1、玩家可以在德扑之心免费...
玩家必备教程!皮皮游戏辅助平台... 玩家必备教程!皮皮游戏辅助平台,朱雀开心罗松怎么开挂,资料教程(有挂透视)1、皮皮游戏辅助平台脚本辅...
总结辅助!hhpoker是正品... 总结辅助!hhpoker是正品吗,aapoker透视怎么用,解谜教程(有挂实锤)1)aapoker透...
今日重大通报!微信广东雀神挂件... 今日重大通报!微信广东雀神挂件辅助,随意玩辅助器,指南教程(有挂教学)1.微信广东雀神挂件辅助 选牌...
资料辅助!wepoker有辅助... 资料辅助!wepoker有辅助工具吗,wepoker软件安装包,教你教程(竟然有挂)小薇(辅助器软件...
实测分享!广西友乐免费辅助,新... 实测分享!广西友乐免费辅助,新荣耀辅助软件,指南书教程(有挂规律)1、玩家可以在广西友乐免费辅助透视...