Cloudflare SSL 证书在自建节点中的正确安装方式

2025.11.10 杂七杂八 1168
33BLOG智能摘要
你的网站真的安全吗?90%的站长都忽略了这个致命漏洞——只配置了Cloudflare到用户的加密,却让源站到Cloudflare的连接处于“裸奔”状态。这不仅会引发各种奇怪的连接错误,更让你的数据在传输过程中面临风险。本文将手把手教你如何正确安装Cloudflare SSL证书到自建节点,从获取15年有效期证书到Nginx/Apache详细配置,再到防火墙安全加固,每一步都有实操代码和踩坑提醒。避开那些让老手都头疼的证书陷阱,只需15分钟就能建立真正端到端的安全连接。
— 此摘要由33BLOG基于AI分析文章内容生成,仅供参考。

Cloudflare SSL 证书在自建节点中的正确安装方式

为什么需要在自建节点安装 Cloudflare 证书

Cloudflare SSL 证书在自建节点中的正确安装方式

作为一名长期使用 Cloudflare 的站长,我发现很多人在使用 Cloudflare 代理时,只配置了源站到 Cloudflare 的加密,却忽略了 Cloudflare 到自建节点之间的安全连接。实际上,完整配置 SSL 证书不仅能提升安全性,还能避免各种奇怪的连接问题。今天我就来分享如何正确安装 Cloudflare 证书到自建节点。

准备工作:获取证书文件

首先登录 Cloudflare 控制台,进入你的域名设置。在 SSL/TLS 选项卡中找到”源服务器”部分,点击”创建证书”。这里我建议选择15年有效期的证书,毕竟谁都不想频繁更新证书对吧?

生成证书后,你会得到两个文件:

# 证书文件(通常以 .pem 结尾)
# 私钥文件(通常以 .key 结尾)

Nginx 配置实战

以我最常用的 Nginx 为例,配置过程其实很简单。将下载的证书和私钥上传到服务器,我习惯放在 /etc/ssl/ 目录下:

# 创建证书目录
sudo mkdir -p /etc/ssl/cloudflare/
# 上传证书文件到该目录

接着修改 Nginx 配置文件:

server {
    listen 443 ssl;
    server_name yourdomain.com;
    
    ssl_certificate /etc/ssl/cloudflare/your_cert.pem;
    ssl_certificate_key /etc/ssl/cloudflare/your_private.key;
    
    # 其他配置...
}

这里有个坑要特别注意:Cloudflare 提供的证书是包含中间证书的,所以不需要额外配置证书链。我之前就因为这个折腾了好久!

Apache 配置要点

如果你使用的是 Apache,配置也大同小异:

<VirtualHost *:443>
    SSLEngine on
    SSLCertificateFile /etc/ssl/cloudflare/your_cert.pem
    SSLCertificateKeyFile /etc/ssl/cloudflare/your_private.key
    # 其他配置...
</VirtualHost>

验证配置与排错

配置完成后,记得测试配置并重启服务:

# Nginx 配置测试
sudo nginx -t

# Apache 配置测试
sudo apache2ctl configtest

# 重启服务
sudo systemctl restart nginx  # 或 apache2

我强烈建议使用 SSL 检测工具验证配置,比如 SSL Labs 的 SSL Test。如果遇到证书错误,检查以下几点:

  • 证书文件路径是否正确
  • 文件权限是否设置正确(私钥应该只有 root 可读)
  • 时间同步是否正确(证书验证依赖正确的时间)

防火墙与安全加固

最后,别忘了配置防火墙,只允许 Cloudflare 的 IP 访问你的源站。这是我用 iptables 的配置:

# 只允许 Cloudflare IP 访问 443 端口
iptables -A INPUT -p tcp --dport 443 -s 173.245.48.0/20 -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -j DROP

经过这样完整的配置,你的自建节点就与 Cloudflare 建立了安全的端到端加密连接。记得定期检查证书有效期,虽然15年很长,但设置个提醒总没错。希望这篇教程能帮你避开我踩过的那些坑!

评论