养生 装修 购物 美食 感冒 便秘 营销 加盟 小吃 火锅 管理 创业 搭配 减肥 培训 旅游

如何使用域名访问Home Assistant

时间:2024-10-19 10:21:41

利用加载项Nginx咯悝滩镞ProxyManager快速配置,可以实现通过域名HTTPS隐藏端口方式访问HomeAssistant管理系统,默认配置后直接访问会提示晗稍噔猷:400:BadRequest错误信息,本文将介绍如何正确设置HomeAssistant去实现通过域名正常访问。

工具/原料

树莓派3B

HASSOS10.1

supervisor2023.04.1

方法/步骤

1、HomeAssistant是一个基于Python3开发的开源自动化设备控制平台。可以跟踪和控制网络中的所有设备,并实现自动化控制。系统默认使用8123端口进行管理,带端口访问既不方便也不安全。

如何使用域名访问Home Assistant

2、如果系统只在内部运行,相对还安全些,如果需要对互联网提供服务或需要映射后对互联网提供服务,使用http端口访问时容易被中间人截获数据,拿到API的KEY后就可以远程控制,存在安全风险。

如何使用域名访问Home Assistant

3、要实现域名访问的方式有多种,如直接在HomeAssistant控制台,配置-系统-网络中,配置HomeAssistantURL选项即可(访问时带端口)

如何使用域名访问Home Assistant

4、或者使用加载项Let'sEncrypt和NGINXHomeAssistantSSLproxy来实现https的访问,但配置相对复杂,本文不做介绍。

如何使用域名访问Home Assistant

5、本文主要介绍使用NginxProxyManager加载项进行域名访问设置。首先在配置-加载项-加载项商店里找到NginxProxyManager,安装后启动服务,查看日志如果启动错误,报DB类的错误,可以先安装下加载项MariaDB并进行参数配置。

如何使用域名访问Home Assistant

如何使用域名访问Home Assistant

6、再重新启动NginxProxyManager,查看运行日志,如图为正常启动信息。

如何使用域名访问Home Assistant

7、NginxProxyManager的默认管理地址是81端口,直接访问你的服务器ip:81即可访问管理登录界面,输入初始账号admin@example.com,密码changeme(进入后可在后上角用户头像位置点击修改密码)即可登录。

如何使用域名访问Home Assistant

8、在Host菜单下点击proxyhost进入域名管理项,点击右侧Addproxy咯悝滩镞 host添加域名项。域名是需要对外提供服务(需要提前解析到该服务器IP或是映璨阑瑭萄射服务前端IP);ForwardHostname/ IP可以直接填写:homeassistant或者是你访问管理台的IP,端口为系统的8123,开启websocket support支持。先不要配置ssl证书,点保存,生效服务后进行http访问测试。

如何使用域名访问Home Assistant

如何使用域名访问Home Assistant

9、直接浏览器访问刚才填写的域名,如果配置正常茧盯璜阝就可以直接出现登录界面,说明配置正常,可以到NginxProxyManager中开启SSL证书配置了。如果访问时出现【桃轾庾殇400:BadRequest】错误提示,需要在HomeAssistant设置中开启反向代功能并设置白名单。

如何使用域名访问Home Assistant

如何使用域名访问Home Assistant

10、在HomeAssistant的配置中设置启用反代功能,并设置IP白名单功能步骤如蛴蛩钔淞下:首先到系统日志中查看请求错误信息,酴兑镗笄查找到实际请求的IP。如:Arequestfromareverseproxywasreceivedfrom172.30.33.6,这条日志中的172.30.33.6为实际请求IP,可以添加到白名单中

如何使用域名访问Home Assistant

11、然后在文件编辑器中打开:/config/configuration.yaml添加:http:use_x_forwarded_for:truetrusted_proxies:-127.0.0.1-172.30.33.6-::1保存后,重启

如何使用域名访问Home Assistant

如何使用域名访问Home Assistant

12、重启后就可以直接使用域名不带端口的方式访问了。然后就可以在NginxProxyManager的域名配置中,修改配置SSL证书(自动模式),以启用HTTPS访问模式。

如何使用域名访问Home Assistant

13、也可以提前先准备好证书,设置SSL时选择已有证书:进入SSLcertificates证书管理,右侧的AddSSLcertificates可以选择申请Let'sEncrypt免费证书和Custom自定义证书(导入现有域名证书)。

如何使用域名访问Home Assistant

如何使用域名访问Home Assistant

如何使用域名访问Home Assistant

14、证书配置完成后,可以直接使用https模式访问控制台了,包括使用API接口时也可以使用安全模式传输了,增加了系统的安全性。

如何使用域名访问Home Assistant

© 一点知识