又一款集大成的开源nas系统,更着重于安全访问和一键式容器管理
前言
大家好,这里是可爱的Cherry。
今天继续给大家带来一款开源的nas系统:cosmos-server。该开源系统主打的是访问安全,除了常规的导航页、应用商城、容器管理、性能监测面板等功能外,重点更多放在容器安全管理、访问安全、服务器安全、单点登录、虚拟网络代理上。
🔻不建议不擅长网络设置的值友折腾

Cherry试用了一下,折腾了大概3天吧,体验上来说非常不错,唯一的缺点是没有自带存储管理,需要安装文件管理容器,但这只是多了一个安装步骤而已。
🌟先放官方发布的开源OS对比图:

🌟cosmos-server通过建立一个虚拟网络,将客户端和服务器连接,可以确保不映射任何tcp端口的情况下访问服务:

系统部署
一、Docker Cli部署
【80端口】:HTTP端口,自定义设置,这里为16680
【443端口】:HTTPS端口,自定义设置,这里为16443
【4242端口】:UDP隧道穿透端口,自定义设置,这里为4242
【路径1】:配置文件路径,自定义设置,这里为/mnt/user/appdata/cosmos/config
🔻最终的docker cli指令如下,通过ssh登录linux系统后,在root权限下运行
docker run -d -p 【80端口】:80 -p 【443端口】:443 -p 【UDP端口】:4242/udp --privileged --name cosmos-server -h cosmos-server --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v /:/mnt/host -v 【路径2】:/config azukaar/cosmos-server:latest
#最终指令如下
docker run -d -p 16680:80 -p 16443:443 -p 4242:4242/udp --privileged --name cosmos-server -h cosmos-server --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v /:/mnt/host -v /mnt/user/appdata/cosmos/config:/config azukaar/cosmos-server:latest
二、群晖部署
🔻群晖—任务计划—新建,将以下代码复制进去修改。然后权限设置为root,是否运行改为否。完成后点运行即可。
docker run -d --privileged --name cosmos-server
-p 16680:80 -p 16443:443 -p 4242:4242/udp #自定义修改80,443,4242端口路径
-h cosmos-server --restart=always
-v /:/mnt/host
-v /var/run/docker.sock:/var/run/docker.sock
-v /mnt/user/appdata/cosmos/config:/config #自定义配置文件目录
azukaar/cosmos-server:latest
系统使用
一、系统初始化

🔻第一步:安装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软件、游戏与生活相关内容,喜欢的朋友请关注、点赞、留言支持。
作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

墨锋
校验提示文案
ljhappy026
校验提示文案
陷空岛
校验提示文案
值友4315086133
校验提示文案
本是清风人间过
校验提示文案
BanKnight
校验提示文案
白漂使我快乐
校验提示文案
大舟用AI
校验提示文案
天真的小宇
校验提示文案
值友3707485659
校验提示文案
哈利波特别特别大
校验提示文案
温州小阿里
校验提示文案
arg10
校验提示文案
值友1041577257
校验提示文案
哈利波特别特别大
校验提示文案
ljhappy026
校验提示文案
值友1041577257
校验提示文案
值友3707485659
校验提示文案
arg10
校验提示文案
天真的小宇
校验提示文案
温州小阿里
校验提示文案
墨锋
校验提示文案
大舟用AI
校验提示文案
白漂使我快乐
校验提示文案
BanKnight
校验提示文案
本是清风人间过
校验提示文案
值友4315086133
校验提示文案
陷空岛
校验提示文案