搭建家庭影音媒体中心 --公网远程连接Jellyfin流媒体服务器

文章目录

  • 前言
  • 1. 安装Home Assistant
  • 2. 配置Home Assistant
  • 3. 安装cpolar内网穿透
    • 3.1 windows系统
    • 3.2 Linux系统
    • 3.3 macOS系统
  • 4. 映射Home Assistant端口
  • 5. 公网访问Home Assistant
  • 6. 固定公网地址
    • 6.1 保留一个固定二级子域名
    • 6.2 配置固定二级子域名

转载自远程穿透的文章:【智能家居】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-20230329140034810

然后创建一个虚拟机

image-20230329140523751

选择自定义虚拟机

image-20230329140559237

直接下一步

image-20230329140626938

选择稍后安装操作系统

image-20230329140651521

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

image-20230329140916527

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

image-20230329141109224

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

image-20230329141558147

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

image-20230329141741615

选择NET网络模式

image-20230329141838721

直接下一步

image-20230329141927176

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

image-20230329142125999

这里需要选择现有磁盘

image-20230329142241934

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

image-20230329142336733

然后选择保持现有格式

image-20230329142435852

最后,点击完成即可

image-20230329142505378

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

image-20230329142908172

2. 配置Home Assistant

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

image-20230329143213764

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

image-20230329143436938

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

image-20230329143740404

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

image-20230329143904127

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

image-20230329144017846

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

image-20230329144126684

3. 安装cpolar内网穿透

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

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

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

3.1 windows系统

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

3.2 Linux系统

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

  • Linux安装cpolar内网穿透

3.3 macOS系统

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

  • macOS安装cpolar内网穿透

20230130105715

4. 映射Home Assistant端口

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

20230130105810

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

  • 隧道名称:可自定义命名,注意不要与已有的隧道名称重复
  • 协议:选择http
  • 本地地址:home assistant 局域网ip+端口
  • 域名类型:免费选择随机域名
  • 地区:选择China vip

点击创建

image-20230329151644131

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

image-20230329151724274

5. 公网访问Home Assistant

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

image-20230330113646549

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

image-20230330115658528

可以看到日志,点击日志

image-20230330130245362

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

image-20230330130645997

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

image-20230330113824049

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

image-20230330113845841

找到File editor 文件编辑器

image-20230330113950556

点击安装这个File editor

image-20230330114133188

安装成功后点击启动

image-20230330114417659

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

image-20230330114525062

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

image-20230330114704791

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

image-20230330114807991

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

http:
  use_x_forwarded_for: true
  trusted_proxies:
    - 192.168.191.1

image-20230330131216892

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

image-20230330131548575

6. 固定公网地址

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

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

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

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

image-20230330132159756

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

image-20230330132218331

6.2 配置固定二级子域名

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

image-20230330131957337

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

  • 域名类型:选择二级子域名
  • Sub Domain:填写保留成功的二级子域名

点击更新

image-20230330132252714

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

image-20230330132345392

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

image-20230330132444605

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/15389.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

人工智能时代来临,殊不知低代码早已出手

科普一下人工智能的等级划分,按照实力,人工智能可以分为弱人工智能(Artificial Narrow Intelligence,简称ANI)、强人工智能(Artificial General Intelligence简称AGI)、超人工智能(Artificial Superintelligence简称ASI)三个等级。 弱人工智能…

JavaWeb学习------Servlet

目录 JavaWeb学习------Servlet Servlet 生命周期 Servlet 生命周期 Servlet 方法介绍 •Servlet 体系结构 Servlet 体系结构 •Servlet urlPattern配置 Servlet urlPattern配置 •XML 配置方式编写 Servlet XML 配置方式编写 Servlet JavaWeb学习------Servlet •快速…

【汽车品牌案例02-设置右侧索引 Objective-C语言】

一、刚才我们说了一下,如何把那个汽车品牌加载起来,我们使用了一个模型的嵌套,以及我们在创建单元格的时候,是不是指定了一个,单元格的可重用ID吧, 1.根据重用ID来创建单元格,那么我们运行的时候,已经能把这个大致的效果做出来了, 大致就是这么一个效果, 接下来,还…

【剧前爆米花--爪哇岛寻宝】网络互连,网络通信和网络分层

作者:困了电视剧 专栏:《JavaEE初阶》 文章分布:这是一篇关于网络初识的文章,在这篇文章中讲解了局域网广域网,IP地址,端口以及网络分层等相关内容,希望对你有所帮助! 目录 网络互连…

PyTorch中的交叉熵函数 CrossEntropyLoss的计算过程

CrossEntropyLoss() 函数联合调用了 nn.LogSoftmax() 和 nn.NLLLoss()。 关于交叉熵函数的公式详见: 交叉熵损失函数原理详解 CrossEntropyLoss() 函数的计算过程可以拆解为如下四个步骤: 1、对输出的结果进行softmax操作,因为softmax操作可以将所有输入…

基于虚拟同步发电机的光伏混合储能并网系统MATLAB仿真

