菜单

沣大哈
发布于 2025-08-05 / 35 阅读
0
0

飞牛Nas进阶设置

前言

Nas的普通设置其实就是看了都会的,这次来试试几个比较难的点:反向代理https加密官方ollama套件的使用飞牛虚拟机的设置docker安装设置zerotier和sakura frp

反向代理

反向代理顾名思义,是从外网访问回内网服务器的一种技术,出名的套件有nginxlucky之类的。lucky是国人自制的软件,从一开始的反向代理到现在的很多内网穿透网络存储什么的功能应有尽有,在之后我们也还会用到它。飞牛中的反向代理服务器可能是基于nginx源码修改,因此无法使用nginx套件,需要使用lucky进行反向代理。

这次我们所说的反向代理是基于ddns+ipv6访问的,ddns我已经在飞牛设置那边设置了,因此在lucky中不必再设置一次ddns。

具体步骤

1.设置反向代理端口。Web服务中,点击添加Web服务规则,选择简易模式监听类型全选,监听端口选个不占用你喜欢的,启用TLS设置了https之后再启用!没设置就先别启用!无伤大雅!),之后保存就可以了。

lucky反向代理设置

2.添加需要反向代理的软件。Web服务类型中选择反向代理前端地址填写你在外网访问的网址,可以是二级域名,也就是在主域名前加个前缀。后端地址填写内网的IP地址,注意要手动填写http://或者是https,之后启用万事大吉保存即可。

设置软件的反向代理

3.在你域名所在服务商的管理面板中启用二级域名的解析。阿里云为例子,打开云解析DNS之后,添加记录,选择AAAA,也就是ipv6地址的解析主机记录填写lucky第二步设置的前缀,在最后的记录值填写飞牛nas的ipv6地址,在设置中就可以找到。确定后等待一下就会自动解析了,用流量或者有ipv6的外网输入网址+你设置的端口号访问一下就可以检测是否成功了。

云服务商中解析二级域名

ps:在sakura frp的设置中,软件默认的访问方式就是进行https加密的,所以在后端地址,也就是内网ip设置的时候要https开头,并不是http!

BasicAuth认证

在外网进行反向代理访问时,可以对所有软件进行BasicAuth认证,也就是多了一层账密加密,更加安全就是了。要设置BasicAuth认证,只需要在软件设置反向代理时,移到最下面,就能看到了。

添加套件,进行BasicAuth认证时,除了要账密,还要在路径认证匹配中填上“/“,以保证只对主路径进行加密,也就是一次加密,无需输入多次账密。

lucky自动补全网址后的端口号

每次输网址都要加前缀和后缀,这对于我这种群晖nas转过来的人当然相当不方便,要是能设置成只用二级域名就可以访问的就好了。

这个设置涉及到80和443端口,也就是http和https端口的设置,你每次用http/https访问,在后面其实都是加了80或者是443端口的,只是人家自动帮你补上了而已。而这两个端口服务商一般又是不对你们开放的,要是你发现服务商没有锁,那就可以按照下面的步骤改:

若要启用lucky对于80和443端口的控制,在之后地址末无需添加端口号。要在配置文件中改。

1.在飞牛控制面板中系统设置——安全性——高级设置中关闭重定向80与443端口

2.修改lucky的配置文件,使其可以监听80和443端口

使用命令行工具,修改 /var/apps/Lucky/config路径下的 privilege文件,将文件中 run-as的值修改为 root,保存后重启飞牛

lucky命令行设置

3.在lucky中添加重定向

新开一个Web服务类型,选择重定向,就像上面设置反代端口号一样。

80端口设置:简易模式,监听类型全选,80端口,服务类型选择重定向,默认目标地址填https://{host}:1012

ps:在最后的端口号是你自己设置的反代的端口号,我自己设置的是1012

80端口设置

443端口设置:大体设置同80端口,不过要勾选启用TLS。

443端口设置

Https加密

