三步搭建:飞牛OS + 1Panel + Cloudflare,实现外网HTTPS和去端口访问

当然Zero Trust的tunnels也挺好,直接转发,也能使用1panel,这个略!

如果只想使用飞牛OS+1Panel的方案,已更新《无添加:飞牛OS+1Panel动态域名解析和反代,并申请ssl证书》

由于工作需求,内网部署了飞牛OS和1Panel,但是外网访问需要动态域名解析,研究了不少,包括比较火的lucky,发现功能虽然很强大,但是配置比较麻烦

在网页访问域名的时候,http访问的默认是80端口,https默认是443端口。

  • 问题一:一般情况下非idc其80和443端口无法使用,也就是说家庭或小型办公室的网络,80和443端口无法使用,所以只能使用其他端口,访问的时候是域名+其他端口的形式
  • 问题二:飞牛os占用了内网的80和443端口
  • 问题三:使用lucky的时候,需要配置监听一个统一的其他端口,根据访问域名转发到不同的项目端口上
  • 问题四:使用lucky的时候,需要手动配置将http重定向至https上,并且每次配置证书后需要重启web服务。

 

实际上lucky转发和重定向的配置,对我来说就是一个多余的web应用服务器。

由于使用1Panel管理了不少项目,并且域名是托管在Cloudflare上的,那么使用OpenResty,然后再加上Cloudflare的15年证书和端口转发即可使用证书和端口转发需要开启DNS解析的橙色云朵)

完全没必要多部署一个服务,再用lucky配置一遍就是自己找麻烦事儿!也因此方案就是现成的!

  1. 飞牛OS自带管理ddns
  2. 飞牛安装1panel管理网站项目和反代
  3. cloudflare进行防护和端口转发

 

一、DDNS解析至Cloudflare

飞牛OS本身自带DDNS动态解析ipv6至Cloudflare中管理的域名DNS,不用多部署其他的服务。

三步搭建:飞牛OS + 1Panel + Cloudflare,实现外网HTTPS和去端口访问

申请cloudflare的API令牌:https://dash.cloudflare.com/profile/api-tokens

三步搭建:飞牛OS + 1Panel + Cloudflare,实现外网HTTPS和去端口访问

二、1Panel管理站点和转发

打开飞牛中的1Panel,然后安装OpenResty,由于飞牛OS占用了80和443,这里可以改成880、8443,那么在Cloudflare重写端口时可以重写至8443,确保开启https。

fnos部署后,默认对80和443做了重定向,虽然我关闭了,但为了避免冲突,还是没有直接使用80和443。再就是家用本来就有风险,无论是运营商还是外网,避免80和443因不可抗力无法访问的原因,还是选择在OpenResty中替换。

三步搭建:飞牛OS + 1Panel + Cloudflare,实现外网HTTPS和去端口访问

创建网站详见文档

在cloudflare配置好转发后,创建网站和访问管理,就跟在服务器上使用1panel一模一样。

创建网站 - 1Panel 文档 :https://1panel.cn/docs/user_manual/websites/website_create/

建议先创建个静态站测试下是否能成功,这里需要注意的是因为解析的是ipv6,所以创建网站或者反代时,需要把监听ipv6打开,证书部署略。

三步搭建:飞牛OS + 1Panel + Cloudflare,实现外网HTTPS和去端口访问

三、Cloudflare申请证书和重写端口

通过飞牛的ddns解析成功后,默认没有开启橙色小云朵,需要开启。

三步搭建:飞牛OS + 1Panel + Cloudflare,实现外网HTTPS和去端口访问

在cloudflare的Origin Rules,将域名的访问重写至1Panel中OpenResty监听的https端口,这里重写至8443,因为安装的OpenResty的https监听端口自定义成了8443。

三步搭建:飞牛OS + 1Panel + Cloudflare,实现外网HTTPS和去端口访问 三步搭建:飞牛OS + 1Panel + Cloudflare,实现外网HTTPS和去端口访问

 

三步搭建:飞牛OS + 1Panel + Cloudflare,实现外网HTTPS和去端口访问

 

cludflare申请证书很简单不说了

直接使用cloudflare的证书

三步搭建:飞牛OS + 1Panel + Cloudflare,实现HTTPS与去端口访问

 

最后总结

