点击关注我的Telegram群组和微信公众号

MENU

为Home Assistant 开启HTTPS访问

2021 年 10 月 08 日 • 阅读: 14541 • 技术,教程

Home Assistant: https://www.home-assistant.io/
在 ESXi 6.7 下安装 Home Assistant 智能家居管理系统

前言

在 ESXi 6.7 下安装 Home Assistant 智能家居管理系统一文中,HA已经被成功搭建。和其它很多HTTPS方案类似,使用Nginx反代是给Home Assistant上HTTPS的方案,在Home Assistant插件商店中已经有了官方的SSL插件方案。

上传SSL证书

  • 在Home Assistant后台管理界面中,选择Supervisor
  • 选择Add-on Store标签页
  • 找到并点击进入Samba share
    SMB Add-on
  • 点击Install安装
  • 点击Configuration标签页

    • 设置usernamepassword字段,以设置SMB的用户名和密码
    • allow_hosts字段中添加你的信任的IP段,通常为你的内网网段
      SMB Config
  • 点击Save以保存设置
  • 点击Info标签页
  • 点击Start来启动SMB服务
  • 使用刚刚设置的SMB帐号密码在计算机中访问\\<Home_Assistant_IP_Addresss>\ssl网络目录

    • 在此处,我的配置是\\192.168.50.75\ssl
      SSL SMB
    • 在目录下上传你的SSL证书和密钥

配置HTTPS

  • 在插件商店中找到并点击进入NGINX Home Assistant SSL proxy
    Nginx proxy add-on
  • 安装,随后进入Configuration标签页

    • domain字段设置你为HA准备的域名
    • certifile字段中填写证书文件名
    • keyfile字段中填写密钥文件名

    SSL Config

  • 点击Save以保存设置
  • 返回Info标签页并启动NGINX服务
  • 不要关闭当前使用IP访问的HA页面,在新标签页中使用刚刚配置的域名访问HA,你会看到一个400错误,这是因为HA设置了反代白名单机制
  • 在HA的左下角进入Configuration菜单,随后进入Log标签页

    • 你将看到一个IP地址尝试反代被拦截的错误,记住这个IP
  • 使用SMB访问```\\<Home_Assistant_IP_Addresss>\config网络目录

    • 打开并编辑configuration.yaml,并添加以下内容
    • 将你刚刚在日志中看到的被拦截的IP加入trusted_proxies
    http:
    use_x_forwarded_for: true
    trusted_proxies:
     - 172.30.33.0
  • 重启Home Assistant服务
  • 此时,你便可以通过自定义域名和HTTPS访问你的后台页面了

HA HTTPS

返回文章列表 文章二维码 打赏
本页链接的二维码
打赏二维码
添加新评论

已有 3 条评论
  1. 感谢大神 感谢大神

    大神,我用内网其他有SSL证书的设备反向代理到HA服务器,显示400: Bad Request,是不是HA不让反向代理吗?

    1. @感谢大神参考这个链接解决
      https://community.home-assistant.io/t/home-assistant-400-bad-request-docker-proxy-solution/322163/6

  2. 感谢大神 感谢大神

    打开并编辑 configuration.yaml,并添加以下内容
    将你刚刚在日志中看到的被拦截的 IP 加入 trusted_proxies

    大神这一步是否可以再详细些 看不到拦截的ip