群晖NAS使用Docker安装配置frpc内网穿透教程

前言

本站之前介绍过在群晖中安装frpc客户端来实现内网穿透,很多新手不会使用命令行的方式来安装,本文将介绍如果使用Docker来简单安装配置frpc客户端.

本文为 Stille 原创文章.经实践,测试,整理发布.如需转载请联系作者获得授权,并注明转载地址.

frp服务器端

frp服务器端本站已免费提供,可直接使用.请遵守国内相关法律法规,本站frp服务更多信息请参考:

服务器信息

  • 服务器地址: frp.ioiox.com
  • 端口: 7007
  • Token: www.ioiox.com
  • frps版本为0.29.0 frpc请勿使用太过老的版本
  • 暂仅提供80及443端口服务
  • 暂不提供免费二级域名,请自行准备域名.

frp客户端

一、Docker镜像下载

打开Docker
注册表
搜索frpc
1.jpg
选择oldiy/frpc
下载
选择最新版本
2.jpg
3.jpg
映像中查看已完成下载
4.jpg

二、配置frpc.ini

在群晖NAS任意位置新建或者上传frpc.ini文件.

建议使用群晖的文本编辑套件来创建和编辑

本文以/Docker/frpc/frpc.ini为例
5.jpg

配置frpc.ini参考

[common]
server_addr = frp.ioiox.com     # 服务器IP或者地址
server_port = 7007              # 服务器提供的端口号
token = www.ioiox.com           # 服务器提供的token

[web1]                          # 为避免错误,一定需更改为比较特殊的名称,不能和服务器端其他配置重名.
type = http                     # http协议
local_ip = 127.0.0.1            # 127.0.0.1指穿透本机,也可以填写群晖内网IP.
local_port = 5000               # 群晖内网HTTP端口,默认为5000.
custom_domains = nas.ioiox.com  # 填写你的域名

[web2]                          # 为避免错误,一定需更改为比较特殊的名称,不能和服务器端其他配置重名.
type = https                    # https协议
local_ip = 127.0.0.1            # 127.0.0.1指穿透本机,也可以填写群晖内网IP.
local_port = 5001               # 群晖内网HTTPS端口,默认为5001.
custom_domains = nas.ioiox.com  # 填写你的域名

注意frpc.ini中不需要以上参照的注释符号和注释,即#和#之后的文字.

6.jpg

frpc.ini配置常见问题,新手用户请注意以下折叠内容

确定frpc.ini配置格式正确?针对新手用,可以展开详细解读.

frpc.ini配置正确与否是容器能否正常启动的关键,大多网友留言咨询容器启动错误,几乎都是配置不规范导致的.针对新手小白用户,这里详细讲解每一行该如何配置.

首先,为避免frpc.ini的编码问题,请使用群晖套件的文本编辑器在线编辑,有网友使用Windows系统来编辑frpc.ini因编码问题导致即使配置正确,容器也无法运行.

frpc解读

第一段服务器信息一般不会出错,正确填写提供的信息即可.
第二段详细解读

[web1]

必须修改,避免与你自己或者服务器上其他人的名称重复,由于无法知晓其他人设置的名称,建议使用你自己的域名+数字形式,例如[nas_xxx_com_3745283].这样能够有效的避免此问题.

type = http

穿透的协议,一般是http和https两种,对应的端口也不同,一定要确保你所选的协议和该协议的端口号保持一直.

local_ip = 127.0.0.1

需要穿透的设备IP,可以为本机穿透,本机填写127.0.0.1即可,也可以为通局域网内其他设备穿透,输入该设备内网IP即可,例如:192.168.1.7

local_port = 5000

此处也是容易出错的地方,这里为需要穿透的设备的http或者https协议对应的端口,例如群晖的是5000和5001,那么上述type协议选择http,此处就填写5000,上述type协议如果选择https,此处填写5001.如果你曾经在群晖的控制面板内修改过端口,那么就需要改为修改过的端口.另外,内网穿透是无视路由器的端口转发配置,无论你是否设置过路由器,都可以忽略不管.

custom_domains = www.ioiox.com

同一个域名可以配置两个协议,http和https,由于可能出现的手误,少打一个s,就会导致同一个域名配置了2个相同http,从而也可能会导致容器出错.请再三检查确保无误.

当第一个配置成功运行,并正常访问后,在来尝试添加更多条配置.

常见错误

  • 名称与自己其他配置重复,或者与服务器上重复.
  • 协议与域名重复
  • 协议与端口配置错误
  • frpc.ini编码问题

