首页 > 其他分享 >通过域名访问内网服务器

通过域名访问内网服务器

时间:2024-11-19 11:56:15浏览次数:1  
标签:端口 访问 域名 DNS 服务器 Cloudflare com

cloudflare优选ip访问家用服务器

前言

由于一直有使用markdown写笔记的需求,但是每次处理图片的时候总是很头疼。突然,我瞥见了还在角落里面吃灰小主机,因此萌生了废物利用想法,搭建一个外网可访问的图床。图床直接使用lsky-pro就可以,关键还是在外网访问上。

于是在网上看看有没有现成的方案,功夫不负有心人,找到了两种方法:内网穿透或者DDNS。由于免费的内网穿透带宽小,所以使用DDNS方案。

家里宽带只有动态ipv6,80、443端口也不能用。于是,先通过DDNS将公网ipv6地址放到cloudflareDNS服务器上解析。但是ipv6网络普又是一个问题,在ipv4 only网络上无法访问服务器,所以要cloudflareCDN实现ipv4ipv6;加上端口转发,还可以不带端口访问服务器;最后再使用Cloudflare for SaaS配置优选ip提升下速度,似乎就圆满了。感谢cloudflare大善人。下面开始实操。

环境说明

个人还是习惯使用Ubuntu。然后我使用了一款服务器管理面板1panel。使用图形化界面可以少敲一些命令行。1panel里很多服务都是容器搭建的,兼容性不错。最后就是准备域名。如果要弄优选ip,就需要两个域名,和一个palpay账户。

实操

服务器管理面板1panel

由于下面很多操作都是在1panel面板中操作,所以提前安装好1panel。安装过程不复杂。直接去官网看就行在线安装 - 1Panel 文档

安装时它会自动帮我装上了docker,还配置好了镜像仓库源。真是太细心了。

动态域名解析DDNS-go

Github地址jeessy2/ddns-go

这里我没有去Github上下载。而是在1panel应用商店里下载。

Snipaste_2024-11-18_12-53-25

直接安装就行,防火墙放行9876端口、使用http://$LOCAL_IP:9876访问。

DNS服务商选择Cloudflare,如何将购买的域名托管至Cloudflare参考域名DNS服务托管至Cloudflare,就是如此简单创建API-Key方法参考dnsapi · acmesh-official/acme.sh Wiki

You can do this via your Cloudflare profile page, under the API Tokens section. When your create the token, under Permissions, select Zone > DNS > Edit, and under Zone Resources, only include the specific DNS zones within which you need to perform DNS challenges.

将得到的API-Key填入Token

image-20241118132750982

启用IPv6,填入需要解析的域名。

Snipaste_2024-11-18_13-29-59

完成后点击保存,会自动将DNS记录同步到cloudflare

实现IPV6 Only服务器可在IPv4网络下访问

Cloudflare提供了免费CDN代理。同时CDN支持IPv4IPv6双栈流量的互相转换。我们可以利用这一特性实现此需求。

主要步骤:打开CloudflareCDN服务,再去Origin Rules配置端口转发。

  1. Cloudflare设置

    打开每条DNS记录中的小云朵即可打开CDN服务

    Snipaste_2024-11-18_15-10-19

    点击规则 -> Origin Rules -> 创建规则。参考下图填写。域名填写自己的。端口不能随便写(比如图中的8081就不行),Cloudflare只支持部分端口转发。参考Network ports | Cloudflare Fundamentals docs自行修改。image-20241118152622782

  2. 本地服务器设置

    设置反向代理。直接在1panel中配置,不用敲一行代码。进入面板,选择网站 -> 网站根据提示安装``OpenResty`。

    image-20241118160623374

    注意安装OpenResty时配置的http/https端口要和端口转发的一致。否则无法代理。同时防火墙放行对应端口。路由器也要放行该端口(最好由路由器拨号上网)

    Snipaste_2024-11-18_16-16-00

    安装完成后,配置反向代理。 配置如图

    Snipaste_2024-11-18_16-21-45

    最后,如果建议开启https。开启方法也很简单,打开刚才建立的记录,选择HTTPS -> 启用HTTPS然后导入自己的证书即可。如何申请证书见部署免费SSL证书-acme脚本

  3. 如果使用https,要在Cloudflare中选择SSL/TLS。设置SSL/TLS加密设置为完全。

    Snipaste_2024-11-18_16-45-24

  4. 至此以及可以直接通过域名访问家庭内网服务器。如果有多个服务,可以添加多个二级域名,再重复上面步骤。

    先添加二级域名的``DNS`解析,设置端口转发,可都转发至同一端口。最后在本地设置反向代理,代理到对应服务的端口。

