本帖最后由 coriding 于 2020-3-16 14:26 编辑
Home assistant 配置ssl 启用https
[配置环境]
- Home assistance 版本 高于 0.89 release.
- 已经实现DDNS
- 已经申请SSL证书
- 已经有公网
IP
- 硬件为
小米路由器 +qnap
[配置步骤]
1 申请DDNS服务
【目的】动态解析自己的公网IP地址
【方法】有很多种DDNS提供服务商,什么花生壳,阿里本身也有,就要看你的设备支持什么,如果是nas,那可以使用自己厂家的DDNS来实现。申请好了,这时候你就获得一个域名、账号、密码,比如说域名是coriding.myqnapcloud.com
1.1 申请个性化域名(非必须步骤,可跳过)
【目的】实现自己想要的域名,纯折腾。
【方法】建议申请阿里的域名,top域名才20左右一年,申请方式 阿里云 ,比较简单方便,特别是有淘宝账户的朋友,实名认证都很快捷。这里你可以申请到各种自己喜欢的域名,比如说coriding.com
【解析】想使用个性化域名需要在阿里云域名解析里面添加相应记录
28
这里需要在主机记录选@ 或者www ,在记录类型选CNAME ,记录值填上你申请的DDNS的域名coriding.myqnapcloud.com ,正常情况下你就可以使用coriding.com 去访问你的公网IP了
1.2 路由器配置DDNS服务并转发端口
这个简单,直接在路由器上输入用户名密码和服务地址就行了。配好相应的端口转发策略,如果你不想输入端口,默认使用https的443,那么你需要在路由器上配置外网口443转内网口8123(默认)或者你的自定义端口
2 SSL证书申请
直接在阿里云上申请免费的SSL证书,一年期,个人用户应该够用了。在控制台的SSL证书里面申请。自己找一下就行
52
申请好了以后,提交审核,大概1个小时后就能拿到证书,下载证书,选择其他类型,然后你会得到两个文件
- SSLcertificate.pem // 公钥
- SSLprivatekey.key //私钥
然后把这两个文件放到服务器你能找到的地方,该路径在下面将使用
3 在homeassistant中配置相关参数
直接上配置
http:
server_port: 8123 #可以不要
base_url: https://coriding.com # 你的阿里云域名
ssl_certificate: /config/ssl/SSLcertificate.pem #公钥文件地址,注意放在有读取权限的文件夹
ssl_key: /config/ssl/SSLprivatekey.key #私钥文件地址,注意放在有读取权限的文件夹
注意:官方已经更新**Authentication Providers** ,网上很多代码未更新,导致http 开启ssl 时出现错误
homeassistant:
auth_providers:
- type: homeassistant
- type: legacy_api_password
api_password: !secret http_password
注意这里的目录需要是绝对路径,base_url 要用全路径
重启就可以了。
参考:
Home Assistant 系列提高篇 - 外网安全访问
官方HTTP组件说明
|