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

相关文章

Spring Boot配置和使用两个数据源的实现步骤

《SpringBoot配置和使用两个数据源的实现步骤》本文详解SpringBoot配置双数据源方法,包含配置文件设置、Bean创建、事务管理器配置及@Qualifier注解使用,强调主数据源标记、代... 目录Spring Boot配置和使用两个数据源技术背景实现步骤1. 配置数据源信息2. 创建数据源Be

在MySQL中实现冷热数据分离的方法及使用场景底层原理解析

《在MySQL中实现冷热数据分离的方法及使用场景底层原理解析》MySQL冷热数据分离通过分表/分区策略、数据归档和索引优化,将频繁访问的热数据与冷数据分开存储,提升查询效率并降低存储成本,适用于高并发... 目录实现冷热数据分离1. 分表策略2. 使用分区表3. 数据归档与迁移在mysql中实现冷热数据分

Linux之platform平台设备驱动详解

《Linux之platform平台设备驱动详解》Linux设备驱动模型中,Platform总线作为虚拟总线统一管理无物理总线依赖的嵌入式设备,通过platform_driver和platform_de... 目录platform驱动注册platform设备注册设备树Platform驱动和设备的关系总结在 l

linux批量替换文件内容的实现方式

《linux批量替换文件内容的实现方式》本文总结了Linux中批量替换文件内容的几种方法,包括使用sed替换文件夹内所有文件、单个文件内容及逐行字符串,强调使用反引号和绝对路径,并分享个人经验供参考... 目录一、linux批量替换文件内容 二、替换文件内所有匹配的字符串 三、替换每一行中全部str1为st

SpringBoot集成MyBatis实现SQL拦截器的实战指南

《SpringBoot集成MyBatis实现SQL拦截器的实战指南》这篇文章主要为大家详细介绍了SpringBoot集成MyBatis实现SQL拦截器的相关知识,文中的示例代码讲解详细,有需要的小伙伴... 目录一、为什么需要SQL拦截器?二、MyBATis拦截器基础2.1 核心接口:Interceptor

SpringBoot集成EasyPoi实现Excel模板导出成PDF文件

《SpringBoot集成EasyPoi实现Excel模板导出成PDF文件》在日常工作中,我们经常需要将数据导出成Excel表格或PDF文件,本文将介绍如何在SpringBoot项目中集成EasyPo... 目录前言摘要简介源代码解析应用场景案例优缺点分析类代码方法介绍测试用例小结前言在日常工作中,我们经

基于Python实现简易视频剪辑工具

《基于Python实现简易视频剪辑工具》这篇文章主要为大家详细介绍了如何用Python打造一个功能完备的简易视频剪辑工具,包括视频文件导入与格式转换,基础剪辑操作,音频处理等功能,感兴趣的小伙伴可以了... 目录一、技术选型与环境搭建二、核心功能模块实现1. 视频基础操作2. 音频处理3. 特效与转场三、高

WinForm跨线程访问UI及UI卡死的解决方案

《WinForm跨线程访问UI及UI卡死的解决方案》在WinForm开发过程中,跨线程访问UI控件和界面卡死是常见的技术难题,由于Windows窗体应用程序的UI控件默认只能在主线程(UI线程)上操作... 目录前言正文案例1:直接线程操作(无UI访问)案例2:BeginInvoke访问UI(错误用法)案例

Python实现中文文本处理与分析程序的示例详解

《Python实现中文文本处理与分析程序的示例详解》在当今信息爆炸的时代,文本数据的处理与分析成为了数据科学领域的重要课题,本文将使用Python开发一款基于Python的中文文本处理与分析程序,希望... 目录一、程序概述二、主要功能解析2.1 文件操作2.2 基础分析2.3 高级分析2.4 可视化2.5

Java实现预览与打印功能详解

《Java实现预览与打印功能详解》在Java中,打印功能主要依赖java.awt.print包,该包提供了与打印相关的一些关键类,比如PrinterJob和PageFormat,它们构成... 目录Java 打印系统概述打印预览与设置使用 PageFormat 和 PrinterJob 类设置页面格式与纸张