设置优选IP

此步骤非必要。但是由于Cloudflare服务器都在国外,访问速度比较慢,通过该方法可以一定程度上缓解。毕竟免费,又不是不能用

标签:端口,访问,域名,DNS,服务器,Cloudflare,com
From: https://www.cnblogs.com/PangXiao/p/18554581

相关文章

  • Gmail企业邮箱:定制化邮件域名打造形象!
    gmail企业邮箱的注意事项?如何创建烽火域名邮箱地址?一个专业、可信赖的企业形象不仅能够提升客户的好感度,还能增强员工的归属感和自豪感。而Gmail企业邮箱,作为企业通讯的重要工具。烽火将介绍如何通过定制化邮件域名来打造独特的品牌形象。Gmail企业邮箱:增强品牌Gmail企业邮......
  • 如何轻松搭建小型网站?基于腾讯云轻量应用服务器网站全解析
    如何轻松搭建小型网站?基于腾讯云轻量应用服务器网站全解析在双十一这个购物狂欢节,腾讯云轻量应用服务器为开发者带来了前所未有的优惠!无论你是刚刚入门的小白,还是经验丰富的开发者,腾讯云轻量应用服务器都能为你提供强大且高效的技术支持。简化的操作界面、灵活的配置选项、......
  • Python实现文件夹上传到Linux服务器(带日志功能)
    功能概述实现一个FileUploader类,用于将本地文件夹及其子文件上传到Linux服务器的指定目录,并支持:冲突处理策略:覆盖:直接覆盖远程文件。跳过:跳过已存在的远程文件。重命名:避免冲突,为文件生成唯一名称。日志功能:记录上传成功的文件(upload_success.log)。记录上传失败......
  • docker部署postgres并配置远程访问
    要使用Docker部署PostgreSQL并配置远程访问,可以按照以下步骤进行:拉取PostgreSQL镜像:使用Docker命令拉取PostgreSQL的官方镜像。dockerpullpostgres创建并运行PostgreSQL容器:创建一个PostgreSQL容器,并设置环境变量、端口映射和数据卷。dockerrun-it--namepost......
  • locust(服务器压测)
    一:注意事项:项目和压力机不能在同一台机器二:1.脚本压测命令行:locust-fget.py--host=http:ip+host  注意事项 Wait_time写0,0不进行等待1.脚本压测2.1服务器防火墙需要关闭2.2需要把打印去掉2.3DownloadData下载报告 三.非web模式 新版中-u指的是多少......
  • 使用python工具库requests访问HuggingFaceAPI设置代理转发失败问题
    实现功能:使用HuggingFace开源模型库中的XLabs-AI/flux-RealismLora模型,实现文本生成图片。问题描述:调用模型XLabs-AI/flux-RealismLoraAPI接口时,设置了代理一直连接不上。错误描述:requests.exceptions.ConnectionError:HTTPSConnectionPool(host='api-infere......
  • 服务器时间不对导致.NET SDK连接Minio失败
    这两天想弄个简单的文件系统来做测试,选中了Minio,公司的测试环境是windowsserver2019,随手搜起一篇教程(MinIO注册成服务在后台运行(Win10)_miniowindows注册成服务在后台运行-CSDN博客),按图索骥,一顿操作猛如虎,使用“WinSW”加入系统服务。打开网页一看,好使。再用.NETSDK(最新6.0......
  • Memcached&Redis构建缓存服务器 (主从,持久化,哨兵)
    许多Web应用都将数据保存到RDBMS中,应用服务器从中读取数据并在浏览器中显示。但随着数据量的增大、访问的集中,就会出现RDBMS的负担加重、数据库响应恶化、网站显示延迟等重大影响。Memcached/redis是高性能的分布式内存缓存服务器,通过缓存数据库查询结果,减少数据库访问次数,......
  • 服务器部署篇 | 安装软件和其他依赖
    记录,仅供参考mysqlgogitee代码仓库绑定npm配置背景说明:centos7需要部署go语言编写的系统。mysql参考资料:这里注意:教程写得很好,可以完全按照其步骤进行,本人用的是第二种安装方式。go参考资料:这里注意:如果只能在本地无法翻墙下载安装包的话,可以自己电脑下载好......
  • 告别中央服务器:Syncthing实现点对点文件同步
    去中心化的同步机制核心:Syncthing通过去中心化的方式实现文件同步,不再依赖任何中心服务器,确保了数据的隐私和安全。自动发现与连接优势:无需预先设定IP地址或端口号,Syncthing可以自动在局域网或互联网环境中发现并连接其他运行Syncthing的设备,简化了设备间的同步过程。 智能......