问题介绍
前段时间自己做了黑群晖,想用来存小孩子的照片,然后家里人一起上传和查看分享的。
成功使用樱花frp实现在外网登录群晖dsm后台。但却无法在外网访问群晖的相册服务,很是头疼。
使用自行搭建的frp服务的时候,可以直接内网穿透访问群晖机器的80端口,但是使用樱花frp的时候,却如何都不能通过绑定本地80端口实现相册的访问。
解决思路
通过内网访问相册服务、自己搭建frp服务时均能访问相册服务,说明群晖80端口是可以实现访问的。
说明樱花frp服务直接绑定群晖80端口的服务可能存在限制或者问题,那我们就放弃使用frp直接绑定群晖80端口的思路。
转而使用访问客户端其他端口,然后由群晖自身将其他端口反向代理至群晖80端口的方法,来解决无法访问的问题。
最终办法
1.创建隧道,并设定本地端口
如上图所示,我选择将本地端口设置为17086。更改了设置以后均需要重启docker中的樱花frp服务。
2.群晖docker中部署樱花frp
具体操作请参照樱花frp官方手册,说的很清楚了,也不是本文讨论重点。
3.设定反向代理
【控制面板】-【应用程序门户】-【反向代理服务器】
点击新增,设定反向代理,具体设置请参考下图
访问测试
这时候访问http://xxx.xxx.xxx:17086/photo 理论上就通过樱花frp在外网登录群晖的相册服务了。