frp轻松内网穿透,玩转树莓派HomeAssistant

目录

安装条件

服务器端安装步骤

客户端安装步骤

说在最后

 重要提醒


​​​​​​​

最近自己搭建HomeAssistant智能家居平台,在家里的内网访问HomeAssistant没有问题,但因为使用的是电信的宽带没有分配公网IP,造成无法通过公网访问HomeAssistant,这也就意味着不能在外访问和控制家里的智能设备。考虑到花生壳等内网穿透工具不但限制链接数量,而且超过限定的流量就开始收钱,本着自己动手丰衣足食的创客精神,毅然决定使用方便好用的开源穿透工具frp。

安装条件

服务器端:公网云服务器1台并安装ubuntu20.04。

客户端:树莓派1台并安装ubuntu20.04。我的HomeAssistant运行在安装ubuntu的树莓派上,作为智能家居的控制中心。

软件:目前最新版本为v0.37.1,服务器端和客户端必须下载同一版本,避免不可预知的麻烦(这个在安装过程中踩过坑)。Releases · fatedier/frp · GitHubA fast reverse proxy to help you expose a local server behind a NAT or firewall to the internet. - Releases · fatedier/frphttps://github.com/fatedier/frp/releases

服务器端安装步骤

1.下载frp

wget https://github.com/fatedier/frp/releases/download/v0.37.1/frp_0.37.1_linux_amd64.tar.gz

根据需要选择相应的版本,我这里下载的是linux64位的版本。

2.解压缩

tar -xvf frp_0.37.1_linux_amd64.tar.gz

进入解压之后的文件夹

cd frp_0.37.1_linux_amd64/
ls -l

frpc、frpc_full.ini|、frpc.ini分别为客户端程序、全配置文件、自定义配置文件

frp3、frp3_full.ini|、frp3.ini分别为服务器端程序、全配置文件、自定义配置文件

进入systemd文件夹

cd systend
ls -l

4个文件为分别为客户端和服务器端的系统服务配置

 3.文件归位

一般情况下,在解压后的当前目录使用命令模式就可以使用。但考虑到管理方便,强烈建议将所有文件放到相应的目录中。

将服务器端可执行文件frps放到/usr/bin目录

sudo cp frps /usr/bin

将配置文件frps.ini放到/etc/frp/目录

sudo mkdir /etc/frp
sudo cp frps.ini /etc/frp

将系统服务配置frps.service、frps@.service 放到/lib/systemd/system目录

sudo cp /systemd/{frps.service,frps@.service} /lib/systemd/system

4、配置

打开/etc/frp/frps.ini配置文件,输入如下内容并保存退出

[common]
bind_port = 7000
bind_udp_port = 7001
kcp_bind_port = 7000
vhost_http_port = 80
vhost_https_port = 443
dashboard_port = 7500
dashboard_user = admin
dashboard_pwd = XXXXX(自定义)
authentication_method = token
token = XXXXXXXX(自定义)

5、启动服务器端

设置为开机启动

sudo systemctl enable frps

启动服务器端

sudo systemctl start frps

没有报错则基本安装成功,可以通过查看系统服务状态确定是否运行成功

sudo systemctl status frps

运行结果如果与下图一致则表示服务已成功启动

至此,服务器端安装成功。

可以通过http://你的IP:7500查看运行状态

客户端安装步骤

1.下载frp

wget https://github.com/fatedier/frp/releases/download/v0.37.1/frp_0.37.1_linux_arm64.tar.gz

因为树莓派是arm的CPU,因此我下载的是arm64位的客户端,大家可以根据客户端的情况现在相应的版本

2.解压缩

tar -xvf frp_0.37.1_linux_arm64.tar.gz

解压后的文件夹中各文件的作用与服务器端的一致。客户端文件名都包含frpc

3.文件归位

 将客户端可执行文件frpc放到/usr/bin目录

sudo cp frpc /usr/bin

将配置文件frpc.ini放到/etc/frp/目录

sudo mkdir /etc/frp
sudo cp frpc.ini /etc/frp

将系统服务配置frpc.service、frpc@.service 放到/lib/systemd/system目录

sudo cp /systemd/{frpc.service,frpc@.service} /lib/systemd/system

4、配置

打开/etc/frp/frpc.ini配置文件,输入如下内容并保存退出

[common]
server_addr = X.X.X.X(安装frp服务气短的公网服务器地址)
token = XXXXX(与服务器端配置文件一致)
server_port = 7000
# vhost_http_port = 80

[http]
type = tcp
local_port = 8123
remote_port= 8123
custom_domains =XXX.XXX.com(需要域名访问的设置,不需要的可不设置)

5、启动服务器端

设置为开机启动

sudo systemctl enable frpc

启动服务器端

sudo systemctl start frpc

没有报错则基本安装成功,可以通过查看系统服务状态确定是否运行成功

sudo systemctl status frpc

运行结果如果与下图一致则表示客户端已启动并成功连接服务器端

说在最后

至此就可以通过http://你的IP:8123访问局域网内的HomeAssistant了

也可以设置你的域名解析到你的IP,而后通过http://你的域名:8123访问局域网内的HomeAssistant

看看我的效果

 重要提醒

切记切记!公网云服务器记得放行配置文件中涉及到的所有端口,否则无法访问。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
树莓派FRP是一种用于实现内网穿透的工具。通过FRP,您可以将位于NAT或防火墙后面的本地服务器暴露到互联网上。树莓派使用FRP来实现内网穿透的操作步骤如下: 1. 准备材料:您需要一台虚拟专用服务器(VPS),您可以选择使用virmach提供的虚拟专用服务器。 2. 配置服务器端:在虚拟专用服务器上安装并配置FRP。具体的配置步骤可以参考中的教程。 3. 配置客户端-树莓派:在树莓派上进行配置,使其能够与服务器端进行通信。具体的配置步骤可以参考中的教程。 4. 验证内网穿透:完成上述配置后,您可以尝试在树莓派上部署一个Web服务器,例如Apache、Nginx或Tomcat,并发布自己的项目。然后通过云服务器的IP地址和端口来访问树莓派所部署的项目,以验证内网穿透是否成功。具体的验证步骤可以参考中的说明。 如果您想重新安装FRP,可以按照中提供的方法进行卸载和重装。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [树莓派内网穿透方法大全](https://blog.csdn.net/concefly/article/details/115076359)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [树莓派使用FRP实现内网穿透教程](https://blog.csdn.net/qq_41676577/article/details/112856618)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [树莓派怎么实现内网穿透?](https://blog.csdn.net/weixin_47198051/article/details/122962247)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

创客老兵

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值