『瀚思彼岸』» 智能家居技术论坛

 找回密码
 立即注册
查看: 20221|回复: 38

[进阶教程] 【六神分享】Hass.io实现HTTPS外网访问并接入天猫精灵

[复制链接]

175

主题

2956

帖子

7555

积分

超级版主

我就是六神

Rank: 8Rank: 8

积分
7555
金钱
4574
HASS币
398

活跃会员教程狂人灌水之王

QQ
发表于 2019-1-19 10:22:29 | 显示全部楼层 |阅读模式
本帖最后由 jyz_0501 于 2019-4-11 16:39 编辑

前言

  新版本0.90以后取消了LAP和信任网络的登陆方式,天猫精灵auth2.0也不需要必须使用https所以可以省略第3和第5步,直接以http方式接入即可。
  • 手头没有群晖,N1懒得捣鼓,所以就可劲折腾树莓派了,当然论坛树莓派的教程和填坑也最多,新手玩起来也更容易。
  • 个人觉得 docker+hassio 是比较适合我了,兼具可玩性和易操作,因为毕竟hassio的插件还没有那么庞大,很多功能和玩法还是需要用命令行去做。
  • 感谢论坛大佬在前面栽树,才有我们这些小白在下面乘凉。鸣谢帖子中提到的各位“植树人”,鸣谢帮助过我的坛友。吐槽:markdown 我这里就是不能用,一点效果也没有。
  • 没有用花生壳,因为猫精不允许用花生壳,还有很多教程贴用的FRP或者NX的,我弄不了觉得麻烦,不如直接用阿里系直接干脆,对接比较方便,域名是阿里的,SSL是阿里的,DDNS用阿里的,猫精也是阿里的,这样方便点。
  • 新手进阶教程

前置准备


  • 一台安装了Hassio的树莓派
  • 天猫精灵 一台
  • 阿里云帐号,进入管理后台,开启API密钥
  • 阿里云域名,并申请免费SSL证书
  • N大的阿里DDNS插件,地址:https://github.com/neroxps/hassio-addons
  • Y大的精灵插件:https://github.com/Yonsm/HAExtra/tree/master/hagenie



1、安装阿里DDNS插件
参考贴:https://bbs.hassbian.com/thread-3499-1-1.html


安装插件

安装插件

安装插件

安装插件

安装完之后,待命,一会再用。

2、获取阿里云开发密钥


登陆阿里云管理控制台,在网页右上角头像处找到accesskeys,选择继续使用Accesskey或者使用子账户都可以,相对来说子账户可以设置权限,更安全,这里只为了讲接入用法,子账户就不讲了,自己调试。

获取密钥

获取密钥

获取密钥

获取密钥


3、获取免费SSL证书


在阿里云管理控制台左侧找到域名产品,进入之后再右侧找到你所购买的域名,点击管理域名,找到免费开启SSL证书,选择第二项Symantec型 免费版,域名处写www,之后确定申请就可以了。

获取SSL证书

获取SSL证书

获取SSL证书

获取SSL证书

获取SSL证书

获取SSL证书

获取SSL证书

获取SSL证书


4、配置阿里DDNS插件

做完前面的步骤,返回hassio的插件里进行配置,按照配置要求。

Options
  • akid(必须): 填写阿里云 Access Key ID 直接控制台去复制
  • aksct(必须): 填写阿里云 Access Key Secret  直接控制台去复制
  • domain(必须): 更新域名的全称,必须而完整填写域名。这里就写申请SSL时填写的www.加域名地址就可以了
  • redo(可选): 单位秒,默认是600秒检测一次。
  • ipapi(可选): 可填写自定义获取域名的url,例如:http://myip.ipip.net



填完保存。

5、配置HA https访问方式,放置SSL证书文件

                               
登录/注册后可看大图

      5.1第一步下载并放置SSL文件:登陆阿里云控制台 页面最下方找到SSL证书 点击进入,在已签发栏目中找到点下载,在右侧弹出栏中选择Nginx 下载,之后将压缩包里的.pem和.key文件 放置到 .homeassistant/ssl 文件夹下,没有的话自行创建。(可以自己重命名一下) 微信截图_20190119224042.png
      5.2第二步:配置configuration.yaml
homeassistant:
  #auth_providers:
    #- type: homeassistant
    #- type: legacy_api_password
    #- type: trusted_networks
http:
  #api_password: !secret http_password
  #trusted_networks:
    #- 127.0.0.1
    #- 192.168.1.1/24
  base_url: https://全域名:8123
  server_port: 8123
  ssl_certificate: /ssl/你的证书文件.pem
  ssl_key: /ssl/你的证书文件.key
  cors_allowed_origins:
    - https://全域名:8123
  ip_ban_enabled: True
  login_attempts_threshold: 50

做完这些以后,检查下配置文件,没问题的话,重启HA
6、配置路由器端口转发