如果我们不设置https加密的话,那么每次我们输入网址访问的时候,浏览器都会在网址旁边显示出不安全三个大字,那是因为http都是明文传输的协议,包不安全的。所以我们就会想着使用第二种https加密访问,这样你的nas更安全,更不容易遭受爬虫扫描和攻击。

要想使http变成https加密访问,就要申请ssl证书

1.在lucky中的安全管理,点击添加证书添加方式选择ACME,证书颁发机构选择let's encrypt验证方式选择你所购买域名的运营商,我这个是阿里云的,在下面就要填写ID和secret,域名列表直接填写主域名和泛域名。比如说你的主域名是aaa.com,那么泛域名就是*.aaa.com,表面所有二级域名都会申请到证书。

添加SSL证书

2.在更多设置中勾选启用DNS查询强制IPv4DNS查询仅使用TCP通道,最后保存即可,等待几分钟就会出现申请通过的结果。

ps:若证书申请失败最后提示:net/http: TLS handshake timeout时,可尝试勾上使用IPv4通道申请证书再去申请,再不行可尝试设置一个代理服务器。

之后你只需要在上文提到的启用TLS,那么所有软件的访问都会变成https加密访问啦!

官方套件ollama的使用

我们以N卡为例,在使用之前的第一件事肯定是打驱动!

安装N卡驱动

那么,安装nvidia驱动,有两种方式:

①官方套件,560.28.03版本,下载安装等待就可以用。

②手动安装,可能没用,但也是提供一种方式,官方可能是自动屏蔽了除套件以外的显卡驱动。

ps:在安装官方套件之前,首先要看看你所用的显卡支持什么版本的驱动,在命令行中操作。

1.首先检测显卡是否被主机识别到

在命令行中输入lspci,列出所以已被识别的pcie设备,看看有没有nv的显卡。有就继续,没有就要重新插拔一下显卡,看看能不能识别到。如果还是识别不到,那就是显卡或者是主板pcie插槽坏了。

2.安装和执行检测脚本

①先安装检测脚本:sudo apt -y install nvidia-detect

②安装完成之后,输入nvidia-detect,自动检测显卡所需驱动版本。之后就会列出你的显卡名称和驱动型号等信息,看看是不是比官方套件的560.28.03版本更旧,更旧就可以直接用,更新就可能无法使用。

N卡驱动检测结果

官方ollama和open-webui升级安装

之后就是官方安装ollama和open-webui,安装即用,打开下载模型使用就行了。

ps:因为官方套件更新不及时,导致有些新模型不能及时用,需要更新ollama和open-webui。

ollama的升级安装

1.在应用中心中停用ollama

2.在官网下载最新的ollama安装包:ollama-linux-amd64.tgz
ps:如果打不开github下载网址,可以去镜像下载地址。

官方ollama安装包镜像下载地址:Now, everyone will be excellent! | newbe

如果镜像下载不了,就去复制官方github的下载链接,到加速站下载,地址是:GitHub 文件加速

3.找到ollama在飞牛的安装目录,备份并更新ollama。

①在命令行中操作,输入cd /volX/@appcenter/ai_installer/,这个X指的是当时你把ollama安装到哪个存储空间,1就把X改为1,之后同理。

把已安装的旧版本ollama备份,找到ollama文件夹,改名为ollama_bk。这样是为了万一手动更新失败,还能恢复到旧版本用,就是把新的ollama文件夹删掉,把旧版本的ollama_bk改名为ollama就行了。

③之后解压新版本的压缩包:tar -xzf ollama-linux-amd64.tgz,进去找到ollama的文件夹,里面应该是有bin和lib两个文件夹的,把ollama文件夹丢进去就行了。如果解压出来没有ollama文件夹,就新建文件夹把lib和bin丢进里面,再移动到ai_installer文件夹里面就行了。

