通过FRP实现穿透内网访问群晖 Synology NAS(含客户端)

synology.jpeg

确认群晖NAS硬件信息 & FRPS服务器版本信息

确认NAS的版本信息,在群晖NAS的控制面板里找到信息中心,确认了我的NAS是arm版的。

确认自己在服务器(比如搭建的VPS)上安装的FRPS(FRP Server)服务器的版本,比如我在FRPS服务器端部署的是0.20.0这个版本。

frpc客户端安装

通过terminal或PuTTY登录NAS,密码为组别为administrator的管理员密码

ssh 管理员用户名@群晖的地址

回车,yes确认,登录。

在FRP的Release页面下载自己FRP服务器对应版本的FRPC(FRP Client)。我在FRPS服务器端部署的是0.20.0版本的FRP,群晖NAS是arm版,那我就要在NAS里安装frp_0.21.0_linux_arm这个版本。

版本号一定要对号入座,不然会运行出错!

在NAS的命令行中输入:

sudo wget https://github.com/fatedier/frp/releases/download/v0.20.0/frp_0.20.0_linux_arm.tar.gz

按条输入下述命令,记得开头要用sudo命令

sudo tar -zxvf frp_0.20.0_linux_arm.tar.gz //解压安装包
cd /frp_0.20.0_linux_arm //打开安装目录
sudo rm -f frpc frpc_full.ini frpc.ini //删除示例文件

frpc客户端配置

编辑 frpc.ini 文件

sudo vi frpc.ini //使用VI编辑器,或者
sudo nano frpc.ini //使用nano编辑器

frpc.ini 的文件内容编辑为(适用于FRP0.20.0版本,其他版本的配置文件格式可能不同,直接套用可能造成连接失败)

[common]
server_addr = 这里填FRPS服务器的地址(如domain.com)
server_port = 这里填FRPS服务器的端口
token = 这里填FRPS服务器的密码

[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 这里自定义一个没被占用的FRPS服务器的远程端口

[http]
type = http
local_ip = 127.0.0.1
local_port = 80
custom_domains = 这里自定义一个没被占用的自定义子域名(如http.domain.com)

测试运行程序

cd /frp_0.20.0_linux_arm //打开安装目录
sudo /frp_0.20.0_linux_arm/frpc -c /frp_0.20.0_linux_arm/frpc.ini

加入开机自动启动FRP

进入DSM控制面板,新增计划任务开机项,自定义脚本里输入:

sudo /frp_0.20.0_linux_arm/frpc -c /frp_0.20.0_linux_arm/frpc.ini &
发表新评论