因为我的路由器是小米R2D,没刷其他固件,家里没有ipv6,端口被屏蔽,所以曲线解决外网访问。
1、进入小米路由器(miwifi.com),登陆——高级设置——端口转发;
2、添加转发规则,名称随便写,协议TCP,外部端口8123,内部IP写宿主(树莓派)IP,内部端口8123(端口基本用一一对应的就可以,这样方便)。
3、可以顺手再多添加几个,如果你安装了其他插件的话,然后保存生效。
微信截图_20190119222640.png
到Hassio中启动阿里DDNS插件,看到插件日志绑定了阿里的解析IP地址就大功告成了。这样到此就实现了外网HTTPS访问。

解析成功

解析成功


用手机4G模式下,输入https://www.域名:8123 就可以访问你的Hassio了

7、接入天猫精灵  参考贴:https://bbs.hassbian.com/thread-4758-1-1.html

根据帖子要求,下载Y大或者feversky的精灵插件,按照要求配置吧,不多说了。不会的再留言吧。


评分

参与人数 1金钱 +20 收起 理由
+ 20 论坛有你更精彩!

查看全部评分

回复

使用道具 举报

175

主题

2956

帖子

7555

积分

超级版主

我就是六神

Rank: 8Rank: 8

积分
7555
金钱
4574
HASS币
398

活跃会员教程狂人灌水之王

QQ
 楼主| 发表于 2019-1-22 08:15:03 | 显示全部楼层
HA用户可以考虑使用 L大的阿里DDNS插件:https://bbs.hassbian.com/thread-2980-1-1.html
回复

使用道具 举报

22

主题

519

帖子

1608

积分

金牌会员

Rank: 6Rank: 6

积分
1608
金钱
1089
HASS币
10
发表于 2019-1-19 11:24:08 | 显示全部楼层
占个沙发位
回复

使用道具 举报

7

主题

1975

帖子

5663

积分

论坛元老

流水无味

Rank: 8Rank: 8

积分
5663
金钱
3688
HASS币
145

灌水之王

发表于 2019-1-19 12:40:18 | 显示全部楼层
SSL去了直接接 更简单
回复

使用道具 举报

22

主题

519

帖子

1608

积分

金牌会员

Rank: 6Rank: 6

积分
1608
金钱
1089
HASS币
10
发表于 2019-1-19 12:59:15 | 显示全部楼层
我原来也用的树莓派 但是用一段时间 风扇就很吵
后来就直接改用n1了  完全没声音哈
回复

使用道具 举报

175

主题

2956

帖子

7555

积分

超级版主

我就是六神

Rank: 8Rank: 8

积分
7555
金钱
4574
HASS币
398

活跃会员教程狂人灌水之王

QQ
 楼主| 发表于 2019-1-19 13:00:32 | 显示全部楼层
xieahui 发表于 2019-1-19 12:40
SSL去了直接接 更简单

不是要用auth2认证吗? 因为新版本HA自带了,所以用的SSL

你有更简单的方式?
回复

使用道具 举报

123

主题

4626

帖子

1万

积分

管理员

囧死

Rank: 9Rank: 9Rank: 9

积分
16015
金钱
11304
HASS币
45
发表于 2019-1-19 13:31:05 | 显示全部楼层
亲,markdown需要自己加上[md][/ md]标签~
回复

使用道具 举报

175

主题

2956

帖子

7555

积分

超级版主

我就是六神

Rank: 8Rank: 8

积分
7555
金钱
4574
HASS币
398

活跃会员教程狂人灌水之王

QQ
 楼主| 发表于 2019-1-19 13:43:42 | 显示全部楼层
Jones 发表于 2019-1-19 13:31
亲,markdown需要自己加上[md][/ md]标签~

加了不管用啊  
回复

使用道具 举报

123

主题

4626

帖子

1万

积分

管理员

囧死

Rank: 9Rank: 9Rank: 9

积分
16015
金钱
11304
HASS币
45
发表于 2019-1-19 14:18:11 | 显示全部楼层

管用的,我刚看了下,你贴中并没有加。
回复

使用道具 举报

8

主题

863

帖子

5126

积分

论坛元老

Rank: 8Rank: 8

积分
5126
金钱
4263
HASS币
0
发表于 2019-1-19 17:03:36 | 显示全部楼层
大神666666
回复

使用道具 举报

7

主题

1975

帖子

5663

积分

论坛元老

流水无味

Rank: 8Rank: 8

积分
5663
金钱
3688
HASS币
145

灌水之王

发表于 2019-1-19 20:51:57 | 显示全部楼层
jyz_0501 发表于 2019-1-19 13:00
不是要用auth2认证吗? 因为新版本HA自带了,所以用的SSL

你有更简单的方式? ...

我的意思不用开https直接可用auth2
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-4-27 08:43 , Processed in 0.067865 second(s), 40 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表