xjianfei 发表于 2024-4-11 11:30:02

ha外网访问过程梳理

条件:
1、有公网ip或ip6
2、有自己的域名.ps: 这个很好弄,阿里云或其他域名平台,申请 免费域名或便宜的域名;
3、已经构建好自己的DDNS。因为我是自己是从nas一路玩过来的,所以这些都已经弄好,没弄好的,可以百度搜索一下这些教程,网上太多了

一、正式开始
1.home Assisstant服务搭建好后,http://[本地ip]:8123可以登录



2. HA和其他npm不一样的地方在于,它需要手动开启允许代理和反代,开启方式如下:
编辑 /配置目录/configuration.yaml,添加如下内容:
http:
use_x_forwarded_for: true
trusted_proxies:
    - 192.168.3.90 # Add the IP address of the proxy server。
ps:注意这时原192.168.3.90需要配置成你自己的npm或者nginx的ip


添加内容后注意重启home Assistant

3. 配置好npm或者nginx代理内容:
npm如下

图中标号1: 自己的域名
标号2: 自己本地的IP+端口
标号3: 这里注意,一定要勾选websockets Support,因为在登录界面输入用户和密码之后,会有一个websockets连接,如果不勾选,websocket连接无法成功,导致读取不到ha服务的数据

3.根据自己情况配置用https还是http
https的话就在ssl选项里添加相应的证书,这里不贴了,上述过程中红色加粗字体是注意事项,欢迎大家讨论交流

hhh. 发表于 2024-4-11 12:23:50

使用群晖反向代理,docker自动更新证书。

发表于 2024-4-11 12:41:07

谢谢楼主分享

http:
use_x_forwarded_for: true
trusted_proxies:
    - 192.168.3.90 # Add the IP address of the proxy server

这里的ip地址,我测试是如果是用HAOS的话,得使用docker内网网址:
172.30.33.0/24

隔壁的王叔叔 发表于 2024-4-11 12:50:25

感谢分享,请问楼主,我直接用了ipv6的ddns地址+8123,第二步和第三步没做,有没有什么不妥?望不吝赐教。

xieahui 发表于 2024-4-11 13:43:01

隔壁的王叔叔 发表于 2024-4-11 12:50
感谢分享,请问楼主,我直接用了ipv6的ddns地址+8123,第二步和第三步没做,有没有什么不妥?望不吝赐教。 ...

那是反代和证书
好像无所谓,应该是不能用https访问

yuhuanfan 发表于 2024-4-11 13:48:32

NGINX Home Assistant SSL proxy这个加duckdns好用

xjianfei 发表于 2024-4-11 14:10:54

xieahui 发表于 2024-4-11 13:43
那是反代和证书
好像无所谓,应该是不能用https访问

是的,另一个是用域名来访问,可以隐藏端口,把外部只开放统一的https端口和http端口就好了,安全性拉满

xjianfei 发表于 2024-4-11 14:11:46

yuhuanfan 发表于 2024-4-11 13:48
NGINX Home Assistant SSL proxy这个加duckdns好用

duckdns没用过,应该就是ddns吧

xjianfei 发表于 2024-4-11 14:13:09

囧 发表于 2024-4-11 12:41
谢谢楼主分享

http:


这个主要取决于你的npm 或nginx部署的内网地址,其实意思就是允许通过npm和nginx代理来进行外网访问

xjianfei 发表于 2024-4-11 14:14:27

hhh. 发表于 2024-4-11 12:23
使用群晖反向代理,docker自动更新证书。

是的,我其实添加了自动更新的任务,但是还没加到npm里面去,后面得空了看一下
页: [1] 2 3 4
查看完整版本: ha外网访问过程梳理