三、创建容器

选择映像启动
7.jpg
勾选使用高权限执行容器
高级设置
8.jpg
选择卷
添加文件-指定到你frpc.ini所在的位置
装载路径为/frp/frpc.ini

装载路径由镜像作者规定,不能修改,请直接复制粘贴.

9.jpg
选择网络
勾选使用与Docker Host相同的网络
应用
下一步
10.jpg
应用即完成配置
11.jpg
容器中可以查看frpc正在运行中.
可以随时停止容器,编辑frpc.ini来配置你的域名,再次启动容器即可.全程无需使用命令行来操作.
12.jpg


结语

本文介绍的Docker中运行frpc客户端的实际体验远比之前使用命令行来配置frpc加方便简洁.推荐大家使用此方法来部署你的内网穿透服务.更多群晖NAS相关技巧,教程及信息,请持续关注本站群晖Synology专栏:

本文为 Stille 原创文章.经实践,测试,整理发布.如需转载请联系作者获得授权,并注明转载地址.

本文链接 https://www.ioiox.com/archives/26.html

最后修改:2019 年 11 月 21 日 02 : 10 PM

46 条评论

  1. 咚咚

    楼主,按照你的配置方式docker总是意外停止这个是什么原因知道吗?

    1. Stille
      @咚咚

      说明frpc配置错误.在仔细核实下

      1. 咚咚
        @Stille
        该评论仅登录用户及评论双方可见
        1. Stille
          @咚咚

          web1 web2 改为其他的,不能和服务器上其他人重名,改特殊一点

          在就是80,443端口应该改为你群晖的内网端口

          1. 咚咚
            @Stille
            该评论仅登录用户及评论双方可见
            1. 咚咚
              @咚咚
              该评论仅登录用户及评论双方可见
              1. Stille
                @咚咚

                根据你这个配置,应该是没有错误.
                看其他流程有没有遗漏.frpc命令是不是frpc.ini
                在就是装载路径是否正确,你点击容器-编辑可以看看,或者截图给我看下

                1. 咚咚
                  @Stille

                  主问截图我如何发给你看呢?评论里面没有地方可以上传截图。

                  1. Stille
                    @咚咚

                    https://pic.ioiox.com 上传发我链接地址吧

                      1. Stille
                        @咚咚

                        没问题呢...frpc.ini打开截图我看下..

                        1. 咚咚
                          @Stille
                          该评论仅登录用户及评论双方可见
                          1. Stille
                            @咚咚

                            我复制你的配置启动容器正常,服务器端也显示连接成功.
                            建议你删除容器,重新按照教程创建.

                            1. 咚咚
                              @Stille

                              我就是反复删除创建了两三次还是不行我才来求助咯。

                              1. Stille
                                @咚咚

                                结果因素
                                1,frp服务器端 - 测试正常
                                2,frpc.ini - 测试正常 (还有种可能是否是frpc.ini的编码问题,你用套件中心的文本编辑器来在线编辑,不要在Windows下配置)
                                3,以上不行那就估计是docker容器配置问题 - 目前只有这里你需要在多尝试了.是在不行,删除镜像,重新创建.试试

                                1. 咚咚
                                  @Stille

                                  好像还真是文件编码问题,我按你说的在docker里面安装文本编辑器就不会意外停止了,[ds3615xs80]应该在线了吧。

                                  1. Stille
                                    @咚咚

                                    搞定就好..

            2. Stille
              @咚咚

              1,你的web1和2 type都是HTTP,域名也都是一样,穿透了80和5000两个端口,是导致错误的根源,把下面那个http改为https
              2,本地如何跳转无所谓,根据这图你看下你DSM的端口是多少,你的frpc.ini就填写什么端口.
              https://www.ioiox.com/usr/uploads/2019/02/3410029334.jpg

  2. 甲木
    该评论仅登录用户及评论双方可见
    1. Stille
      @甲木

      刚才ping你的域名没有指向frp服务器呢?

      1. 甲木
        @Stille

        方便的话加一下您的qq,晚上回家再请教。

        1. Stille
          @甲木
          该评论仅登录用户及评论双方可见
          1. 甲木
            @Stille
            该评论仅登录用户及评论双方可见
      2. 甲木
        @Stille

        真真小白,按照你的教程操作的。需要自己再搞一个服务器吗

        1. Stille
          @甲木

          这个根据你实际情况来吧..你可以尝试按小时计费买个阿里云或者腾讯云的服务器,试用几天速度,如果感觉好,正好双11活动,服务器都很超值的.

    2. Stille
      @甲木

      secret
      server_addr = frp.ioiox.com
      server_port = 7007
      token = www.ioiox.com

      [jiamu.jasonfoo]
      type = http
      local_ip = 127.0.0.1
      local_port = 80
      custom_domains = www.jiamu.com

      [jiamu.jasonfoof]
      type = https
      local_ip = 127.0.0.1
      local_port = 443
      custom_domains = www.ioiox.com
      [/secret]

    3. Stille
      @甲木

      把 所有//和之后的注释删除掉.

      1. 甲木
        @Stille
        该评论仅登录用户及评论双方可见
  3. rainyday01

    你好,我用的vultr,访问域名能进入welcome界面,加了:5000以后打不开页面了请问有哪里不对吗?路由器设置了端口转发。

    1. Stille
      @rainyday01

      都用frp了,就是为了不需要端口访问,还加5000端口干嘛?

  4. laozhou

    照你的设置,frpc一启动就停止了。是什么原因呢老师

    1. Stille
      @laozhou

      1,frpc.ini格式是否正确,任意命名不能与服务器上已有的重复,尽量特殊一点
      2,frp服务器确保是可用的,服务器端连不上也会引起
      3,软件版本尽量与服务器端一致
      一般就这几种情况会引起问题

      1. 呵呵
        @Stille

        frpc.ini 意思是这个名字要不一样是吗 后缀保持一致就可以了 ?0.24 连接的是大佬你的服务器 一运行就关闭是什么问题大佬 frpc.ini 名称也改了还不行 求大佬指点

        1. 呵呵
          @呵呵

          secret
          server_addr = frp.ioiox.com //填写你的服务器IP或者地址
          server_port = 7007 //与frps.ini的端口保持一致,默认为7000.
          token = www.xxorg.com //与frps.ini设置的token保持一致

          [web1] //任意命名,不可重复.
          type = http //http协议
          local_ip = 192.168.1.100 //默认无需修改
          local_port = 5000 //http使用80端口
          custom_domains = nas.wushuowei.online //填写你的域名

          [web2] //任意命名,不可重复
          type = https //https协议
          local_ip = 192.168.1.100 //默认无需修改
          local_port = 5001 //https使用443端口
          custom_domains = nas.wushuowei.online //填写你的域名
          [/secret]

        2. Stille
          @呵呵

          最好就用frpc.ini 后缀为ini.
          你把配置文件复制我看下
          一般一运行就报错就是配置文件错误

          1. 呵呵
            @Stille

            大佬牛逼

            1. Stille
              @呵呵

              测试了下你的域名,使用内网穿透访问DMS管理页面,不要开启https强制跳转.否则会跳到5001端口就访问不了啦

              1. 呵呵
                @Stille
                该评论仅登录用户及评论双方可见
                1. Stille
                  @呵呵
                  该评论仅登录用户及评论双方可见
          2. 呵呵
            @Stille

            secret
            server_addr = frp.ioiox.com //填写你的服务器IP或者地址
            server_port = 7007 //与frps.ini的端口保持一致,默认为7000.
            token = www.xxorg.com //与frps.ini设置的token保持一致

            [web1] //任意命名,不可重复.
            type = http //http协议
            local_ip = 192.168.1.100 //默认无需修改
            local_port = 5000 //http使用80端口
            custom_domains = nas.wushuowei.online //填写你的域名

            [web2] //任意命名,不可重复
            type = https //https协议
            local_ip = 192.168.1.100 //默认无需修改
            local_port = 5001 //https使用443端口
            custom_domains = nas.wushuowei.online //填写你的域名
            [/secret]

            1. Stille
              @呵呵
              该评论仅登录用户及评论双方可见
      2. 黄大仙
        @Stille

        我用的是最新版本的0.261,有问题么

        1. Stille
          @黄大仙

          参照我提供的免费frp设置试试.
          https://www.ioiox.com/archives/52.html

      3. laozhou
        @Stille

        谢谢老师热点。3Q!!!!

        1. laozhou
          @laozhou

          谢谢老师指点,谢谢!

  5. Maple

    你好,我的群晖用waiwang.men的公益frp,设置好以后还是打不开,其他的端口转发和路由器的登陆界面都是正常的,我找不到原因在哪,端口号5000都是对的,你有思路吗?

发表评论