开源&Docker 篇二十九:又一款集大成的开源nas系统,更着重于安全访问和一键式容器管理
前言
大家好,这里是可爱的Cherry。
今天继续给大家带来一款开源的nas系统:cosmos-server。该开源系统主打的是访问安全,除了常规的导航页、应用商城、容器管理、性能监测面板等功能外,重点更多放在容器安全管理、访问安全、服务器安全、单点登录、虚拟网络代理上。
不建议不擅长网络设置的值友折腾
Cherry试用了一下,折腾了大概3天吧,体验上来说非常不错,唯一的缺点是没有自带存储管理,需要安装文件管理容器,但这只是多了一个安装步骤而已。
先放官方发布的开源OS对比图:
cosmos-server通过建立一个虚拟网络,将客户端和服务器连接,可以确保不映射任何tcp端口的情况下访问服务:
系统部署
一、Docker Cli部署
最终的docker cli指令如下,通过ssh登录linux系统后,在root权限下运行
二、群晖部署
群晖—任务计划—新建,将以下代码复制进去修改。然后权限设置为root,是否运行改为否。完成后点运行即可。
系统使用
一、系统初始化
第一步:安装docker,如果已经安装过了,则点下一步。
第二步:链接数据库,项目采用mongDB,建议选第一条,点击connect新建。如果nas本身有mongDB了,可以选第二条填入数据库URL。
第三步:网络设置,如解析域名、自定义/申请https证书等。Hostname处可以填域名或IP,这里很关键,因为只可以访问填了的域名/IP。以下为域名举例。
ssl证书获取的方式很全了,也可以直接使用http
第四步:创建管理员账号密码,并完成安装。
第五步:(可选)我在测试应用商城容器的时候,发现默认80端口会造成一些问题,导致WEB-UI有时候无法访问,因此建议将默认的80/443端口进行修改。并且重建容器(回到第一步,将端口映射后面的80,443改为你修改的端口)
如果重建容器后,无法访问的,来到./config文件下,看看cosmos.config.json里的http端口有没有修改,没有的话修改一下再重启容器。
二、容器应用商城
应用商城。数了一下大概100出头个应用。
一键安装应用。以萤火虫3为例
应用容器修改页面。类似unraid,可直接修改环境变量、卷等信息
安装进度条
三、服务器与应用级监控
服务器级监控。包括CPU、内存、网络、路由情况。
容器监控。包含日、时、实时数据,存储使用情况、网络使用情况等。
容器管理。
四、安全免费的外部访问
cosmos提供了一款专用的内网穿透软件,可以在不打开任何应用端口的情况下连接到服务器应用,只需通过之前设置的4242UDP端口。还提供了DNS去广告啥的小功能。
该功能说将于1月底测试结束(发现太晚了!),但是看状态会继续持续一段时间。
新建内网隧道
客户端支持列表,除了IOS端,其它客户端都已经支持。
新建许可,即允许访问内网隧道的客户端列表,新建完成以后有配置文件和二维码,客户端安装以后加载配置文件即可
成功建立隧道穿透服务,相关端口我已在防火墙中关闭,依旧可以通过隧道连接,测试可用。
五、容器路由(安全访问)
这是这个项目最有意思的地方。cosmos将反代集成到了导航内部,我们在新建容器的时候无需映射端口,只需要增加cosmos到容器的路由即可。
同时还支持通过不同的路由方式,如ServAPP、反代、路径、静态页面、重定向等。可以支持定义到任意服务器能访问到的设备上设置为导航。
不建议折腾,不建议折腾,如果你对网络路由不是很清楚的,这块不建议折腾。当个导航页用就成了。
以安装jellyfin为例,具体操作一个看看。
查看创建明细,没问题点create创建
首页导航。已经增加了jellyfin(彩色代表可访问),查看路由可以看到整个路由的访问策略。
最后
因为时间有限,很多功能Cherry还没有进行更深入的研究,例如代理的灯塔模式,应用部署安全等。
但从简单三天的接触来看,上面提到的每个功能都是做的比较深入的,有些甚至比专业的特定类软件做的还要好。
有兴趣的朋友可以持续关注一下,因为该项目还没有发布正式版(先下版本号0.4.7),期待有更进一步的表现。
欢迎朋友们评论区讨论留言。我会定期更新关注NAS使用方法、开源软件与Docker软件、游戏与生活相关内容,喜欢的朋友请关注、点赞、留言支持。
作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~