前言
在访问本站百度统计后台,发现过几次搜索关键词为SYNO.SDS.Drive.Application设置域名
和SYNO.Photo.AppInstance设置域名
,这个是属于群晖的Drive和Moments应用的Web端地址的一部分,考虑到实际使用环境,本文将介绍如果为群晖NAS里的各云服务应用设置单独的门户域名来实现独立访问和分享.
设置流程
一、门户域名的需求
常规情况:
操作繁琐
:在配置好DDNS域名后,我们使用域名来登录到DSM管理界面,进入群晖系统内,在单独打开各应用的Web界面.权限问题
:非管理员的普通用户通常会被设置禁止登录DSM.无法直接登录,需要很长的应用链接登录.不便于收藏和访问.安全隐患
:普通用户的登录或者分享的公开链接,都会暴露DSM管理的域名和端口,有安全隐患.
配置门户域名:
操作简便
:访问应用只需要独立域名加上端口号即可访问.例如https://nas.ioiox.com:7001
即可访问File Station.权限独立
:没有管理员权限的普通用户,无需知道DSM管理界面的端口,也可以使用独立门户域名加端口登录.安全隐患
:使用门户域名和端口登录后,分享文件获取的公开链接仅为该应用的端口,不会泄露DSM管理界面端口,减少安全风险.
二、设置前提
公网IP及DDNS设置,本站有多篇和多种教程和文章以供参考:
三、设置域名
控制面板
外部访问
高级设置
在此处填写你配置DDNS的域名地址
应用
配置域名证书
控制面板-安全性-证书
为你的域名配置证书,并设为默认,确保列表中所有需要用到域名的选项都是使用你的域名证书.
检查分享链接
找到任意文件或文件夹右键-共享
三、设置门户域名
控制面板
Synology 应用程序门户
此处列出所有已安装的能够使用独立门户域名的应用列表
分别点击应用-编辑
启动自定义端口
为File Station设置一个好记的端口号
使用门户独立域名和端口即可单独访问File Station了.无需登录DSM
查看分享公开链接
使用门户域名和端口登录后,分享的文件公开链接端口即为独立的端口,不会在公开DSM管理端口了.
四、设置自定义域名
由于群晖NAS分享文件生成公开链接地址的优先级为[外部访问-高级设置-主机名]
> [外部访问-DDNS设置域名]
> [Synology 应用程序门户设置的自定义域名]
所以我们必须注意以下两点设置
注意点1:保持外部访问-高级设置-主机名
为空
注意点2:保持外部访问-DDNS
为空
开启自定义域名
输入为File Station配置的独立域名file.ioiox.com
现在可以用这个好记好辨别的域名登录了
查看分享公开链接
登录链接及分享公开链接均为自定义域名和端口了.完美隐藏了DSM域名和端口.
同上步骤我们尝试把Drive,Moments,Download Station也配上自定义域名
域名DNS设置CNAME到主DDNS域名
- drive.ioiox.com CNAME指向 nas.ioiox.com
- photo.ioiox.com CNAME指向 nas.ioiox.com
- download.ioiox.com CNAME指向 nas.ioiox.com
检查访问及分享链接
登录Moments
Moments分享相册
登录Download
登录Drive
然而不使用独立域名,而使用门户域名,确没有问题.
此问题还不确定是否是BUG,经过2台群晖及1台Docker群晖虚拟机的测试均如此.已提交技术支持等待答复.
使用非自定义域名分享链接正常
结语
更多群晖NAS相关技巧,教程及信息,请持续关注本站群晖Synology专栏:
42 条评论
站长,您好!我是一名新手,看到您撰写的这篇博文,感觉域名+端口号的方式访问独立门户的方式,正是我当前需要的。仔细阅读了您的文章,非常详实,并按部就班,不过并没有如愿,我现在可以正常用ioiox.com:5001这样的地址访问DSM,但是就是不能用比如10003这个端口访问drive,并且在“外部访问/高级设置”中也输入了相同的主机名称,申请了ssl证书并导入,但是共享链接还是类似于”http://gofile.me/5G*“的形式,现在有点蒙,不知道哪儿出了问题,您能否再指点一二。∠( ᐛ 」∠)_
设置了独立域名和独立端口,就必须用该域名端口登陆以后在来分享
同时不能使用群晖自带的DDNS功能,否则分享链接也会是DDNS的域名.
其实不是群晖Drive不能加端口,是自定义域名的都不会自动加,自定义域名里设置的默认都是80/443,至于为什么带端口能访问,是因为CNAME指向
并不是这个意思,使用自定义域名是要手动加端口,但是分享的时候生成的链接就不会自动加端口.
像其他app,moments,file都会根据你登录时加的端口而自动在分享链接上加的,而drive不行.
加域名实际上是根据你的访问地址来的,你可以试试用DSM的端口号访问,看一下对应几个地方分享出来的链接
其实自定义域名意义不大,都是属于DDNS域名指向IP.只是说使用独立端口会这样,使用DSM自己的端口则不会有问题
博主,首先感谢你的文章,让我进一步认识了NAS.我就是你说那个有强迫症和洁癖的人,我需要为群晖的各个应用分别配置自己单独的域名和端口,这样就可以完美的隐藏dsm的域名和端口。但是你文章中说了,如果要实现这个结果,有个重新的前提之一,群晖里面不能出现ddns,那就意味着只能用路由器实现ddns了,我也看了你的路由器dnspod 实现ddns的文章,现在有个疑惑:你在路由器里面申请的是泛域名证书吗?如果不是,比如申请的是www.ioiox.com证书,假设我把dsfile.mynas.com,dsaudio.mynas.com等域名采用cname的方式转发至www.ioiox.com上来,到时候浏览器不会提示证书不属于它们而显示不安全吗?这一点我一直没有消化透。
其实你理解的差不多了.
CNAME只是指向域名的IP,比如dsfile指向www,仅仅只是dsfile指向www的IP,最终还是由dsfile为域名访问,当然需要dsfile的证书.其次,dsfile肯定是访问的群晖,那么群晖里就得为dsfile配置证书,这样就安全.
在深一步来说,dsfile指向www,两者IP一致,同样可以用dsfile+路由器端口来访问路由器.只是由于我文中路由器是www的单域名证书,所以就会出现证书错误.
最终推荐所有设备都部署泛域名证书,专门选择一个二级域名来做DDNS域名.例如 ddns.xxx.com部署在路由器里,或者群晖的docker里.
你的各项服务在各自单独的分配二级域名CNAME到ddns.xxx.com,在用各自的端口访问.这样做的目的就是你所希望的隐藏主端口,分配独立域名便于管理和隐私.
其实这些所有的域名都是指向DDNS域名的,IP都一致,任意一个域名+各服务的端口号都能访问
感谢博主深夜神速回复。按你的回复,进一步加深了理解,但还是需要追问一下:
一、泛域名证书是授给NAS的域名(或者说Ip的),对吧?
二、如果是授给nas的域名的,是如何实现的,我参照你的文章刷了一个梅林,软件中心里面有个let's encrypt,我利用它生成了nas域名的泛域名证书,信息显示成功了,可是ssh到路由器以后,眼睁睁地只能看着证书,却无法下载到桌面,只能下载而个文件,而不是整个泛域名证书文件夹下面的所有证书。博主是如何做到的证书可以下载到本地的呢?或者说ssh路由后如何获取权限来操作这个?
三、在nas里面的应用程序门户里面,可以为各个套件设置自己独立的域名和端口,但这里面恰恰没有dsm,因为原来dsm的ddns是在外部访问里的,为了满足各套件都能有自己的独立域名+端口来访问,这个dsm在nas里面的ddns是要删除掉的,那么需要在哪个地方来设置dsm自己的ddns也就是独立域名呢?
1,证书是授权给域名的,你可以部署到任何需要用到的设备里,比如NAS,路由器
2,你在梅林中申请的证书也是保存在路由器里,是可以ssh进去找到下载下来,只是我没有去研究在哪个目录中.
你可以用其他方式去申请泛域名证书,在分别去安装到梅林和群晖里,申请教程博客里有很多种方法.你不用纠结用那种方式申请,大致都差不多,后期你熟悉了自然会选择申请方法.
https://www.ioiox.com/archives/13.html
https://www.ioiox.com/archives/88.html
https://www.ioiox.com/archives/104.html
3.就像我上个回复说的,在路由器设置了 ddns.xxx.com ,你只需要分配一个二级域名指向 ddns.xxx.com 就可以访问群晖nas了,例如 nas.xxx.com. 实际上你是可以用这一个 nas 的域名访问所有套件,只是端口不同而已.
但是为了保证隐私安全,你可以分配多个二级域名都指向 ddns.ioiox.com ,只要你不公开告诉别人你的dsm的域名和端口就行.
收到,多谢。我再试试。
直接用泛域名解析主域名,就不用设很多二级域名,再去逐条指向主域名
站长你好
请问你了解过群晖分享链接的可以改成指定的域名(无后缀)比如ioiox.com/xxx.xx变成share.ioiox.com
可以,你登陆时就必须用二级域名的方式登陆
主要不知道你的网络环境是怎么配置的,是ddns端口,还是内网穿透.
,你要用share这种二级域名的方式分享,你可以在应用程序门户里单独给filestation配置独立的端口和独立的域名.
然后你用独立的域名端口登陆web或者app,分享出来的就是这个独立域名,不会是你的主域名.
另外你的示例就是独立的域名,但是他没有端口号,这就是另外一个技术的,在完成上述配置后在单独给这个独立域名配置内网穿透来达到不需要端口号