此时访问域名的过程就是,浏览器打开域名->经过cloudflare重写至8443->访问到解析的地址->OpenResty作为 Web 应用服务器进行路由或者转发到对应的服务,过程如下:

  1. 用户请求:当用户在浏览器中输入域名时,浏览器会向DNS服务器发起查询,以获取该域名对应的IP地址。
  2. DNS解析:由于您的域名托管在Cloudflare上,并且启用了代理模式(橙色云朵),DNS查询会被导向Cloudflare的服务器。Cloudflare会返回一个指向其全球网络中的最接近用户的服务器的IP地址。
  3. 通过Cloudflare:用户的HTTP或HTTPS请求首先到达Cloudflare的边缘节点。如果配置了页面规则或使用Workers脚本进行端口重写,Cloudflare会将请求的80端口(http)或443端口(https)转换为您的OpenResty监听的端口(如8443)。
  4. 到目标服务器:Cloudflare将修改后的请求转发给您的内网服务器(飞牛OS)。这里,流量通过DDNS更新的IPv6地址路由到实际的服务器。
  5. OpenResty处理请求:一旦请求到达运行在非标准端口上的OpenResty,它会根据配置来处理请求,这可能包括静态文件服务、反向代理到后端应用服务器或其他任何Web应用逻辑。

整体上如果不需要隐藏端口的情况下,直接动态解析+端口访问即可,仅需要一个域名的成本。但大多数人更习惯直接访问服务,相较于frp和第三方服务来说,不需要额外的投入和项目部署。

使用1Panel进行统一管理,一是兼容管理了所有站点和服务,二是有访问日志比较方便查看访问情况,三是cloudflare进行防护,避免暴露后被攻击。

当然,更好的还是得整个服务器,目前在用,整体比较稳定且便宜, ColoCrossing,特价VPS低至$10/年,1Gbps带宽,不限流量,有Windows/Linux系统

本文作者:𝙕𝙆𝘾𝙊𝙄

文章名称:三步搭建:飞牛OS + 1Panel + Cloudflare,实现外网HTTPS和去端口访问

文章链接:https://www.zkcoi.com/idea/skills/4052.html

本站资源仅供个人学习和交流,如若转载,请注明出处,详见《免责声明》

(4)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
𝙕𝙆𝘾𝙊𝙄𝙕𝙆𝘾𝙊𝙄
ColoCrossing挂了……
上一篇 2024年12月17日 下午6:50
ollama+chatbox,本地部署deepseek越狱版,附全网热搜:清华大学《 DeepSeek:从入门到精通》pdf下载
下一篇 2025年2月8日 下午9:01

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

评论列表(14条)

  • zheng
    zheng 2025年3月12日 下午2:45

    经过cloudflare重写至8443->访问到解析的地址- 这块有端口限制吗,我用的其他端口只有在科学上网的时候可以访问代理后地址

    • 𝙕𝙆𝘾𝙊𝙄
      𝙕𝙆𝘾𝙊𝙄 2025年3月16日 下午11:49

      @zheng重写至8443是因为用了OpenResty,为什么要用1Panel和OpenResty,不直接重写到服务?
      实际上,你不想用也可以直接重写到别的服务端口。但直接访问的服务是没有ssl证书的,所以相应的CF的SSL加密模式要改成灵活
      改成灵活模式下CF和源服务器之间是HTTP的,这就导致已经正常部署ssl证书的源服务器与CF通信出现问题,比如ssl证书握手失败无法访问(Error 525)、会形成HTTPS→HTTP的降级链路,存在中间人攻击风险。

      也可能会遇到这个错误

      用户HTTPS请求 → CF节点HTTP转发 → 源服务器HTTPS重定向 → CF节点HTTP再次请求 → 形成无限重定向循环[2](@ref)
      此时浏览器会显示”ERR_TOO_MANY_REDIRECTS”错误

      通过OpenResty的反向代理,可在源站维持HTTPS加密,使CF的SSL模式可保持”Full”或”Full(strict)”,实现端到端加密。
      所以我选择通过1Panel来统一管理包括部署ssl证书和使用OpenResty反代,使用上也和公网服务器体验一样。

  • 123
    123 2025年5月11日 上午12:09

    博主 请问一下 8443 是nginx监听的端口吗 8443怎么转发到具体部署的应用的?

  • adnas
    adnas 2025年6月20日 上午11:06

    试过了,访问速度太慢了。

  • admin
    admin 2025年6月20日 上午11:14

    能否出一期,通过公网服务器去端口访问nas的教程!

  • yydsxll
    yydsxll 2025年8月31日 上午9:31

    大佬,这个能stun后用么?没有v6[破涕为笑]

    • 𝙕𝙆𝘾𝙊𝙄
      𝙕𝙆𝘾𝙊𝙄 2025年9月8日 下午8:19

      @yydsxll理论上可以,我自己stun穿透有问题,可能是NAT环境复杂,而且stun不行得turn中继,试下来不如frp稳定。

  • lxchinesszz
    lxchinesszz 2025年10月27日 上午10:06

    试过了,访问速度太慢了。

  • jason
    jason 2026年1月22日 下午5:04

    这个开启cloudflare代理,会不会网速很慢?

联系博主

立即联系
一般有空就回复

qrcode_web

微信扫码联系我

insert_link 友情链接
分享本页
返回顶部