Frp内网穿透--实现外网访问家中设备

 

前言

在上一篇文章中,介绍了内网穿透和nps实现。有了内网穿透可以在外进行管理家中路由、访问家中设备(服务器、nas等)、远程唤醒等操作。上一篇文章介绍的nps+云服务器的穿透方式有着很好的低延时响应。

但是在部署到lede软路由时,仍然有几个小问题:

  1. 服务端修改管理员密码操作失败。。

  2. lede客户端不能适配自带的命令行操作,多次尝试后无法实现开机自启

  3. 后续nps可能收费

于是我直接改用了frp,这个也是内网穿透工具,实现与nps类似(github上star数更多)。

frp 是一个可用于内网穿透的高性能的反向代理应用,支持 tcp, udp 协议,为 http 和 https 应用协议提供了额外的能力,且尝试性支持了点对点穿透。

操作步骤

  • 前期准备:云服务器,阿里云、腾讯云等,系统选择centos7。域名(国内需备案)

  • 在frprelease下载对应版本。下载地址是https://github.com/fatedier/frp/releases

     

Frp内网穿透--实现外网访问家中设备_第1张图片

下载release

  • 使用传输软件,将文件frp_0.32.1_linux_amd64.tar.gz上传至云服务器root目录

  • 使用命令tar -zxvf 解压(也可本地解压后再上传)并修改文件夹名称

  • cd 进入解压目录

     

Frp内网穿透--实现外网访问家中设备_第2张图片

解压后的文件目录

frps、frps.ini是服务端程序和配置文件,frpc、frpc.ini是服务端程序和配置文件。frp作者将两个放到一起,但是在云服务器上只要用frps,在客服端(内网设备)中使用frpc。

  • 修改服务端配置

    vi ./frps.ini

     

修改服务端配置

其中token是密钥,可自行修改,与客户端密钥对应即可。

  • 启动服务端命令

    nohup ./frps -c ./frps.ini &

    此时frp服务端就开启了,直接关闭ssh软件即可。

  • 接下来配置客户端。(若是普通的内网设备,与服务端类似,修改frpc.ini并启动服务即可,具体可参考https://github.com/fatedier/frp/blob/master/README_zh.md)

    但是lede软路由后台的酷软中心提供了frpc专用插件,可方便部署。

    不需要操心开机启动、不需要vim中修改配置文件,只要在网页中修改即可。

     

     

Frp内网穿透--实现外网访问家中设备_第3张图片

酷软中心

  • 进入应用后修改基本配置

     

Frp内网穿透--实现外网访问家中设备_第4张图片

修改基本配置

服务器地址是你的云服务器地址。

三个端口与frps.ini的三个端口对应。

连接密码就是刚刚填写的frps.ini中的token。

其他设置按照自己想法即可。

  • 接下来进行穿透设置

     

Frp内网穿透--实现外网访问家中设备_第5张图片

穿透设置

穿透设置就很简单了,只要是设备在软路由下就能访问。

要注意的是域名的填写,可以直接填写服务器的地址,但这样只能访问一个设备(nps、frp可以端口映射访问多个,但是lede插件中不能改端口);若在域名填写时使用二级域名则可多台设备(域名一定要解析到服务器上)

  • 成功

有啥问题欢迎关注公众号直接后台问我,博客我不常上,但是公众号有消息推送,我会第一时间回复的。

Frp内网穿透--实现外网访问家中设备_第6张图片

公众号

 

你可能感兴趣的:(project)