资源地址: 主要模块: 光伏电池模型(按照数学模型搭建)、蓄电池储能模块、超级电容储能模块、双向DC/DC模块、LC滤波器、逆变器VSG控制模块电压电流双环控制模块、光伏MPPT控制模块、储能系统充放电控制模块。 使用MATLAB2021b及…

09-Node.js—express框架

目录 1、express 介绍2、express 使用2.1 express 下载2.2 express 初体验 3、express 路由3.1 什么是路由3.2 路由的使用3.2.1使用Ajax发送一次post请求 3.3 获取请求参数 3.4 获取路由参数3.5 路由参数练习 4、express 响应设置5、express 中间件5.1 什么是中间件5.2 中间件的…

Linux 利用网络同步时间

yum -y install ntp ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime ntpdate ntp1.aliyun.com 创建加入crontab echo "*/20 * * * * /usr/sbin/ntpdate -u ntp.api.bz >/dev/null &" >> /var/spool/cron/rootntp常用服务器 中国国家授…

活动目录(Active Directory)安全审计

延迟响应变化的影响可能会使原本应该微不足道的颠簸滚雪球变成无法弥补的损害。这在 Windows Active Directory 环境中更为重要,因为这种延迟造成的损害可能会使组织损失数百万美元!在这种情况下,需要一个警惕的警报系统,该系统可…

(下)苹果有开源,但又怎样呢?

一开始,因为 MacOS X ,苹果与 FreeBSD 过往从密,不仅挖来 FreeBSD 创始人 Jordan Hubbard,更是在此基础上开源了 Darwin。但是,苹果并没有给予 Darwin 太多关注,作为苹果的首个开源项目,它算不上…

【多线程】线程安全问题

1. 一段线程不安全的代码 我们先来看一段代码&#xff1a; public class ThreadDemo {public static int count 0;public static void main(String[] args) {for (int i 0; i < 10_0000; i) {count;}System.out.println("count " count);} } // 打印结果&…

MySql中执行计划如何来的——Optimizer Trace | 京东云技术团队

作者&#xff1a;京东物流 籍磊 1.前言 当谈到MySQL的执行计划时&#xff0c;会有很多同学想&#xff1a;“我就觉得使用其他的执行方案比EXPLAIN语句输出的方案强&#xff0c;凭什么优化器做的决定与我得不一样&#xff1f;”。这个问题在MySQL 5.6之前或许自己很难解决&…

滑动奇异频谱分析:数据驱动的非平稳信号分解工具(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

每天一道算法练习题--Day15 第一章 --算法专题 --- -----------二叉树的遍历

概述 二叉树作为一个基础的数据结构&#xff0c;遍历算法作为一个基础的算法&#xff0c;两者结合当然是经典的组合了。很多题目都会有 ta 的身影&#xff0c;有直接问二叉树的遍历的&#xff0c;有间接问的。比如要你找到树中满足条件的节点&#xff0c;就是间接考察树的遍历…

【Java校招面试】基础知识(一)——Java常用类库

目录 前言一、编程时常用的Java类库1. 异常捕获模块(try-catch-finally, Error, Exception)2. boolean / short / int / long / float / double / char / byte及其对应的引用类型 二、面试时常考的Java类库1. 一切类型的父类Object及其equals / hashCode / toString方法2. 常用…

scratch拆礼物游戏 中国电子学会图形化编程 少儿编程 scratch编程等级考试三级真题和答案解析2023年3月

目录 scratch拆礼物游戏 一、题目要求 1、准备工作 2、功能实现 二、案例分析 <

perf工具报错,升级ubuntu子系统linux内核

文章目录 1&#xff0c;运行perf工具报错1.1&#xff0c;可能的原因有&#xff1a; 2&#xff0c;我选择升级linux内核&#xff0c;和当前perf工具版本保持一致2.1&#xff0c;下载6.2.12内核源码2.2&#xff0c;安装6.2.12内核 1&#xff0c;运行perf工具报错 1.1&#xff0c;…

网络安全基础入门学习路线

在大多数的思维里总觉得学习网络安全得先收集资料、学习编程、学习计算机基础&#xff0c;这样不是不可以&#xff0c;但是这样学效率太低了&#xff01; 你要知道网络安全是一门技术&#xff0c;任何技术的学习一定是以实践为主的。也就是说很多的理论知识其实是可以在实践中…

十、ElasticSearch 实战 - 源码运行

一、概述 想深入理解 Elasticsearch&#xff0c;了解其报错机制&#xff0c;并有针对性的调整参数&#xff0c;阅读其源码是很有必要的。此外&#xff0c;了解优秀开源项目的代码架构&#xff0c;能够提高个人的代码架构能力 阅读 Elasticsearch 源码的第一步是搭建调试环境&…

Qt5下Qxlsx模块安装及使用

Qt5下Qxlsx模块安装及使用 一、Qt5下Qxlsx模块安装及使用1. 未安装Qxlsx的程序效果2. 安装Perl&#xff08;编译Qxlsx源码用&#xff09;2.1 下载 ActivePerl 5.282.2 安装 ActivePerl 5.28 3. 下载并编译Qxlsx源码3.1 下载Qxlsx源码3.2 编译Qxlsx源码 4. 将编译好的文件复制到…