惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
T
Troy Hunt's Blog
Schneier on Security
Schneier on Security
N
News | PayPal Newsroom
Hacker News: Ask HN
Hacker News: Ask HN
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
Google DeepMind News
Google DeepMind News
www.infosecurity-magazine.com
www.infosecurity-magazine.com
N
News and Events Feed by Topic
V
Vulnerabilities – Threatpost
Cyberwarzone
Cyberwarzone
K
Kaspersky official blog
P
Privacy & Cybersecurity Law Blog
P
Privacy International News Feed
WordPress大学
WordPress大学
U
Unit 42
PCI Perspectives
PCI Perspectives
S
Schneier on Security
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
V
Visual Studio Blog
Engineering at Meta
Engineering at Meta
The Cloudflare Blog
I
Intezer
宝玉的分享
宝玉的分享
N
News and Events Feed by Topic
Martin Fowler
Martin Fowler
B
Blog
美团技术团队
T
The Blog of Author Tim Ferriss
C
Cisco Blogs
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
酷 壳 – CoolShell
酷 壳 – CoolShell
The Last Watchdog
The Last Watchdog
J
Java Code Geeks
博客园_首页
A
About on SuperTechFans
Vercel News
Vercel News
Attack and Defense Labs
Attack and Defense Labs
H
Heimdal Security Blog
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
IT之家
IT之家
小众软件
小众软件
H
Help Net Security
D
Darknet – Hacking Tools, Hacker News & Cyber Security
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
T
The Exploit Database - CXSecurity.com
Y
Y Combinator Blog
Recent Commits to openclaw:main
Recent Commits to openclaw:main
Webroot Blog
Webroot Blog
T
Tenable Blog

皮普的数字花园

懒猫微服 - 用 UpSnap 实现远程群晖NAS 开机 使用 Surge Ponte 轻松实现外网访问家里设备&服务 在飞牛OS挂载本地的Unraid文件夹 群晖NAS挂载Unraid文件夹 弄懂FRP内网穿透的 HTTP 类型代理 2024 - 向阳而生,逆光前行 私有化部署LobeChat的数据库版本 电信收回了我的公网ipv4,如何外网访问群晖NAS?Frp 内网穿透!效果媲美直连! Adobe photoshop运行弹窗This non-genuine Adobe app has been disabled,解决办法 2023 年终总结 My Default App 2023 我的默认应用 2023 腾讯云域名转移到Cloudflare 黑群晖升级到正版白群(全程记录) 买了一张美国原生实体手机卡:PAYGO卡 如何做行业调查 Debian ssh安全设置 Debian系统常用命令 买了1张0月租的英国手机卡:GiffGaff卡 关于NAS RAID的解释【白话版】【小白也能懂】
如何更安全地访问Homelab服务
Pipu · 2025-04-06 · via 皮普的数字花园

855

前言

今年给自己组装了一台 DIY 的 All in one 服务器,底层系统是Unraid(详情可查看 2024年终总结 ),在此期间,我开始将云服务器的私有化服务,迁移到HomeLab,如何让外网访问更安全,是我一直考虑的问题,现在就完善它。

前提

家庭服务器的私有化服务和nginx proxy manager 部署在同一台服务器。

如私有化服务和nginx proxy manager 在不同服务器也可以,道理也是一样。

实现效果

✅ 域名访问

❌ IP+端口

只有匹配的域名的才会转发请求到服务器端口(只有使用域名才能访问到内网部署的服务),如果别人通过扫描公网IP找到我这个端口是打开的,而且他的不是https请求,会被nginx服务器拒绝。

本文假设

  • 域名是example.com,域名服务商在腾讯云
  • Nginx Proxy Manager的https的访问端口为11200
  • 家庭宽带为动态公网IP

项目的 Docker Compose 端口配置

内网的服务器,我一般通过docker compose 部署 端口要设置成“允许指定局域网 IP 访问”,端口号要这样写:本机IP+端口

假如1panel的本机IP为192.168.10.3,可以这样配置:

ports:
- 192.168.10.3:12900:80 

解读

  • 将容器内部的 80 端口映射到宿主机 192.168.10.2 的 12900 端口上
  • 只有来自 192.168.10.2 这个 IP 地址的 12900 端口的连接才会被转发到容器

重点回顾

要知道本机的IP,并且将它写到docker compose.yml文件里

顺便了解下

不同的端口配置,这次我们使用的是允许指定局域网 IP 访问

#只允许本机访问 
ports: - 127.0.0.1:12900:80 

# 允许指定局域网 IP 访问
ports: - 192.168.10.2:12900:80 

# 允许所有网络接口访问(包括公网,如果有的话)
ports: - 12900:80

Nginx Proxy Manager反向代理配置

  • 域名绑定到内网的服务 —> 192.168.10.12:12900
  • 申请SSL证书,并且打开 强制跳转到https

1115

1116

1117

自动获得公网IP

1panel 安装 DDNS-GO,实现自动获取动态的公网 IPv4 或 IPv6 地址(因为家宽公网IP都是动态的),并解析到对应的域名。

1118

1119

此时,已实现效果:一但公网IP发生变动,就会自动地、及时地更新域名解析。

完成

此时,可通过abc.example.com:11200访问服务了!

温馨提示:公网ipv6不需要打开端口,如果是公网ipv4,就需要设置端口转发。

如果此时通过 ipv6+端口 或者ipv4+端口,是访问不了内网的服务的,这大大提高了安全性。