远程访问 Home Assistant 完整方案
为什么需要远程访问
出门在外时想控制家里的 Home Assistant、查看摄像头画面、让自动化知道"主人离家了"——这些都需要远程访问。Home Assistant 有四种远程访问方案,各有优劣。
方案对比
| 方案 | 难度 | 成本 | 隐私 | 速度 | 说明 |
|---|---|---|---|---|---|
| Nabu Casa Cloud | ⭐ 极低 | 订阅制 ~$5/月 | ✅ 高(端到端加密) | 快 | 官方推荐 |
| DuckDNS + Let's Encrypt | ⭐⭐⭐ 中 | 免费 | 中 | 快 | 免费但需要配置 |
| Tailscale | ⭐⭐ 低 | 免费版够用 | ✅ 高 | 快 | VPN 方案 |
| 自建 WireGuard VPN | ⭐⭐⭐⭐ 高 | 免费 | ✅ 最高 | 快 | 完全自主 |
方案一:Nabu Casa Cloud(推荐)
Nabu Casa 是 Home Assistant 母公司的官方云服务:
步骤
- Settings → System → Nabu Casa → Join Home Assistant Cloud
- 选择订阅(月付 / 年付)
- 付款 → 自动配置完成
特点
- 零配置:不用管端口转发、动态域名、SSL 证书
- 自动 HTTPS:Home Assistant 给你分配一个
xxx.nabu.casa域名,自动 SSL - 端到端加密:Nabu Casa 云端只是转发加密字节流,无权读取你的实例内容
- 额外福利:远程语音处理(比本地快)、Alexa / Google Home 集成入口
- 自动连接 Companion App:手机 App 自动走 Cloud 访问,不需要额外配置
成本参考
| 方案 | 价格 |
|---|---|
| 月付 | ~$5 / 月 |
| 年付 | ~$50 / 年(省 2 个月) |
适合人群
不想折腾、对价格不敏感、想要最省心方案的用户。Home Assistant 团队靠这个服务维持运营。
方案二:DuckDNS + Let's Encrypt(免费但复杂)
架构
外网 → duckdns.org 域名 → 路由器 443 端口转发 → Home Assistant(Let's Encrypt SSL)
步骤
- 路由器端口转发:把外网 443 端口转发到 Home Assistant 的 8123 端口
- DuckDNS(免费动态 DNS):去 duckdns.org 注册一个域名(如
my-home.duckdns.org) - Home Assistant OS:Settings → Apps → 搜索 DuckDNS → 配置域名 + Token → Start
- Home Assistant OS:Settings → Apps → 搜索 Let's Encrypt → 配置证书 → Start
- HTTP:Home Assistant 默认走 HTTP。Let's Encrypt 证书配置后要让 Home Assistant 走 HTTPS
坑
- 运营商不给公网 IP:很多国内运营商给的是 CGNAT 私网 IP → 端口转发无效。解决:打客服电话要公网 IP(大部分运营商可以给)
- 路由器不支持自定义证书:Home Assistant OS 的 Let's Encrypt 有配置向导但不是最用户友好的
- 证书续期:Let's Encrypt 证书 3 个月到期,需要自动续期(App 会自动处理但偶有故障)
- 安全风险:直接暴露端口到公网 → Home Assistant 登录页面临爆破风险
方案三:Tailscale(VPN 方案)
原理
Tailscale 创建一个覆盖整个公网的私有 VPN 网络——家里的 Home Assistant 和你的手机都在这个虚拟网络里,不管实际位置在哪都能通过虚拟 IP 直连。
步骤
- Home Assistant OS:Settings → Apps → 搜索 Tailscale → Install → Start
- 登录 Tailscale 账号 → 把 Home Assistant 节点加进你的 Tailnet
- 手机 App Store 装 Tailscale → 登录同一个账号
- 手机上就可以用 Home Assistant 的内网 IP 访问了(如
http://100.x.x.x:8123) - Companion App 里的 External URL 可以不填——Tailscale 连接上时自动用 VPN
优点
- 零端口转发:不需要动路由器
- 隐私最好:数据不经过任何第三方服务器(P2P 直连)
- 免费版够用:支持 100 个设备
- 覆盖全球:在中国、海外都能用
缺点
- Companion App 需要 Tailscale App 同时在手机上运行
- 国内可能需要额外措施:Tailscale 服务器在海外,国内连接可能较慢或不稳定(取决于运营商)
Tailscale 免费版 vs 付费版
| 方案 | 价格 | 设备数 | 说明 |
|---|---|---|---|
| 免费版 | $0 | 3 人 × 100 设备 | 个人家庭足够 |
| 付费版 | ~$5/用户/月 | 无限制 | 适合团队 |
方案四:自建 WireGuard VPN
如果你已经有一台 VPS(云服务器),可以自己跑 WireGuard:
架构
手机 → WireGuard VPN → 家里的 WireGuard Server → Home Assistant
优点
- 完全自主:不依赖任何第三方
- 性能最好:WireGuard 是目前最快的 VPN 协议
缺点
- 门槛最高:需要 VPS、Linux 运维、WireGuard 配置
- 成本:VPS 费用 ~$5/月起
推荐路径
| 你的情况 | 推荐方案 |
|---|---|
| 不想折腾、想最省心 | Nabu Casa Cloud |
| 有 VPS、会 Linux | Tailscale 或 WireGuard |
| 没 VPS、有公网 IP、愿意动手 | DuckDNS + Let's Encrypt |
| 国内用户 | Tailscale 或 国内自建 WireGuard + 国内 VPS |
安全提醒
无论用哪种远程访问方案:
- 一定要启用双因素认证(2FA):Settings → People → 你的用户 → Security → Enable two-factor authentication
- 不要用弱密码:管理员密码要足够长、足够复杂
- 日志定期检查:Developer Tools → Logs,看看有没有可疑的登录尝试