题记:之前使用阿里云申请了域名,使用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
端口.
内网穿透需要一台拥有公网IP
和80/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,完美运行,没有端口。
结语,看见前面那个带锁的标志没有,说明我这个域名证书也配置好了(详情请看前几篇对泛域名的配置)
原文链接:https://blog.csdn.net/u011788214/article/details/121550074