【群晖】无端口访问(反向代理+内网穿透)

题记:之前使用阿里云申请了域名,使用docker阿里动态域名解析(动态的公网ip);使用域名访问的时候总会带上端口才能进行访问,我群晖的服务一多之后,发现端口老搞混淆,想着怎么无端口访问群晖,思考尝试了一下,成功!作此记录。

参考文章:群晖NAS反向代理 + 内网穿透 = 无需端口访问内网所有服务无需端口 - 思有云 - IOIOX

群晖NAS使用Docker安装配置frpc内网穿透教程 - 思有云 - IOIOX

这次涉及的知识点:反向代理(群晖自带)、内网穿透(以frp为例),群晖docker安装frpc客户端

反向代理

一台设备或者服务器拥有65535个端口号,而80/443端口只有一个,当你设备中部署了一个网站使用了80/443端口后,那么其他服务和网站是无法在使用80/443端口的.这时就需要反向代理服务器来解决.
群晖反向代理服务器 首先占用群晖NAS的80/443端口,使用任何域名无端口访问(上面提到过无端口即是用 80/443 端口),都会访问到反向代理服务器,由它根据来访域名再次转发给本机或者内网其他的服务.

内网穿透(服务端、客户端)

前言已经明确家庭宽带是没有80/443端口的,那么上文提到反向代理服务器是使用80/443端口,外网是无法访问到的,那么就需要配合内网穿透服务来使外网能够访问到群晖的反向代理服务器的80/443端口.
内网穿透需要一台拥有公网IP80/443端口的服务器,一般云服务商提供的VPS服务都可以满足需求,并部署 frps 服务器端.下文简称为frp服务器.所以当你想访问内网的网站,实际上是先访问到frp服务器的80/443端口,在由frp 服务器转发到内网的群晖反向代理服务器80/443端口,在由群晖反向代理服务器转发给5000/5001/3001/80等端口.

内网穿透需要使用frps服务;这里如果有公网的服务器可以自己搭建,当然也有别人搭建好的,我使用的是:Free FRP 免费 FRP 内网穿透

 以上就是免费的服务端,接下来安装客户端

 

 

 配置存储空间中的frpc.ini

配置frpc.ini参考

[common]
server_addr = frp.freefrp.net     # 服务器IP或者地址
server_port = 7000                # 服务器提供的端口号
token = freefrp.net               # 服务器提供的token

[web1_xxxxxx]                     # 为避免错误,一定需更改为比较特殊的名称,不能和服务器端其他配置重名.
type = http                       # http协议
local_ip = 192.168.1.5            # 填写群晖内网IP.
local_port = 80                 # 群晖内网HTTP端口,默认为5000.
custom_domains = *.ioiox.com    # 填写你的域名

[web2_xxxxxx]                     # 为避免错误,一定需更改为比较特殊的名称,不能和服务器端其他配置重名.
type = https                      # https协议
local_ip = 192.168.1.5            # 填写群晖内网IP.
local_port = 443                 # 群晖内网HTTPS端口,默认为5001.
custom_domains = *.ioiox.com    # 填写你的域名

 至此,配置完成。

这里还差一步,就是内网穿透的服务frps和阿里云域名绑定,此时登录阿里云设置,完成如下。

 好了,需要的准备工作基本做好了,接下来在群晖中设置反向代理。

 开始测试:

 ok,完美运行,没有端口。

结语,看见前面那个带锁的标志没有,说明我这个域名证书也配置好了(详情请看前几篇对泛域名的配置)

### 如何通过内网穿透技术在外网环境下访问本地文件 为了实现从外网环境访问本地文件的目标,可以采用多种技术和工具来完成这一需求。其中一种流行的选择是在 Windows 平台使用 FRP (Fast Reverse Proxy),这是一款高效的反向代理应用,专为内网穿透设计[^1]。 #### 使用FRP搭建内网穿透服务 首先,在准备阶段需下载适合操作系统的 FRP 版本并解压至指定目录。接着编辑 `frps.ini` 文件作为服务器端配置文件,设定监听端口等参数;同样地也需要创建客户端配置文件 `frpc.ini` 来指明要映射的服务及其对应的内部 IP 和端口号。当两端都正确设置了之后,分别运行 frps.exe 和 frpc.exe 启动程序即可建立连接通道[^5]。 ```ini # Example of server-side configuration file 'frps.ini' [common] bind_port = 7000 vhost_http_port = 8080 ``` ```ini # Example of client-side configuration file 'frpc.ini' [common] server_addr = x.x.x.x # Replace with your public IP address or domain name server_port = 7000 [web] type = http local_ip = 127.0.0.1 local_port = 80 custom_domains = example.com # Domain pointing to the server's public IP via DNS settings ``` 一旦成功建立了这条隧道,就可以利用自定义域名加上相应的路径去获取位于局域网内的资源了。值得注意的是,除了上述提到的基础功能之外,FRP 还支持 TCP/UDP 协议转发等多种特性以满足不同场景的需求。 另外,对于 NAS 用户而言,还可以考虑基于群晖系统来进行类似的设置。例如结合 Cpolar 工具,不仅可以实现 SFTP 的远程访问,而且整个过程也相对简单易懂[^4]。 最后提醒一点关于安全性方面的问题非常重要——务必确保所使用的任何开放接口都有足够的防护措施,比如启用防火墙规则、SSL 加密通信链路等等,从而保护个人隐私不受侵犯[^2]。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值