如何在 CentOS 7 Linode 上安装 PositiveSSL 证书

目录

  1. 前言
  2. 准备工作
  3. 下载并安装 PositiveSSL 证书
  4. 配置 Nginx 服务器
  5. 测试 HTTPS 连接
  6. FAQ

前言

在运营一个网站时,为了确保网站访问的安全性和可信度,通常需要为网站安装 SSL/TLS 证书。本文将详细介绍如何在 CentOS 7 Linode 服务器上安装 PositiveSSL 证书的过程。

PositiveSSL 是 Comodo 提供的一种经济型 SSL 证书,适用于个人网站和中小企业网站。

准备工作

在开始安装 PositiveSSL 证书之前,您需要准备好以下内容:

  • 一个 CentOS 7 Linode 服务器,并确保服务器可以正常访问互联网
  • 一个已经注册的域名,并将其 DNS 解析指向 Linode 服务器
  • Linode 账户和 API 密钥,用于管理 Linode 服务器

下载并安装 PositiveSSL 证书

生成 CSR 文件

  1. 登录 Linode 管理控制台,进入 Networking > Domains 页面,选择您的域名并记下 Nameservers 信息。

  2. 通过 SSH 连接到您的 CentOS 7 Linode 服务器。

  3. 运行以下命令生成 CSR 文件:

    bash openssl req -new -newkey rsa:2048 -nodes -keyout example.com.key -out example.com.csr

    在命令执行过程中,系统会提示您输入一些信息,请根据您的实际情况填写。

提交 CSR 并下载证书

  1. 登录 Positive SSL 官网,选择 Order PositiveSSL 并按照提示完成证书订购流程。
  2. Certificate Signing Request (CSR) 步骤中,将之前生成的 CSR 文件内容粘贴进去。
  3. 完成订购后,Positive SSL 会向您发送一封电子邮件,其中包含了您的 SSL 证书文件。请下载这些证书文件。

上传证书到 Linode

  1. 登录 Linode 管理控制台,进入 Networking > Domains 页面,选择您的域名。
  2. TLS/SSL 选项卡中,点击 Add a TLS/SSL Certificate
  3. Certificate 字段中,粘贴您从 Positive SSL 下载的证书文件内容。
  4. Private Key 字段中,粘贴之前生成的 example.com.key 文件内容。
  5. 点击 Save Changes 完成证书上传。

配置 Nginx 服务器

  1. 通过 SSH 连接到您的 CentOS 7 Linode 服务器。

  2. 编辑 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 替换为您的实际域名。

  3. 保存配置文件并重启 Nginx 服务:

    bash systemctl restart nginx

测试 HTTPS 连接

  1. 在浏览器中访问 https://example.com,确保网站能够正常通过 HTTPS 协议访问。
  2. 检查浏览器的安全指示符,确保显示为绿色或其他安全标识,表示 SSL/TLS 证书已经正确安装。

FAQ

Q1: 如何验证 SSL 证书的安装是否成功?

A1: 您可以使用在线 SSL 检查工具,如 SSL LabsGoogle 的 SSL 检查工具来测试您的 SSL 证书配置是否正确。这些工具会对您的 SSL 证书进行全面的检查,并给出详细的评估报告。

Q2: 如何更新 PositiveSSL 证书?

A2: PositiveSSL 证书通常有效期为 1 年,到期前您需要更新证书。更新证书的步骤与初次安装类似:

  1. 登录 Linode 管理控制台,进入 Networking > Domains 页面,选择您的域名。
  2. TLS/SSL 选项卡中,点击 Renew Certificate
  3. 按照提示完成证书更新流程,包括生成新的 CSR 文件、提交 CSR 并下载新的证书文件。
  4. 最后,将新的证书文件上传到 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 协议访问您的网站,包括子域名。

正文完