香港站群服务器如何启用 HTTPS 配置免费SSL 证书

香港站群服务器上启用 HTTPS 并配置免费的 SSL 证书 是保障网站安全的重要步骤。通过启用 HTTPS,可以加密与用户之间的通信,防止数据被窃取或篡改。


1. 准备工作

在开始配置之前,请确保以下条件:

  1. 域名解析

    • 确保你的域名已正确解析到服务器的 IP 地址(A 记录或 CNAME 记录)。
    • 可通过以下命令验证:
      bash
       
      ping yourdomain.com
      
    • 如果是站群服务器,请确保每个域名都已设置正确的解析记录。
  2. 开放端口

    • 确保服务器开放了以下端口:
      • 80(HTTP):用于证书验证。
      • 443(HTTPS):用于加密通信。
    • 检查并开放端口(以 ufw 为例):
      bash
       
      sudo ufw allow 80
      sudo ufw allow 443
      sudo ufw reload
      
  3. 安装 Web 服务器

    • 你的服务器需要运行一个 Web 服务器,如 ApacheNginx

2. 安装 Certbot(Let's Encrypt 客户端)

2.1 什么是 Certbot?

Certbot 是 Let's Encrypt 推荐的工具,用于自动申请、安装和续期 SSL 证书。

2.2 安装 Certbot

根据你的操作系统和 Web 服务器安装 Certbot。

CentOS/RHEL 系列

  1. 启用 EPEL 仓库:
    bash
     
    sudo yum install epel-release -y
    
  2. 安装 Certbot:
    • 对于 Apache:
      bash
       
      sudo yum install certbot python3-certbot-apache -y
      
    • 对于 Nginx:
      bash
       
      sudo yum install certbot python3-certbot-nginx -y
      

Ubuntu/Debian 系列

  1. 更新软件包:
    bash
     
    sudo apt update
    
  2. 安装 Certbot:
    • 对于 Apache:
      bash
       
      sudo apt install certbot python3-certbot-apache -y
      
    • 对于 Nginx:
      bash
       
      sudo apt install certbot python3-certbot-nginx -y
      

其他安装方式

如果你的系统不支持上述方法,可以通过 Snap 安装 Certbot:

bash
 
sudo snap install core
sudo snap install --classic certbot

3. 申请并安装免费的 SSL 证书

3.1 配置 Apache 或 Nginx

Apache

  1. 确保启用了 HTTPS 模块:

    bash
     
    sudo a2enmod ssl
    sudo systemctl restart apache2
    
  2. 测试 Apache 是否正常工作:

    bash
     
    sudo apachectl configtest
    

Nginx

  1. 确保 Nginx 配置文件包含正确的 server 部分:

    • 文件路径通常位于 /etc/nginx/sites-available/yourdomain.com/etc/nginx/conf.d/yourdomain.com.conf
    • 确认包含以下内容:
      plaintext
       
      server {
          listen 80;
          server_name yourdomain.com www.yourdomain.com;
      
          root /var/www/yourdomain.com;
          index index.html;
      }
      
  2. 测试 Nginx 配置:

    bash
     
    sudo nginx -t
    
  3. 重启 Nginx 服务:

    bash
     
    sudo systemctl restart nginx
    

3.2 使用 Certbot 自动申请并配置 SSL

Apache

运行以下命令申请并安装证书:

bash
 
sudo certbot --apache
  • Certbot 会提示输入相关信息,如:
    1. 选择需要启用 HTTPS 的域名。
    2. 是否自动将 HTTP 重定向到 HTTPS(建议选择 2,启用自动重定向)。

Nginx

运行以下命令申请并配置证书:

bash
 
sudo certbot --nginx
  • Certbot 会自动检测 Nginx 配置,并引导你完成证书的申请和安装。

通用方法(手动模式)

如果 Certbot 无法自动配置,可手动申请证书:

  1. 运行以下命令申请证书:

    bash
     
    sudo certbot certonly --standalone -d yourdomain.com -d www.yourdomain.com
    
  2. Certbot 会在 /etc/letsencrypt/live/yourdomain.com/ 生成证书文件:

    • fullchain.pem:证书文件。
    • privkey.pem:私钥文件。
  3. 编辑 Web 服务器配置文件,手动添加证书路径:

    • Apache
      plaintext
       
      <VirtualHost *:443>
          ServerName yourdomain.com
          DocumentRoot /var/www/yourdomain.com
      
          SSLEngine on
          SSLCertificateFile /etc/letsencrypt/live/yourdomain.com/fullchain.pem
          SSLCertificateKeyFile /etc/letsencrypt/live/yourdomain.com/privkey.pem
      </VirtualHost>
      
    • Nginx
      plaintext
       
      server {
          listen 443 ssl;
          server_name yourdomain.com www.yourdomain.com;
      
          ssl_certificate /etc/letsencrypt/live/yourdomain.com/fullchain.pem;
          ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem;
      
          root /var/www/yourdomain.com;
          index index.html;
      }
      
  4. 重启 Web 服务:

    bash
     
    sudo systemctl restart apache2    # Apache
    sudo systemctl restart nginx      # Nginx
    

4. 自动化 SSL 证书续期

Let's Encrypt 的证书有效期为 90 天,但 Certbot 提供了自动续期功能。

  1. 测试自动续期:

    bash
     
    sudo certbot renew --dry-run
    

    如果没有错误,则表示自动续期配置正常。

  2. 配置定时任务(如果未自动生成):

    • 编辑 crontab 文件:
      bash
       
      sudo crontab -e
      
    • 添加以下内容,每天检查续期:
      plaintext
       
      0 3 * * * certbot renew --quiet
      

5. 配置 HTTP 到 HTTPS 的重定向

为确保所有流量都通过 HTTPS 加密,可以配置 HTTP 到 HTTPS 的自动重定向。

Apache

Certbot 会自动创建重定向规则。如果未启用,可手动添加:

plaintext
 
<VirtualHost *:80>
    ServerName yourdomain.com
    Redirect permanent / https://yourdomain.com/
</VirtualHost>

重启 Apache:

bash
 
sudo systemctl restart apache2

Nginx

在 HTTP 的 server 块中添加以下内容:

plaintext
 
server {
    listen 80;
    server_name yourdomain.com www.yourdomain.com;

    return 301 https://$host$request_uri;
}

重启 Nginx:

bash
 
sudo systemctl restart nginx

6. 测试 HTTPS 配置

  1. 使用浏览器访问 https://yourdomain.com 查看是否正常加载。
  2. 使用 SSL Labs 测试证书配置是否安全:

7. 总结

在香港站群服务器上启用 HTTPS 并配置免费的 SSL 证书需要以下步骤:

  1. 确保域名解析正确,并开放 80 和 443 端口。
  2. 安装 Certbot 并申请免费的 Let's Encrypt SSL 证书。
  3. 自动配置或手动安装证书,并启用 HTTPS。
  4. 配置自动续期和 HTTP 到 HTTPS 的重定向。
  5. 测试 HTTPS 配置安全性。

 

通过这些步骤,你可以为香港站群服务器的多个域名快速启用 HTTPS,提升网站的安全性和用户信任度。

超过 50,000 人的信任 网硕互联期待你加入我们的会员。