frp实现NAS外网访问

开始

入手了NAS之后就看是漫漫的折腾内网穿透的不归路。用的最多最简单的是下面三种

  • QC:群晖自带的,速度在100kb左右,能不能连上有时候都是运气,极其不稳定。
  • DDNS:最推荐的方式。上下行都取决自己的宽带,但是需要公网动态ip,如果你是电信的网络可以打10000号试试。
  • Frp:一款优秀的专注于内网穿透的高性能的反向代理工具,配置简单上手选,需要有公网一台公网的机器。

硬件

我是一台群晖218+,和一台腾讯云的轻量服务器,配置是 1c 2g 6mb 每个月1200gb的流出流量,系统是ubuntu 20.04 选择轻量服务的器主要是便宜,这个配置三年218还是挺划算的。群晖推荐购买支持 docker 的机型,可玩性会高很多。


服务端配置

  1. 下载frp到你的有公网ip的服务器上
    wget https://github.com/fatedier/frp/releases/download/v0.37.0/frp_0.37.0_linux_amd64.tar.gz

  2. 解压文件
    tar -zxvf frp_0.37.0_linux_amd64.tar.gz

  3. 移动解压文件到frp目录下,或者直接用ftp工具连接重名命也可以
    mv frp_0.37.0_linux_amd64 frp

  4. 进入frp目录编辑frps.ini文件
    cd frp
    vim frps.ini

  • 加入下面这段配置后保存
[common]      
bind_port = 6006 #通信端口,通过ip+这个端口访问你的群辉       
token = 123456    #类似密码,一致才允许反问    

  1. 启动frp服务
    ./frps -c ./frps.ini

这样就是启动成功了

图片名称
  1. 设置frp自启动

vim /lib/systemd/system/frps.service

  • 加入下面这段配置后保存
[Unit]
Description=fraps service
After=network.target syslog.target
Wants=network.target

[Service]
Type=simple
ExecStart=/root/frp/frps -c /root/frp/frps.ini   // 注意这里的目录需要和你frp的解压路径一致

[Install]
WantedBy=multi-user.target
  • 启动frp并设置自启动
    systemctl start frps
    systemctl enable frps

NAS配置

  1. NAS上直接是直接托管到docerk上面的,需要在套件中心安装docker组件后下载frp映像
图片名称

如果搜索不到可以直接在映像里面点击添加-从url添加 https://hub.docker.com/r/chenhw2/frp地址
图片名称

  1. 新增配置文件
    在NAS的docker目录下面新增frp目录,并在目录下面新增 frpc.ini 文件,下面是我的配置,
    需要映射什么端口出去在这里配置后重启客户端frp服务即可。
[common]
server_addr = xxxxxx    # 公网服务器ip
server_port = 6006  # 约定的端口
token = 123456  # 约定的token

[DSM]
type = tcp  # 协议类型
local_ip = 127.0.0.1    # 内网ip
local_port = 5000   # 内网端口
remote_port = 80    # 外部访问的端口

[gogs]
type = tcp
local_ip = 127.0.0.1
local_port = 10080
remote_port = 6001

[WebDAV]
type = tcp
local_ip = 127.0.0.1
local_port = 5005
remote_port = 5005

[Drive]
type = tcp
local_ip = 127.0.0.1
local_port = 6690
remote_port = 6690
  1. 配置容器
  • 双击下载好的映像进入启动页面,点击左下角的高级设置。点击卷--添加文件,选择刚才的配置文件路径。

    图片名称
  • 点击网络,勾上左下角 使用与 Docker Host 相同的网络 选项。

  • 点击环境,添加一个新环境。

    图片名称
  • 点击应用容器就会启动。到此就可以直接通过ip访问你的NAS啦。

总结

需要映射NAS的其他端口可以去官方看看端口号对应的功能,也可以吧NAS中docker的映射出去,可玩性就非常高啦,如果有条件建议直接上DDNS。

posted @ 2021-06-17 14:10  她微笑的脸  阅读(2192)  评论(5编辑  收藏  举报