目录
前言
在运营一个网站时,为了确保网站访问的安全性和可信度,通常需要为网站安装 SSL/TLS 证书。本文将详细介绍如何在 CentOS 7 Linode 服务器上安装 PositiveSSL 证书的过程。
PositiveSSL 是 Comodo 提供的一种经济型 SSL 证书,适用于个人网站和中小企业网站。
准备工作
在开始安装 PositiveSSL 证书之前,您需要准备好以下内容:
- 一个 CentOS 7 Linode 服务器,并确保服务器可以正常访问互联网
- 一个已经注册的域名,并将其 DNS 解析指向 Linode 服务器
- Linode 账户和 API 密钥,用于管理 Linode 服务器
下载并安装 PositiveSSL 证书
生成 CSR 文件
-
登录 Linode 管理控制台,进入 Networking > Domains 页面,选择您的域名并记下 Nameservers 信息。
-
通过 SSH 连接到您的 CentOS 7 Linode 服务器。
-
运行以下命令生成 CSR 文件:
bash openssl req -new -newkey rsa:2048 -nodes -keyout example.com.key -out example.com.csr
在命令执行过程中,系统会提示您输入一些信息,请根据您的实际情况填写。
提交 CSR 并下载证书
- 登录 Positive SSL 官网,选择 Order PositiveSSL 并按照提示完成证书订购流程。
- 在 Certificate Signing Request (CSR) 步骤中,将之前生成的 CSR 文件内容粘贴进去。
- 完成订购后,Positive SSL 会向您发送一封电子邮件,其中包含了您的 SSL 证书文件。请下载这些证书文件。
上传证书到 Linode
- 登录 Linode 管理控制台,进入 Networking > Domains 页面,选择您的域名。
- 在 TLS/SSL 选项卡中,点击 Add a TLS/SSL Certificate。
- 在 Certificate 字段中,粘贴您从 Positive SSL 下载的证书文件内容。
- 在 Private Key 字段中,粘贴之前生成的
example.com.key
文件内容。 - 点击 Save Changes 完成证书上传。
配置 Nginx 服务器
-
通过 SSH 连接到您的 CentOS 7 Linode 服务器。
-
编辑 Nginx 配置文件
/etc/nginx/conf.d/example.com.conf
,添加以下内容:nginx server { listen 80; server_name example.com www.example.com; return 301 https://$server_name$request_uri; }
server { listen 443 ssl; server_name example.com www.example.com;
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_protocols TLSv1.2 TLSv1.3; ssl_ciphers ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256; ssl_prefer_server_ciphers on; location / { root /usr/share/nginx/html; index index.html index.htm; }
}
请将
example.com
替换为您的实际域名。 -
保存配置文件并重启 Nginx 服务:
bash systemctl restart nginx
测试 HTTPS 连接
- 在浏览器中访问
https://example.com
,确保网站能够正常通过 HTTPS 协议访问。 - 检查浏览器的安全指示符,确保显示为绿色或其他安全标识,表示 SSL/TLS 证书已经正确安装。
FAQ
Q1: 如何验证 SSL 证书的安装是否成功?
A1: 您可以使用在线 SSL 检查工具,如 SSL Labs 或 Google 的 SSL 检查工具来测试您的 SSL 证书配置是否正确。这些工具会对您的 SSL 证书进行全面的检查,并给出详细的评估报告。
Q2: 如何更新 PositiveSSL 证书?
A2: PositiveSSL 证书通常有效期为 1 年,到期前您需要更新证书。更新证书的步骤与初次安装类似:
- 登录 Linode 管理控制台,进入 Networking > Domains 页面,选择您的域名。
- 在 TLS/SSL 选项卡中,点击 Renew Certificate。
- 按照提示完成证书更新流程,包括生成新的 CSR 文件、提交 CSR 并下载新的证书文件。
- 最后,将新的证书文件上传到 Linode 并更新 Nginx 配置文件。
Q3: 如何配置 Nginx 支持 HTTP/2 协议?
A3: 要在 Nginx 上启用 HTTP/2 协议支持,可以在 Nginx 配置文件中添加以下配置:
nginx server { listen 443 ssl http2; # 其他配置}
确保您的 SSL 证书和服务器配置支持 HTTP/2 协议后,即可生效。
Q4: 如何配置 Nginx 开启 HSTS 功能?
A4: HSTS(HTTP Strict Transport Security)是一种安全机制,可以强制浏览器通过 HTTPS 协议访问网站。您可以在 Nginx 配置文件中添加以下配置开启 HSTS 功能:
nginx server { # 其他配置 add_header Strict-Transport-Security “max-age=31536000; includeSubDomains” always;}
这将告诉浏览器在接下来的一年内(31536000 秒)只能通过 HTTPS 协议访问您的网站,包括子域名。