zoukankan      html  css  js  c++  java
  • 群晖 docker frp公网访问

    群晖 docker frp

    ​ 通过公网访问群晖的教程。

    ​ 群晖通过docker部署frp客户端,实现公网访问群晖。

    ​ 目前流行的公网访问群晖的方案大致如下:

    ​ 1.DDNS解析(我的网络环境不适用此种方案,且可能需要花很多钱如:花生壳)

    ​ 2.frp内网穿透 (本文的主要方案,此处又分为群晖系统内部署、docker部署,本文为后者)

    ​ 3.Quick Connect (最简单,网速最慢)

    ​ 本文方案核心是frp客户端(下文frpc代指)和frp服务端(下文frps代指)的通信,而frpc的部署可以通过群晖本身的系统进行部署,也可以通过群晖的DSM系统中的docker插件进行部署。

    ​ 由于群晖的linux系统并不太容易获得root权限,且这样对于机子本身的修改成本较高,故采用docker部署frpc的方案实现。

    关于frp版本的通信问题:

    ​ 本文使用的frps是 0.35.1 frpc是0.35.1。

    ​ 经过测试frps版本不变,frpc变为0.30.0时仍然可以正常通信。

    参考链接:https://www.ioiox.com/archives/26.html

    • 前期准备:

      一台云主机(本文采用阿里云主机,带宽15M。本文以39.156.69.79代指[此IP为百度的IP])
      一个域名(本文采用的阿里云已备案域名,本文以baidu.com代指)
      一个群晖(本文型号DS720+)
      ------------
      本文环境:
      	学校网络经过学校的一层路由之后,到达我本人手里之后我还需要一个路由器通过指定的账号上网,所以本次环境可以认为是二层路由。
      
    • 阿里云需要处理的内容

      1.防火墙:增开端口5000  类型:tcp
      
      2.域名解析记录:
          增加子域名:
          A记录,例如:
          nas.baidu.com           39.156.69.79
      
      --------------------
      由于我原本的解析记录www已经解析到云主机39.156.69.79,这里增开的也解析到39.156.69.79也没问题,只不过访问的时候就变成了:http://nas.baidu.com:5000
      
    • 阿里云主机部署frps,参考文章:链接

      frps.ini

      [common]
      bind_port = 7000
      token = 1f%vXPfy3*IWzX
      
      vhost_http_port = 5000
      dashboard_port = 7001
      dashboard_pwd = qwe123456
      
      • bind_port :frpc访问的端口
      • token : frpc认证用的密钥
      • vhost_http_port : 公网访问转到fprc的端口
      • dashboard_port :frps面板
      • dashboat_pwd : frps登录密钥,默认账号名:admin

      dashboard_port和dashboard_pwd建议在测试通过后将其关闭,即注释或删掉。

    • 群晖docker部署frpc,此处的frpc部署参考下文:

      frpc.ini

      [common]
      server_addr = 39.156.69.79
      server_port = 7000
      token = 1f%vXPfy3*IWzX
      
      [web_2_xxx]
      type = http
      local_ip = 192.168.3.122
      local_port = 5000
      custom_domains = nas.baidu.com
      
      • server_addr : frps 的IP

      • server_port : frps的端口

      • token : 认证密钥

      • [web_2_xxx] : 显示在frps中的客户端明自

      • type : frp连接类型

      • local_ip : 转发到本地局域网的地址

      • local_port : 转发到本地局域网的端口

      • custom_domains : 定义的二级域名。如果和解析记录不一致也无法访问。

    • 群晖安装docker并部署frpc

      • 在套件中心安装docker

      • 按照下图操作,此处选择stilleshan/frpc的原因就是更新及时,其他版本更新不及时,如oldiy/frpc

      • 双击后选择版本,如下所示,本文选择0.35.1与frps端版本一致:

      • 之后等待其下载映像即可:

      • 双击0.35.1版本,勾选“使用高权限执行容器”,然后点击“高级设置”

      • 将上文准备好的frpc.ini文件上传至群晖中的任意一个文件夹并填入此处,最终效果如下:

      • 设置网络:

      • 然后应用,然后下一步,然后应用:

      • 最后确认刚刚创建的容器是否正常运行,需要查看日志。查看日志的方法如下:

      • 如果设置成功了,会有很多日志,并且有明显的提示,如:与服务端认证成功:

      • 到此就可以通过公网地址访问我们的群晖了:

        例如:
        nas.baidu.com:5000
        
  • 相关阅读:
    JDom写入XML例子
    hdu 2549
    hdu 1328
    hdu 1334
    hdu 2547
    hdu 2374
    hdu 2550
    hdu 1335
    hdu 2548
    hdu 1722
  • 原文地址:https://www.cnblogs.com/lisicn/p/14582367.html
Copyright © 2011-2022 走看看