转载自远程穿透的文章:【智能家居】Home Assistant入门安装并内网穿透实现远程安全控制


前言

Home Assistant(以下简称HA)是个开源的智能家居平台,也叫家庭助手,就像一个软件,比如我们的QQ软件,微信软件。


Home Assistant把家中的智能家居设备整合到HA中,它能够接入的设备非常的多比如大名鼎鼎的小米、博联、易微联、飞利浦、特斯拉…,也可以接入软件,让后让各个品牌之间的设备可以联网。


一个设备,在没接入HA之前,它是个单一设备,只能在自己的生态里面联动,一旦接入到HA上,它就活了,它可以在所有接入的平台里面自己联动,实现各种各样的自动化。


下面介绍Home Assistant 面板+cpolar内网穿透实现在外随时随地远程访问。


1. 安装Home Assistant

这里使用vmwhere 虚拟机进行安装,通过Home Assistant官网的下载链接下载,下载后解压。


vmdk文件:https://www.home-assistant.io/installation/linux#install-home-assistant-container


image.png


然后创建一个虚拟机


image.png


选择自定义虚拟机


image.png


直接下一步


image.png


选择稍后安装操作系统


image.png


然后选择Linux,版本选择4.x内核64位


image.png


设置一下虚拟机名称,然后下面安装的位置可以自己选择,也可以默认


image.png


处理器可以选择1个,内核选择两个,这里配置的数量越多,消耗电脑性能越大,可根据本机配置设置


image.png


按照官网的要求,需2G以上,这里选择3G


image.png


选择NET网络模式


image.png


直接下一步


image.png


磁盘类型可以默认,也可以选择SATA


image.png


这里需要选择现有磁盘


image.png


这里选择我们上面官网下载的.vmdk文件


image.png


然后选择保持现有格式


image.png


最后,点击完成即可


image.png


安装成功后启动虚拟机,启动完成后我们可以看到局域网ip地址和端口信息,8123就是管理面板的端口


image.png


2. 配置Home Assistant

启动虚拟机后,我们在浏览器上,输入Home Assistant的局域网ip地址加上8123的端口号,就可以看到管理面板


image.png


首次访问登陆,需要创建账户,填写相关用户名密码,创建账户


image.png


地区选择,可以手动定位,也可以选择自动检测


image.png


接下来默认点击下一步即可


image.png


然后点击完成,这里提示添加智能设备,可以先点击完成,后面自己设置


image.png


然后就进入了控制面板界面


image.png


3. 安装cpolar内网穿透

在局域网下的浏览器访问成功后,我们接下来用cpolar内网穿透将其映射到公网上,实现在公网环境下也可以远程访问家里的HA,不需要公网IP,也无需设置路由器。


cpolar官网:https://www.cpolar.com/


访问cpolar官网,注册一个账号,然后下载并安装客户端,具体安装教程可以参考官网文档教程。


3.1 windows系统

在cpolar官网下载安装包后,双击安装包一路默认安装即可。


3.2 Linux系统

cpolar支持一键自动安装脚本,详细请参考文章教程


Linux安装cpolar内网穿透(https://www.cpolar.com/blog/linux-system-installation-cpolar)

3.3 macOS系统

可通过homebrew安装,可参考文章教程


macOS安装cpolar内网穿透(https://www.cpolar.com/blog/macos-installation-cpolar)

image.png


4. 映射Home Assistant端口

cpolar安装成功后,在浏览器上访问本地9200端口,访问cpolar web UI管理界面【http://localhost:9200】,使用cpolar账号登录。


image.png


点击左侧仪表盘的隧道管理——创建隧道,创建一个http隧道,指向8123端口 ,即Home Assistant的端口


隧道名称:可自定义命名,注意不要与已有的隧道名称重复

协议:选择http

本地地址:home assistant 局域网ip+端口

域名类型:免费选择随机域名

地区:选择China vip

点击创建


image.png


隧道创建成功后,点击左侧的状态——在线隧道列表,查看所生成的公网地址,然后复制地址


image.png


5. 公网访问Home Assistant

打开浏览器,使用刚刚获取的公网地址进行连接访问,此时会出现一个400的错误,如果没有的话,可以跳过此步骤


image.png


我们查看日志,看一下提示具体错误,点击左下角配置,点击系统


image.png


可以看到日志,点击日志


image.png


打开日志后,我们可以看到这么一个问题,大致意思是:从192.168.191.1收到来自反向代理的请求,但HTTP集成未针对反向代理进行设置,所以我们需要修改一下配置文件


image.png


解决方法:打开面板,找到左下角配置,点击加载项


image.png


去商店下载一个文件编辑器,我们需要修改一个配置文件


image.png


找到File editor 文件编辑器


image.png


点击安装这个File editor


image.png


安装成功后点击启动


image.png


然后为了方便下次使用,可以勾选一个在侧边栏显示


image.png


开启后,我们从侧边栏即可进入,然后点击左上角文件目录

image.png


找到并且点击configuration.yaml的文件,点击一下即可

image.png



在文件上添加如下配置,下面ip地址就是我们上面查看日志提示的那个ip地址:


http:

  use_x_forwarded_for: true

  trusted_proxies:

    – 192.168.191.1

 image.png


然后我们打开虚拟机关机,重启虚拟机,接着再次输入公网地址访问,即可成功


image.png


6. 固定公网地址

由于以上使用cpolar所创建的隧道使用的是随机公网地址,24小时内会随机变化,不利于长期远程访问。因此我们可以为其配置二级子域名,该地址为固定地址,不会随机变化。


注意需要将cpolar套餐升级至基础套餐或以上,且每个套餐对应的带宽不一样。


6.1 保留一个固定二级子域名

登录cpolar官网,点击左侧的预留,选择保留二级子域名,设置一个二级子域名名称,点击保留,保留成功后复制保留的二级子域名名称


image.png


保留成功后复制保留的二级子域名地址


image.png


6.2 配置固定二级子域名

访问http://127.0.0.1:9200/,登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的Home Assistant隧道,点击右侧的编辑


image.png


修改隧道信息,将保留成功的二级子域名配置到隧道中


域名类型:选择二级子域名

Sub Domain:填写保留成功的二级子域名

点击更新


image.png


更新完成后,打开在线隧道列表,此时可以看到公网地址已经发生变化,地址名称也变成了保留过的二级子域名名称,将其复制下来

image.png


然后使用固定https地址打开浏览器访问,同样访问成功,且域名不会发生变化.



image.png


————————————————

版权声明:本文为CSDN博主「蛋超饭不要加蛋」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/m0_65485317/article/details/130395704