最近,家里整了个nas,自此开始入坑nas,由于没有带公网访问的功能,只能自己研究了。
好在之前用过ZeroNews零讯
,整过内网穿透,有点印象,这不重新开始配置了下,下面是配置文件的过程,在这里记录记录,希望能帮助到大家。
一、先登录 ZeroNews - 安全内网穿透 | 无需公网 IP | 随时随地访问内网 平台,在设备菜单的 Token 页面生成 Token。生成完毕后,复制生成的 Token 备用。
二、运行 ZeroNews 客户端
登录 TrueNAS 的管理后台,点击 "应用" 界面的右上角 "新增应用程序" 按钮,打开 "新增应用程序" 界面。
在 "新增应用程序" 界面中,点击 "Custom App" ,以自定义方式安装 ZeroNews 应用。
在 "安装 Custom App" 界面中,进行以下操作:
● 在 "Application Name" 中输入应用名称 "zeronews"。
● 在 "容器镜像" 的 "Image Repository" 中输入 ZeroNews 镜像地址:zeronews/zeronews。
● 在 "Image Pull Policy" 中选择 "Always pull image even if present on host"(即使本地已存在也要拉取镜像)。
● 在 "Container Entrypoint" 区域的"Container Args" 中添加两个参数(Args):第一个是您的 Token,第二个是您的网络区域 ID。
例如,如果您的 Token 是 B6uzYb0SSAq068QKC8wMXA,网络区域 ID 是 440,您可以在这里输入这两个值。
完成以上设置后,拉到页面底部并点击 "安装" 按钮。稍等一会儿,ZeroNews 容器将会成功安装。
在 ZeroNews 平台上,您可以查看TrunNAS上的 ZeroNews 已成功上线, 设备名称默认为容器的名称,您可以修改为易于记忆识别的名称。
三、为 TrueNAS 分配公网域名及TLS证书
1. 用户在 "资源" 的 "域名" 管理页面, 点击 "添加域名" 为 TrueNAS 添加公网可访问的域名。
● 生效设备: 选择对应的 TrueNAS ZeroNews 设备。
● 域名前缀: 用户输入定义的 域名前缀,如 truenas
● 在“添加端口”步骤,勾选HTTP选项。
2. truenas 域名开启 TLS证书功能, ZeroNews 自动为 truenas 域名分配 TLS 证书
四、为 TrueNAS 平台添加公网映射
1. 先在 "应用" 菜单下,先点击 "添加应用" 添加 TrueNAS 应用。
● 应用名称: 如输入 TrueNAS
2. 分别添加 HTTP 或 HTTPS 映射
以HTTPS方式访问TrueNAS, 请添加HTTPS 映射
● 映射协议:选择 HTTPS 协议
● 公网访问地址:选择域名,truenas.center.takin.cc
● 映射带宽: 输入分配的带宽大小,不大于用户当前的最大可用带宽
● 内网映射地址:内网IP地址输入 TrueNAS 设备的IP地址,如 172.16.1.10 内网端口:输入TrueNAS 平台的端口号 80
TrueNAS 映射添加完成后,可在应用详情中可查看添加好的映射列表,点击 映射访问地址后面的小图标,即可在浏览器中访问 TrueNAS 管理平台。
采用HTTPS访问TrueNAS,出现部分浏览器不能访问的问题,请修改 TrueNAS 的nginx 配置
用户 登录 TrueNAS 管理后台,点击 "system" 菜单的 "shell",进入到 TrueNAS 的命令行控制台界面
通过 vim 编辑修改 nginx 的 /etc/nginx/nginx.conf 文件,将 location / 下的 $scheme 修改为 https。
修改命令需要 root 权限,修改内容如下:
源文内容:
location / {
allow all;
rewrite ^.* $scheme://$http_host/ui/ redirect;
}
修改为
location / {
allow all;
rewrite ^.* https://$http_host/ui/ redirect;
}
修改完成后,重启 nginx 服务
sudo /etc/init.d/nginx restart
,