跳到主要内容

Cloudflare代理配置端口


Cloudflare代理配置端口

一、前提条件

  • 已有注册好的Cloudflare账号(免费即可)。
  • 已将你的域名成功接入Cloudflare(DNS已指向Cloudflare的Name Server)。

二、Cloudflare可用端口概述

Cloudflare 仅能代理特定的HTTP和HTTPS端口。常用端口总结如下:

协议 可用端口
HTTP 80, 8080, 8880, 2052, 2082, 2086, 2095
HTTPS 443, 8443, 2053, 2083, 2087, 2096

SSH、FTP 等非 HTTP 协议不能直接使用普通橙云代理;可按需求选择灰云直连、Cloudflare Tunnel 或 Spectrum,使用方式和套餐要求不同。


三、具体配置流程

以将服务器的8080端口通过Cloudflare实现域名访问为例:

① 服务器端准备

确保你的服务器端应用正常监听指定端口:

# 例如:测试8080端口是否开启
sudo netstat -tunlp | grep 8080

② Cloudflare DNS设置

添加DNS记录:

  • 点击 Add record(添加记录)。
  • 类型选择 A 或 CNAME:
    • 若为IP地址(例如服务器IP),选择A。
    • 若为其他域名,选择CNAME。

示例:

字段 示例值
Type A
Name example (即你希望访问的子域名)
IPv4 address 你的服务器IP
Proxy status 选择橙色云图标(✅代理)
  • 最终访问域名形式如:example.yourdomain.com

③ 服务端口访问说明

普通橙云代理不会自动把省略端口的请求映射到源站 8080:

  • 访问 http://example.yourdomain.com:8080,才是使用 8080 这个非默认 HTTP 端口。
  • 访问 http://example.yourdomain.com,浏览器默认请求 80;访问 HTTPS 时默认请求 443。
  • 如果希望 URL 不带端口而源站应用监听 8080,可以让源站 Nginx 在 80/443 接收请求并反向代理到 8080,或显式配置 Cloudflare Origin Rules 的回源端口覆盖。
用户访问 URL 本例源站入口
http://example.yourdomain.com:8080 8080/HTTP
https://example.yourdomain.com:8443 8443/HTTPS
https://example.yourdomain.com 443/HTTPS,除非另配了回源端口覆盖

四、HTTPS 配置

若你希望使用HTTPS访问:

  1. 到Cloudflare后台 → SSL/TLS 选项:
    • 优先设置为 Full (strict),同时验证源站证书。
  2. 使用 Full (strict) 时:
    • 服务器需要有效且域名匹配的证书,可以使用 Let’s Encrypt 或 Cloudflare Origin CA。

示例 Nginx 配置(Full (strict) 模式):

server {
    listen 8443 ssl; 
    server_name example.yourdomain.com;

    ssl_certificate     /path/to/cert.pem;
    ssl_certificate_key /path/to/key.pem;

    location / {
        proxy_pass http://localhost:8080;
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Real-IP $remote_addr;
    }
}
  • 此例访问地址是 https://example.yourdomain.com:8443:Cloudflare → 8443(HTTPS)→ Nginx → 8080(HTTP 内网服务)。若要省略端口,将 Nginx 的 listen 改为 443 ssl,或另行配置回源端口覆盖。

五、其他非标准端口(如SSH、FTP)支持方法

  • 普通橙云代理不直接转发 SSH、FTP 等非 HTTP 协议。SSH 也可通过 Cloudflare Tunnel 配合客户端连接器访问。
  • 若有这类需求,可以购买Cloudflare Spectrum服务:
    • 在Cloudflare后台,进入Spectrum(频谱)服务,选择协议和端口映射到你的服务器IP地址即可。

六、常见问题与解决办法

  • 访问失败或返回522错误:
    • 检查服务器端防火墙是否允许Cloudflare IP段访问服务器端口。
    • 检查服务器程序是否正常运行,端口是否已开启。
  • SSL问题:
    • Flexible模式下,无需服务器端SSL证书(Cloudflare自动处理)。
    • Full 模式加密回源但不严格验证证书;Full (strict) 还会检查证书有效性和域名,通常优先使用后者。

文章作者: 0xdadream
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 0xdadream !
赏
评论

评论将在接近此处时加载,也可点击立即加载。

  目录