④检测是否成功更新了最新版本。记住你下载的ollama安装包的版本号,在命令行输入/volX/@appcenter/ai_installer/ollama/bin/ollama --version,看看显示出来的版本号是不是和你所下载的一致。(这里命令中的volX也是按实际情况改的!

ollama版本检测

open-webui的升级

①先升级pip,以免版本过低之后用不了。

/var/apps/ai_installer/target/python/bin/python3.12 -m pip install --upgrade pip

②之后转到openweb-ui的目录,执行升级。记得改volX为你ollama实际安装目录!

cd /volX/@appcenter/ai_installer/python/bin/

./pip3 install --upgrade open_webui

ps:如果没有科学上网的话可能会慢一些,就好好等个几小时就行了,当然你也可以去设置代理。进度条跑完之后启用openweb-ui,在设置中看看版本号是不是最新的就没问题了。

飞牛虚拟机设置

在飞牛虚拟机开启硬件直通的时候,会有两个需要开启的选项:CPU虚拟化IOMMU

开启cpu虚拟化

开启cpu虚拟化很简单,就是在bios中找到Vt-x或者是AMD-V,找到开启就行了。真正要有点技术的是开启IOMMU。

开启IOMMU

在主板bios中开启VT-d或者SRIOV(SRIOV适用于11代酷睿之后)

用SSH工具连接到飞牛,修改内核

1.打开命令行工具连接到飞牛nas,之后提权,输入sudo -i,之后输入密码,默认不显示。回车后输入nano /etc/default/grub,打开内核文件进行修改。

2.找到GRUB_CMDLINE_LINUX_DEFAULT一行,在后面参数最后,空一格,输入intel_iommu=on iommu=pt,注意全部内容都在双引号内。之后ctrl+X按y保存退出即可。(amd的cpu就把intel改为amd就行了。)

内核修改

3.之后要更新内核重启,依次输入以下三个指令。

update-grub

update-initramfs -u -k all

reboot

之后去飞牛虚拟机中看看iommu是不是开启了就行了。

飞牛docker安装

zerotier

1.在docker的镜像仓库中搜索zerotier,下载第一个叫zerotier/zerotier的就行。

2.在本地镜像中创建并启用zerotier容器。点击运行,勾选开机自启动,之后点击下一步。要设置的有三个:储存位置,功能和网络。

3.储存位置第一个空你随意,就是把配置文件安装到nas里面哪里的问题。第二个空填/var/lib/zerotier-one

4.功能设置中,点第一个,使用高权限执行容器

5.网络设置中,选择host模式就可以了。

完成上述三个设置之后,就设置好了。

zerotier网络加入

在容器终端中选择第一个连接:/bin/bash

输入:zerotier-cli join <network_id>,显示200 join ok就行了。之后去管理页面上允许就行了。

sakura frp

1.下载sakura frp镜像

在docker的镜像仓库中搜索natfrp/launcher,点击下载。

2.安装并配置sakura frp

之后在本地镜像中点击运行,第一步勾选开机自启动,点击下一步。第二部有很多操作,按顺序来。

①在储存位置一栏,第一个空填你要把配置文件安装到nas的哪里,看你喜好。第二个空填写/run。

②在环境变量一栏TOKEN填账户的访问密钥REMOVE填远程管理密码token就是你在sakura frp官网注册账户给的,复制过来就行了,remove设置的密码就是之后在远程连接nas端的sakura frp时要输入密码。

③在网络配置一栏中,取消勾选bridge,勾选host就可以了。其余设置不动,之后创建容器即可。
ps:使用web-ui的话要端口和密码,在运行日志里面可以找到。

sakura frp网络设置

1.建立一个TCP隧道,本地IP选择本地主机名(localhost),填5667端口(前提是设置了lucky的https访问),其他默认就行了。

2.在nas端刷新启用隧道就可以正常连接了。网址和ip会自动跳出来,如果没记住也没关系,在运行日志中可以找到。

ps:如果没有设置https,可以参考官方文档说的:

  • 如果您希望使用飞牛系统内置的证书,将本地端口设置为 5667

  • 如果您希望使用自动 HTTPS 功能,将本地端口设置为 5666 并将 自动 HTTPS 设置为 自动


评论