『瀚思彼岸』» 智能家居技术论坛

 找回密码
 立即注册
查看: 5643|回复: 8

[基础教程] synology NAS docker HA Container 的外網連線

[复制链接]

1

主题

7

帖子

76

积分

注册会员

Rank: 2

积分
76
金钱
69
HASS币
0
发表于 2021-8-15 23:42:59 | 显示全部楼层 |阅读模式
在網路上的外網連線教學大部分是用 HAOS + duckDNS + NGINX ,

而 HAOS 在 NAS 上要裝在 VMM, 應該有些人覺得虛擬機太吃資源,

只想用 docker 版的 HA Container。

這邊說明一下 synology NAS docker HA Container 的外網連線設定方法,

其他牌的 NAS 應該都有對應的功能,請自行尋找。

感覺這東西對 docker 玩家太基礎了,反而沒什麼教學文章。

反向代理伺服器可以套用到所有的 https server,配置其他 docker 容器都能比照辦理。



1.安裝 HA 就不說了,請直接參照官方教學文檔:

https://www.home-assistant.io/in ... native#synology-nas

2.申請 synology 提供的 DDNS:

控制台 - 外部存取 - DDNS,

主機名稱自己取好記的,記得初次申請要勾選取得憑證。

申請完之後即可代替 duckDNS 的功能。

DDNS

DDNS


3.教學文大部分用 NGINX Home Assistant SSL Proxy 做 SSL 反向代理,

這邊我們一樣用 S 牌內建的反向代理伺服器處理掉。

控制台 - 登入入口 - 進階 - 反向代理伺服器

主機名稱就是剛剛設定的 DDNS 網址,

連接埠隨意設個不衝突的 PORT ,如果有衝突系統會提示。

因為我們 HA on docker 是用 host 網路,所以下面就用 localhost:8123 即可,

反向代理

反向代理


4.打開 HA 目錄下的 configuration.yaml,輸入以下字串:

http:
  use_x_forwarded_for: true
  trusted_proxies:
   - 127.0.0.1
   - 192.168.1.0/24

不知道為啥,直接輸入 NAS IP 無法正確回應,一定要用代表 host 的 127.0.0.1。

192.168.x.0 是自己的區網網段,不一定每個人都一樣,這個其實可以省略,

但我沒輸入偶爾會連線失敗,所以還是寫進去了。


configuration 只需要打信任 ip 而已,
有些教學文不使用反向代理,是把憑證導出來再掛到 HA server 底下,複雜很多。


我們這邊使用反向代理伺服器處理憑證,就可以跳過 HA 抓憑證的設定。

config

config


4.1 如果無法直接編輯 yaml,就裝 NAS 提供的文字編輯器套件。

這同時也能代替 HA 教學文章中常見的 File editor (現稱 configurator)。

editor

editor


5.在 router 上面開剛剛設定的 port 指到 NAS

router

router


6.在瀏覽器輸入 https://ddns:port 測試連線是否成功吧。

回复

使用道具 举报

0

主题

167

帖子

4599

积分

论坛元老

Rank: 8Rank: 8

积分
4599
金钱
4432
HASS币
0
发表于 2021-8-16 08:33:49 | 显示全部楼层
謝謝大大的教學分享
回复

使用道具 举报

4

主题

46

帖子

747

积分

高级会员

Rank: 4

积分
747
金钱
701
HASS币
0
发表于 2021-8-16 09:19:12 | 显示全部楼层
歪个楼,DSM咋设置成夜间模式啊?
回复

使用道具 举报

1

主题

7

帖子

76

积分

注册会员

Rank: 2

积分
76
金钱
69
HASS币
0
 楼主| 发表于 2021-8-16 09:43:10 | 显示全部楼层
qingyu1993 发表于 2021-8-16 09:19
歪个楼,DSM咋设置成夜间模式啊?

我有用 dark reader 這個瀏覽器插件,強制把所有網頁變成黑暗模式。

https://darkreader.org/

有些網站會因為反白看不清字,則再設例外清單。
回复

使用道具 举报

4

主题

46

帖子

747

积分

高级会员

Rank: 4

积分
747
金钱
701
HASS币
0
发表于 2021-8-16 09:49:05 | 显示全部楼层
flypenguinTW 发表于 2021-8-16 09:43
我有用 dark reader 這個瀏覽器插件,強制把所有網頁變成黑暗模式。

https://darkreader.org/

感谢回复,我以为已经原生支持了,只是我没找到设置项呢。
回复

使用道具 举报

13

主题

220

帖子

644

积分

高级会员

Rank: 4

积分
644
金钱
422
HASS币
0
发表于 2021-8-19 11:13:51 | 显示全部楼层
感谢楼主支持,我怀疑我写简体不知道能否看懂。 搞反向看了半天只是为了外网访问?我还以为hacs无法连接网络解决方案呢?
回复

使用道具 举报

1

主题

7

帖子

76

积分

注册会员

Rank: 2

积分
76
金钱
69
HASS币
0
 楼主| 发表于 2021-8-19 22:05:20 | 显示全部楼层
zhouhui920 发表于 2021-8-19 11:13
感谢楼主支持,我怀疑我写简体不知道能否看懂。 搞反向看了半天只是为了外网访问?我还以为hacs无法连接网 ...

對,只是為了處理 https 外網訪問;如果只用 http 訪問,開 port 就完事了。

我協助他人在 NAS 上安裝 HA 基本上遇到幾個問題。
1.NAS 的 RAM 不夠大,不能用 VMM 安裝 HAOS,網路上的教學文章基本不能用。
2.duckDNS 的 SSL 憑證跟 NAS DDNS 自帶的憑證互相衝突。
3.443 port 是被複數服務共用,不能指給單一服務用。

所以才寫這篇教學,只需要用 NAS 自帶的 DDNS,以反向代理去對應 https。
不限於 HA 也能套用到 bitwarden、NextCloud etc... 各種能架私有雲的服務。

HACS 無法連接網路的問題我沒遇過,很抱歉幫不上忙。
回复

使用道具 举报

35

主题

401

帖子

2569

积分

金牌会员

Rank: 6Rank: 6

积分
2569
金钱
2168
HASS币
10
发表于 2022-3-6 20:58:06 | 显示全部楼层
正好用上。非常感谢!
回复

使用道具 举报

35

主题

401

帖子

2569

积分

金牌会员

Rank: 6Rank: 6

积分
2569
金钱
2168
HASS币
10
发表于 2022-3-6 21:08:57 | 显示全部楼层
有个问题:虚拟机中的Home Assistant内网IP地址与DS不同,反向代理服务器的目的地是不是不应该写localhost?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-11-28 06:54 , Processed in 0.113747 second(s), 34 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表