Synology-群晖(三):frp内网穿透实现外网访问家中设备

2023-10-15 06:20

本文主要是介绍Synology-群晖(三):frp内网穿透实现外网访问家中设备,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

购买服务器

  • 这里不过多介绍(带宽越高网速越快,也越贵)

配置安全组(重要

  • 根据自己的实际端口好进行开放端口配置即可
  • 以阿里云为例:阿里云控制台有专门的配置安全组的地方

下载frp

  • GitHub地址:https://github.com/fatedier/frp
    在这里插入图片描述

  • frp软件地址(Linux):https://github.com/fatedier/frp/releases
    在这里插入图片描述

  • 复制下载链接

    • https://github.com/fatedier/frp/releases/download/v0.35.1/frp_0.35.1_linux_amd64.tar.gz
  • ssh接入Linux服务器下载资源

    • ssh root@---.---.---.---
    • wget https://github.com/fatedier/frp/releases/download/v0.35.1/frp_0.35.1_linux_amd64.tar.gz
  • 解压资源并修改文件夹名称

    • tar -zxvf frp_0.35.1_linux_amd64.tar.gz && mv frp_0.35.1_linux_amd64 frp

配置服务端-修改frps配置文件

  • 修改frps.ini文件:
    [common]
    bind_port = 自定义端口号
    token = 使用你自定义的明文token
    
  • 启动服务(注意有可能无权限需要配置权限sudo chmod -R 777 /root/frp
    • 启动:/root/frp/frps -c /root/frp/frps.ini
    • 停止:/root/frp/frps -s /root/frp/frps.ini
  • 配置开机后台自启服务(注意可能服务启动报错无法使用,可以在服务顶部加上 #!/bin/sh 试一试)
    • vi /lib/systemd/system/frps.service
      #!/bin/sh
      [Unit]
      Description=Frp Server Service
      After=network.target[Service]
      Type=simple
      ExecStart=/root/frp/frps -c /root/frp/frps.ini # 启动命令[Install]
      WantedBy=multi-user.target
      
    • 启动命令:
      • 开机后台自启:systemctl enable frps
      • 启动服务:systemctl start frps
      • 查看启动状态:systemctl status frps 在这里插入图片描述
  • 服务其配置完成
    • 要是有其他问题可以在下方留言

配置客户端(群晖)

  • 安装docker套件
    在这里插入图片描述

  • 打开docker查找frpc并下载安装
    在这里插入图片描述

  • 创建容器并配置
    在这里插入图片描述

    • 一直点击下一步即可(之后在进行容器的配置
  • 配置容器

    • 先关闭服务,点击编辑 修改 , 文件/文件夹 位置可自己定义位置
    • 含义:将目标容器中的配置文件挂载到外部,实现在宿主主机上进行配置后会直接同步映射到容器内的配置,不用每次都进入容器内进行修改在这里插入图片描述
    • 配置nas中的配置文件docker/frp/frpc.ini
      [common]
      server_addr = 服务起IP地址
      server_port = 之前服务器配置的端口
      token = 之前服务器配置的token   # 相当于暗号[ssh] # 配置ssh
      type = tcp
      local_ip = 127.0.0.1
      local_port = 22
      remote_port = 端口号 # 服务器IP加此端口号相当于nas本地访问127.0.0.1:22[nas] # nas系统登陆进入系统页面
      type = tcp
      local_ip = 127.0.0.1
      local_port = 5000
      remote_port = 端口号 # 服务器IP加此端口号相当于nas本地访问127.0.0.1:5000
      
    • 保存配置,重启docker服务

以上配置完成-查看是否配置成功

  • 打开日志查看容器
    在这里插入图片描述
  • 成功
    • nas: 服务器IP:配置的端口号(remote_port) (连不上可能是你群晖内置的ssh设置没有钩上)
    • ssh: ssh 用户名@服务器IP -p 配置的端口号(remote_port)

这篇关于Synology-群晖(三):frp内网穿透实现外网访问家中设备的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/215920

相关文章

Oracle查询优化之高效实现仅查询前10条记录的方法与实践

《Oracle查询优化之高效实现仅查询前10条记录的方法与实践》:本文主要介绍Oracle查询优化之高效实现仅查询前10条记录的相关资料,包括使用ROWNUM、ROW_NUMBER()函数、FET... 目录1. 使用 ROWNUM 查询2. 使用 ROW_NUMBER() 函数3. 使用 FETCH FI

Python脚本实现自动删除C盘临时文件夹

《Python脚本实现自动删除C盘临时文件夹》在日常使用电脑的过程中,临时文件夹往往会积累大量的无用数据,占用宝贵的磁盘空间,下面我们就来看看Python如何通过脚本实现自动删除C盘临时文件夹吧... 目录一、准备工作二、python脚本编写三、脚本解析四、运行脚本五、案例演示六、注意事项七、总结在日常使用

Java实现Excel与HTML互转

《Java实现Excel与HTML互转》Excel是一种电子表格格式,而HTM则是一种用于创建网页的标记语言,虽然两者在用途上存在差异,但有时我们需要将数据从一种格式转换为另一种格式,下面我们就来看看... Excel是一种电子表格格式,广泛用于数据处理和分析,而HTM则是一种用于创建网页的标记语言。虽然两

Java中Springboot集成Kafka实现消息发送和接收功能

《Java中Springboot集成Kafka实现消息发送和接收功能》Kafka是一个高吞吐量的分布式发布-订阅消息系统,主要用于处理大规模数据流,它由生产者、消费者、主题、分区和代理等组件构成,Ka... 目录一、Kafka 简介二、Kafka 功能三、POM依赖四、配置文件五、生产者六、消费者一、Kaf

Java访问修饰符public、private、protected及默认访问权限详解

《Java访问修饰符public、private、protected及默认访问权限详解》:本文主要介绍Java访问修饰符public、private、protected及默认访问权限的相关资料,每... 目录前言1. public 访问修饰符特点:示例:适用场景:2. private 访问修饰符特点:示例:

使用Python实现在Word中添加或删除超链接

《使用Python实现在Word中添加或删除超链接》在Word文档中,超链接是一种将文本或图像连接到其他文档、网页或同一文档中不同部分的功能,本文将为大家介绍一下Python如何实现在Word中添加或... 在Word文档中,超链接是一种将文本或图像连接到其他文档、网页或同一文档中不同部分的功能。通过添加超

windos server2022里的DFS配置的实现

《windosserver2022里的DFS配置的实现》DFS是WindowsServer操作系统提供的一种功能,用于在多台服务器上集中管理共享文件夹和文件的分布式存储解决方案,本文就来介绍一下wi... 目录什么是DFS?优势:应用场景:DFS配置步骤什么是DFS?DFS指的是分布式文件系统(Distr

NFS实现多服务器文件的共享的方法步骤

《NFS实现多服务器文件的共享的方法步骤》NFS允许网络中的计算机之间共享资源,客户端可以透明地读写远端NFS服务器上的文件,本文就来介绍一下NFS实现多服务器文件的共享的方法步骤,感兴趣的可以了解一... 目录一、简介二、部署1、准备1、服务端和客户端:安装nfs-utils2、服务端:创建共享目录3、服

C#使用yield关键字实现提升迭代性能与效率

《C#使用yield关键字实现提升迭代性能与效率》yield关键字在C#中简化了数据迭代的方式,实现了按需生成数据,自动维护迭代状态,本文主要来聊聊如何使用yield关键字实现提升迭代性能与效率,感兴... 目录前言传统迭代和yield迭代方式对比yield延迟加载按需获取数据yield break显式示迭

Python实现高效地读写大型文件

《Python实现高效地读写大型文件》Python如何读写的是大型文件,有没有什么方法来提高效率呢,这篇文章就来和大家聊聊如何在Python中高效地读写大型文件,需要的可以了解下... 目录一、逐行读取大型文件二、分块读取大型文件三、使用 mmap 模块进行内存映射文件操作(适用于大文件)四、使用 pand