生態圈:HACS、應用程式與遠端連線
這三個題目不屬於「從零到能用」的必修課,但幾乎每個 HA 玩家最後都會碰到。這裡給你一份可以按需要跳讀的地圖。
官方應用程式商店(App store)
應用程式(Apps,舊版叫附加元件 Add-on)是跑在 HA OS 上的獨立容器程式,可以想成 HA 主機順便幫你開的一台小伺服器。只有 HA OS 和 HA Supervised 有應用程式商店,HA Container / HA Core 沒有。
路徑:「設定 → 應用程式 → 安裝應用程式」(Settings → Apps → Install app)。
會用到應用程式的時機:
- 要跑 Zigbee2MQTT / ESPHome 等本地服務。
- 要 SSH 進主機除錯。
- 要用 Node-RED 這種視覺化流程工具。
幾個最常裝的官方應用程式:
- File editor——瀏覽器裡直接改 YAML 檔,適合輕度編輯。
- Studio Code Server——完整 VS Code 網頁版,寫大量 YAML 或 template 首選。
- Samba share——把 HA 的
/config開成網芳,讓你用電腦的檔案總管操作。 - Terminal & SSH——SSH 進 HA OS,做進階排錯。
- Node-RED——拖拉式的視覺化自動化工具,複雜流程比 UI 好維護。
- ESPHome——燒錄 ESP32 / ESP8266 韌體,DIY 感應器必備。
- Zigbee2MQTT——比 ZHA 支援更多 Zigbee 設備,社群更新快。
- Mosquitto broker——MQTT 訊息代理,Z2M / 很多 DIY 裝置的通訊底層。
HACS(Home Assistant Community Store)
HACS 是社群維護的第三方套件商店,跟官方應用程式商店(App store)是兩件不同的事:
- 官方應用程式商店:管的是「跑在 HA OS 上的獨立容器程式」,官方審核。
- HACS:管的是「塞進 HA 本體裡跑的東西」——自訂整合(integrations)、自訂儀表板卡片(Lovelace cards)、主題、python_script、AppDaemon 應用。無官方審核,作者自負品質。
什麼時候該裝 HACS?當你發現「官方整合裡沒有我這台設備」或「內建的卡片不夠好看 / 不夠強」時,八成 HACS 上有解。裝之前不用急,先確認官方沒有支援再考慮。
安裝流程重點(詳細看官方文件):
- 裝 HACS 本身需要 SSH / Studio Code Server 進 HA 執行一段安裝腳本(近期版本也支援用應用程式「HACS Bootstrap」一鍵處理)。
- 然後在 HA 加入一個新的整合「HACS」,會顯示一組 GitHub 裝置碼(device code)與網址;瀏覽器打開網址、登入 GitHub、貼上裝置碼授權即可(不用再手動產生 personal access token)。
- 完成後左側選單會多一個 HACS 圖示,裡面就是社群套件市集。
官方安裝文件:https://hacs.xyz。步驟隨版本會變,請以官方為準。
裝完常見套件方向:
- 自訂儀表板卡片:
mushroom-cards(現代簡潔)、button-card(自訂到極致)、mini-graph-card(漂亮的歷史曲線)、swipe-card(手機用左右滑動)。 - 社群整合:小米 / Aqara localized、Tuya localized(避開國際版雲端)、SwitchBot API、台電電費、氣象局預報。
- 主題:Google Home、Graphite、Noctis 等社群主題。
遠端連線的四條路
在家連 HA 用區網 IP 就夠了,但一旦出門想遠端看攝影機、關燈、收通知,就需要外網連線。有四種主流方案:
| 方案 | 成本 | 安全性 | 難度 | 適合 |
|---|---|---|---|---|
| Nabu Casa | USD $6.5/月 | 高 | 很低 | 大部分人。順便支持 HA 官方 |
| DuckDNS + Let's Encrypt | 免費 | 中(暴露公網) | 中 | 要免費 + 有公網 IP + 願意設路由器 |
| Tailscale / ZeroTier | 免費(個人) | 最高 | 低 | 技術玩家、在意隱私、不需要分享給非家人 |
| Cloudflare Tunnel | 免費 | 中高 | 中 | 沒公網 IP(電信 CGNAT)也能對外 |
1. Nabu Casa(Home Assistant Cloud)——官方付費雲端。最省心,付了錢裝好整合就通了。額外送 Google Assistant / Alexa 連動、Cloud TTS(雲端語音合成)。不想折騰的第一首選,也是唯一能順便贊助 HA 開發的方案。
2. DuckDNS + Let's Encrypt——用免費的動態 DNS 服務把家裡浮動 IP 綁一個網址(如 myhome.duckdns.org),再用 Let's Encrypt 拿免費 SSL 憑證。需要在路由器做 port forward。缺點是把 HA 暴露到公開網路,是攻擊面最大的方案。
3. Tailscale / ZeroTier——這是「VPN 到你家」的做法。手機裝 Tailscale App,家裡 HA 也裝,兩者形成一個私人區網,出門也能像在家一樣用區網 IP 連 HA。最安全因為完全不暴露到公網。缺點:家人也要裝 App、無法分享給外人(不能像貼網址一樣傳給水電工)。
4. Cloudflare Tunnel——Cloudflare 幫你在 HA 和它的 CDN 之間建立一條加密隧道,你不用有公網 IP、不用開路由器 port,Cloudflare 會提供一個網址讓你連進來。適合家裡是電信業者 CGNAT(沒公網 IP)的環境,還能順便用 Cloudflare 的 WAF 防護。
資安警告
如果你不知道上面這些是什麼,請直接用 Nabu Casa 或 Tailscale,不要自己開 port。這不是折騰技術能省下的錢,是把家裡整套智慧家庭 + 攝影機 + 門鎖權限公開在網路上的風險。
常見問題
HACS 裝的東西會不會拖慢 Home Assistant?
會,但要看你裝的是哪一種——HACS 裡有兩類完全不同的東西:
| 類型 | 跑在哪 | 影響 |
|---|---|---|
| 自訂整合(custom integration) | HA 主機的後端,跟內建整合搶同一份 CPU 和記憶體 | 啟動變慢、寫得爛的會卡住整個啟動流程、有的會頻繁打外部 API |
| 自訂卡片 / 主題(Lovelace card、theme) | 你的瀏覽器或手機 App | 幾乎不影響主機,只是儀表板第一次載入多下載幾個檔案 |
所以「裝了 20 個漂亮卡片」通常沒事,「裝了 8 個自訂整合每個都在輪詢雲端」就會有感。HACS 本身也會定期去 GitHub 查更新,不過那是背景的小流量。
懷疑是誰在拖時間,最乾淨的判斷方式是用安全模式開一次(作法看下一題):安全模式完全不載入自訂整合、自訂卡片和自訂主題,如果安全模式下順得像新的一樣,那答案就很明顯了。
更新完 Home Assistant,某個 HACS 裝的東西壞了 / 開不起來,怎麼辦?
這是玩 HACS 的必經之路,別緊張,照順序來:
-
用安全模式把 HA 救起來
設定 → 系統 → 右上角「重新啟動 Home Assistant」→ 選「以安全模式重新啟動」。這會載入 HA 核心,但不載入任何自訂整合、自訂卡片、自訂主題,讓你至少進得去介面。
-
看紀錄找出兇手
設定 → 系統 → 紀錄。壞掉的自訂整合通常會留下一整段錯誤,第一行就會寫是哪個
custom_components出事。 -
去那個套件的 GitHub 看 Issues
HA 每個月都有新版,大改版當天作者的 repo 一定已經有人開好 issue 了。通常等作者發個更新版就好,HACS 裡按更新就解決。
-
等不了就先移除它
在 HACS 裡把該套件移除,重開機讓 HA 恢復正常,之後再裝回來。少一個功能總比整台開不起來好。
-
真的救不回來就還原備份
回到第 9 章的備份還原流程,退回更新前那一版。這就是為什麼升級前一定要有備份。
同一個功能,什麼時候該找應用程式(舊稱附加元件)、什麼時候該找 HACS?
用「這東西需不需要獨立跑一支程式」來分:
| 你想要的 | 該去哪找 |
|---|---|
| 一支獨立的伺服器程式:MQTT broker、Zigbee2MQTT、ESPHome、Node-RED、資料庫、SSH | 應用程式(Apps,舊稱 Add-on) |
| 讓 HA 認得某個官方沒支援的裝置或服務 | HACS 的自訂整合 |
| 儀表板要更好看、更特別的卡片、換主題 | HACS 的卡片 / 主題 |
Zigbee2MQTT 是最容易搞混的例子,因為它兩邊都會碰到:程式本體是應用程式(或你自己跑的容器),裝置要出現在 HA 裡靠的是 MQTT 整合的自動探索,而它那個漂亮的網路地圖卡片又是 HACS 上的東西。三件事,三個地方,不是同一個。
我是 Docker(HA Container)裝的,沒有應用程式商店(舊稱附加元件商店),是不是就玩不了這些?
不是,你只是要多做一步。分成兩件事看:
- HACS 照樣能用。HACS 支援 OS / Supervised、Container、Core 三種安裝方式。Container 和 Core 是用同一份官方下載腳本:進到容器(或主機)的終端機執行
wget -O - https://get.hacs.xyz | bash -,重開 HA,再到整合頁面加入 HACS 走 GitHub 授權就完成了。OS / Supervised 則是直接加 HACS 的應用程式儲存庫(app repository)來裝。步驟會隨版本調整,以 hacs.xyz 的說明為準。 - 應用程式的功能要自己開容器。應用程式說穿了就是 Supervisor 幫你管理的 Docker 容器。Zigbee2MQTT、ESPHome、Mosquitto、Node-RED 這些都有各自的官方 Docker image,你在
docker compose裡多寫一段就有了,功能一模一樣,差別在更新、備份、設定介面都要你自己顧,不會出現在 HA 的介面裡,也不會被 HA 的備份包進去。
遠端連線這四種,到底哪個最安全?
只論安全性,排序是這樣:
-
Tailscale / ZeroTier —— 最安全
因為你的 HA 從來沒有出現在公開網路上。沒有網址可以掃、沒有 port 可以敲,攻擊者連目標都找不到。代價是每個要用的人都得裝 App 並被你授權。
-
Nabu Casa —— 安全且省心
官方雲端幫你處理憑證和連線通道,一樣不用在路由器開 port。你要顧的就是自己的 HA 帳號密碼。
-
Cloudflare Tunnel —— 中上,但看你怎麼設
不用開 port 這點很好,但預設情況下那個網址是任何人都連得到的,只是他們會停在 HA 的登入頁。要拉到「安全」等級,得再搭 Cloudflare Access 之類的身分驗證擋在前面。
-
DuckDNS + port forward —— 最危險
把 HA 直接掛在公開網路上,本文前面的資安警告講的就是這條路。
不管你選哪一條,兩步驟驗證(MFA)都要開——設定方法在第 5 章。這是唯一一件不管用哪個方案都必做的事。
Nabu Casa 一個月 6.5 美金,值得訂嗎?
先看你付的到底是什麼。目前官方定價是每月 6.5 美金、包年 65 美金(歐元區是每月 €7.50、包年 €75),而且可以免費試用一個月再決定。內容包含:
- 安全的遠端連線,不用碰路由器。
- Google Assistant 與 Amazon Alexa 連動——自己接這兩個要申請開發者帳號、設 OAuth,是真的麻煩。
- Assist 語音助理用的雲端語音合成(TTS)與語音辨識(STT)。
- 相機 WebRTC 連線在無法直連時的中繼(TURN)伺服器,人在外面看相機時有差。
- 你的錢直接進 Home Assistant 的開發,這個專案沒有廣告也不賣你的資料,就是靠這個活。
建議這樣判斷:
| 你的情況 | 建議 |
|---|---|
| 只想要遠端連線,家裡沒有語音助理,也不介意每個人都裝 App | Tailscale 免費就夠了 |
| 要接 Google / Alexa,或家裡有人不想裝 VPN App | Nabu Casa,省下的時間遠超過這個錢 |
| 常在外面看家裡的相機 | Nabu Casa,中繼伺服器這點自架很難補 |
| 你就是想學這些網路技術 | 自己架,但務必照資安警告那節做好 |
Cloudflare Tunnel 是免費的,我可以用它在外面看家裡的攝影機嗎?
技術上可以,但這是最容易踩線的用法。Cloudflare 的 CDN 條款對「透過它傳送不是託管在 Cloudflare 自家服務上的影片與大型檔案」一直有限制——後來的條款改版明確寫的是:影片內容要放在 Cloudflare 自己的服務(Stream、Images、R2)上才不受限。你家攝影機的即時串流顯然不屬於這一類。
偶爾點開看一眼大概不會怎樣,但如果你在儀表板上掛四台相機整天串流,就是拿長期大流量去測人家的耐性,帳號被限制或被關掉都不能算冤枉。
想在外面順順地看相機,比較妥當的選擇:
- Nabu Casa——相機遠端串流本來就是它的功能之一,還有 TURN 中繼幫忙。
- Tailscale / ZeroTier——等於在自己的私人網路裡看,沒有第三方條款問題,只是路由繞遠時畫質會受手機網速影響。
Cloudflare Tunnel 比較適合的定位是:家裡是電信 CGNAT 拿不到公網 IP、主要需求是遠端開關燈和看狀態,而不是當監視器的影像通道。