腾讯云 Nginx 服务器 SSL 证书安装部署(Linux)

看起来大家庭关注这个,刚发了一个《Nginx 服务器 SSL 证书安装部署(Windows)》,点击量还挺高,那就再发一个linux下的过程吧。希望能对大家有所帮助。

照例,先放官方废话:

说明

1、本文档以证书名称 cloud.tencent.com 为例。

2、Nginx 版本以 nginx/1.18.0 为例。

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

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

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

这里需要说一下注意事项。说明里面443端口是在linux防火墙里面开的,但是需要注意的是要开放防火墙的话一定要同时开放SSH,也就是在防火墙配置文件里面同时写上SSH的端口,否则你用XShell这些远程工具连服务器的时候,你就会哭了。

第一步,当然是安装nginx了。

其实在线安装nginx比较方便,大家自然可以去查,但是在线安装nginx在有些系统上他就是出各种各样的幺蛾子,所以我在这里主张离线安装了。

用xshell创建个目录usr/local/java,然后给这个文件夹赋权,这就不详细说了,自己去查xshell和linux的操作就好了。

然后用xshell带的文件上传工具把下载的nginx-1.9.9.tar.gz 放在这个目录下。具体版本自己根据需要自己去nginx官网上找找。ngxin下载地址:nginx news

然后解压

tar -zxvf nginx-1.9.9.tar.gz

3、切换到cd /usr/local/java/nginx-1.9.9/下面执行命令:

./configure

make

makeinstall

然后等待安装完成就好了。

第二步,将ssl的文件通过xshell的上传工具放在nginx的根目录下。

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

第三步,配置nginx的配置文件nginx.conf:

如找不到以下内容,可以手动添加。可执行命令 nginx -t ,找到nginx的配置文件路径。

如下图示例:

此操作可通过执行 vim /etc/nginx/nginx.conf 命令行编辑该文件。

不过,我觉得linux的命令行编辑对新手来说很不友好,所以我喜欢在windows本机上编辑好了再传上去覆盖。

由于版本问题,配置文件可能存在不同的写法。例如:Nginx 版本为 nginx/1.15.0 以上请使用 listen 443 ssl 代替 listen 443ssl on

配置内容参考下面的内容:

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

第四部:验证和启动nginx

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

nginx -t

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

若不存在,请执行下面的步骤:

nginx -s reload

就是重新启动nginx。

重载成功,即可使用 https://cloud.tencent.com 进行访问。当然,还要看看你的防火墙是否开放正确。此外,还要看看云环境控制台上的安全组有没有开放相应端口。没开放都有可能会引起访问不到。

相关推荐
Clank的游戏栈1 小时前
Unity3D 服务器AStar寻路客户端位置同步显示验证详解
运维·服务器·windows
✞༒小郑同学༒✞1 小时前
网络通信流程
运维·服务器·网络
秋窗71 小时前
调用百度翻译API遇到的跨域问题解决方案
nginx·api·跨域
打鱼又晒网1 小时前
linux进程间通信——学习与应用命名管道, 日志程序的使用与实现
linux·运维·服务器·后端·操作系统
了不起的云计算V2 小时前
2024年H1昇腾服务器中标统计:宝德超聚变遥遥领先
服务器
APItesterCris2 小时前
安全第一:API 接口接入前的防护性注意要点
服务器·网络·数据库·安全·数据挖掘
Xiao Tong3332 小时前
linux第二课(docker的安装使用)
linux·运维·服务器
Shenqi Lotus2 小时前
??Nginx实现会话保持_Nginx会话保持与Redis的结合_Nginx实现四层负载均衡
运维·redis·nginx·负载均衡
JeasonTly2 小时前
WebRTC服务器搭建
运维·服务器·webrtc
MrGaomq5 小时前
Linux权限
linux·运维·服务器·c语言·数据结构·c++·动态规划