前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >使用FRP内网穿透工具实现"安全访问"家中群晖NAS

使用FRP内网穿透工具实现"安全访问"家中群晖NAS

作者头像
yuanfan2012
发布2023-09-06 08:29:12
3.1K0
发布2023-09-06 08:29:12
举报
文章被收录于专栏:WalkingCloud

使用FRP内网穿透工具实现"安全访问"家中群晖NAS

场景

如下拓扑图所示

(图片点击放大查看)

有时出差或者外出需要访问家中的群晖NAS,但由于该群晖NAS没有quickconnect服务(原因你懂的),基于安全考虑也不愿意将NAS通过内网穿透的方式直接暴露到公网上

下面就借助云服务器+FRP的STCP方式实现在外面也能安全访问家中群晖NAS

具体原理参考之前的文章:使用Frp的stcp实现安全内网穿透访问

准备条件

先下载所需要的Frp安装包

  • 1、https://github.com/fatedier/frp/releases

下载windows和linux两个版本的包

(图片点击放大查看)

  • 2、Windows机器上要使用的nssm.exe nssm是一个能将普通exe应用封装成windows服务的神器

(图片点击放大查看)

具体步骤

一、在云服务器上搭建frps服务端

1、这里为了简单方便,我这边开通按量付费的一台腾讯云主机进行演示

(图片点击放大查看)

(图片点击放大查看)

2、登录云服务器的SSH,部署frps服务端

代码语言:javascript
复制
mkdir /usr/local/frp
cd /usr/local/frp/
rz上传frps和frps.ini
vim /usr/local/frp/frps.ini 
[common]
bind_address = 0.0.0.0
bind_port = 8111

authentication_method = token
authenticate_heartbeats = false
authenticate_new_work_conns = false
token = My@Frp2023

log_file =  /usr/local/frp/logs/frps.log
log_level = info
log_max_days = 30

(图片点击放大查看)

(图片点击放大查看)

代码语言:javascript
复制
vim /usr/lib/systemd/system/frps.service 
[Unit]
Description=Frp Server Service
After=network.target

[Service]
Type=simple
User=root
Restart=on-failure
RestartSec=5s
ExecStart=/usr/local/frp/frps -c /usr/local/frp/frps.ini

[Install]
WantedBy=multi-user.target
代码语言:javascript
复制
systemctl daemon-reload 
systemctl enable frps.service
systemctl start frps.service 
systemctl status frps.service
netstat -anp | grep 8111

(图片点击放大查看)

云服务器上的安全组放通frps的8111端口

(图片点击放大查看)

当然你也可以限制源IP,由于你家中的路由器出口IP可能发生变化,笔记本在外面的公网IP也是变化的,所以就不限制源IP,使用0.0.0.0/0

二、家里群晖部署frpc客户端

因为是x86_64就直接使用amd64版本的frpc

(图片点击放大查看)

1、FileStation上面上传对应版本的frpc客户端软件

(图片点击放大查看)

2、并开启SSH和邮件告警通知

(图片点击放大查看)

(图片点击放大查看)

(图片点击放大查看)

3、部署frpc

代码语言:javascript
复制
sudo -i
mkdir /usr/local/frp
cp /volume1/File/frpc /usr/local/frp/
cp /volume1/File/frpc.ini /usr/local/frp/
cd /usr/local/frp/
chmod 777 frpc
vim frpc.ini

(图片点击放大查看)

代码语言:javascript
复制
vim frpc.ini
[common]
server_addr = 119.45.191.116
server_port = 8111
authentication_method = token
authenticate_heartbeats = false
authenticate_new_work_conns = false
token = My@Frp2023
log_file =  /usr/local/frp/logs/frpc.log
log_level = info
log_max_days = 30


[stcp_tv_nucwin7]
type = stcp
sk = walkingcloud
local_ip = 192.168.31.239
local_port = 5938

[stcp_DSM_nucSynology]
type = stcp
sk = walkingcloud
local_ip = 192.168.31.142
local_port = 5000

[Synology_SSH]
type = tcp
local_ip = 192.168.31.142
local_port = 22
remote_port = 11122

(图片点击放大查看)

4、配置开机启动的任务计划

(图片点击放大查看)

脚本内容:/usr/local/frp/frpc -c /usr/local/frp/frpc.ini

(图片点击放大查看)

(图片点击放大查看)

(图片点击放大查看)

三、win10笔记本上面部署frpc客户端

1、比如我将frpc.exe和frpc.ini部署在D:\Soft\frp\目录下

(图片点击放大查看)

2、frpc.ini内容如下

代码语言:javascript
复制
[common]
server_addr = 119.45.191.116
server_port = 8111
authentication_method = token
authenticate_heartbeats = false
authenticate_new_work_conns = false
token = My@Frp2023
log_file =  D:\\Soft\\frp\\frpc.log
log_level = info
log_max_days = 30

[stcp_access_nucwin7]
type = stcp
role = visitor
sk = walkingcloud
server_name = stcp_tv_nucwin7
bind_addr = 127.0.0.1
bind_port = 5938

[stcp_access_nucSynology]
type = stcp
role = visitor
sk = walkingcloud
server_name = stcp_DSM_nucSynology
bind_addr = 192.168.198.143
bind_port = 5000

3、使用nssm.exe部署成服务

代码语言:javascript
复制
D:\Soft\frpc
nssm.exe install

(图片点击放大查看)

(图片点击放大查看)

(图片点击放大查看)

这里 Path D:\Soft\frp\frpc.exe

Arguments -c frpc.ini

Service name frpc 然后点 Install service

接下来就services.msc,服务中启动frpc服务即可

(图片点击放大查看)

四、验证效果

1、在Win10机器上可以访问本地http://192.168.198.143:5000即可访问家里NAS 192.168.31.142

(图片点击放大查看)

2、同样,访问本地127.0.0.1就可以访问家里Win7 192.168.31.239的TeamViewer

(图片点击放大查看)

Tips

1、当群晖NAS的frpc 开机里启动异常时,会发出邮件告警,效果如下

(图片点击放大查看)

2、在部署时请将修改本文中token,sk,server_addr,server_port

3、在链接不上时,可以查看frpc.log以及frps.log排查问题

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-07-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 WalkingCloud 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 场景
  • 准备条件
  • 具体步骤
    • 一、在云服务器上搭建frps服务端
      • 二、家里群晖部署frpc客户端
        • 三、win10笔记本上面部署frpc客户端
          • 四、验证效果
            • Tips
            相关产品与服务
            云服务器
            云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档