当前位置: 首页 > news >正文

【群晖NAS】在openwrt上实现内网穿透,并配置外网IP映射(Debian/Ubuntu)

【群晖NAS】在openwrt上实现内网穿透,并配置外网IP映射(Debian/Ubuntu)

文章目录

  • 【群晖NAS】在`openwrt`上实现内网穿透,并配置外网IP映射(Debian/Ubuntu)
    • 一、`frp`项目介绍
    • 二、`frp`功能介绍
    • 三、安装frps服务端(docker部署)
      • (一)安装docker
      • (二)配置安装frps
      • (三)启动frps容器
      • (四)frps安装完毕,检查测试
    • 三、安装frpc客户端(openwrt安装)
      • (一)更新openrt软件源列表
      • (二)输入luci-app-frpc ,安装 luci-i18n-frpc-zh-cn 中文界面软件包,同时会自动安装所需的其他依赖包
      • (三)包安装成功后,刷新页面,在服务中即可找的frpc客户端
      • (四)配置frpc客户端(openwrt配置)
      • (五)添加端口映射
      • (六)检查映射的端口是否成功

一、frp项目介绍

frp 是一款高性能的反向代理应用,专注于内网穿透。它支持多种协议,包括 TCP、UDP、HTTP、HTTPS 等,并且具备 P2P 通信功能。使用 frp,您可以安全、便捷地将内网服务暴露到公网,通过拥有公网 IP 的节点进行中转。

github项目地址

二、frp功能介绍

通过在具有公网 IP 的节点上部署 frp 服务端,您可以轻松地将内网服务穿透到公网,并享受以下专业特性:

  • 多种协议支持:客户端服务端通信支持 TCP、QUIC、KCP 和 Websocket 等多种协议。

  • TCP 连接流式复用:在单个连接上承载多个请求,减少连接建立时间,降低请求延迟。

  • 代理组间的负载均衡

  • 端口复用:多个服务可以通过同一个服务端端口暴露。

  • P2P 通信:流量不必经过服务器中转,充分利用带宽资源。

  • 客户端插件:提供多个原生支持的客户端插件,如静态文件查看、HTTPS/HTTP 协议转换、HTTP、SOCKS5 代理等,以便满足各种需求。

  • 服务端插件系统:高度可扩展的服务端插件系统,便于根据自身需求进行功能扩展。

  • 用户友好的 UI 页面:提供服务端和客户端的用户界面,使配置和监控变得更加方便。

三、安装frps服务端(docker部署)

(一)安装docker

apt-get update
apt-get -y install docker.io
检查docker安装是否正常
docker -v

(二)配置安装frps

为避免因 frps.ini 文件的挂载,格式或者配置的错误导致容器无法正常运行并循环重启.请确保先配置好 frps.ini 后在执行启动.

配置 frps.ini 文件.

mkdir /root/frps
# 新建frps目录
vi /root/frps/frps.ini
# 配置 frps.ini 文件

frps.ini配置示例

[common]
bind_addr = 0.0.0.0
bind_port = 7000
bind_udp_port = 7001
kcp_bind_port = 7000
#7000/70001/7000为穿透流量传输端口,以下没有特殊需求保持默认即可
vhost_http_port = 80
#http协议配置为80端口,根据实际需求更改
vhost_https_port = 443
#https协议配置为80端口,根据实际需求更改
dashboard_addr = 0.0.0.0
dashboard_port = 7500
#web管理后台端口7500,客户端需要和此对应
dashboard_user = admin
#web管理后台用户名配置
dashboard_pwd = 123456
#web管理后台密码配置
log_file = ./frps.log
#日志路径
log_level = info
#日志保存级别
log_max_days = 3
#日志保存最大天数
disable_log_color = false
#日志文字颜色
token = 123456
#认证密钥,请自行更改,客户端需要和此对应
max_pool_count = 5000
# 最大连接数
max_ports_per_client = 5000
subdomain_host = xx.xx.com
#服务端绑定域名,客户端需要和此对应
tcp_mux = true
#TCP 端口的多路复用

(三)启动frps容器

docker run -d --name=frps --restart=always \--network host \-v /root/frps/frps.ini:/frp/frps.ini  \stilleshan/frps:0.51.3

服务运行中修改 frps.ini 配置后需重启 frps 服务.

vi /root/frps/frps.ini
# 修改 frps.ini 配置
docker restart frps
# 重启 frps 容器即可生效

(四)frps安装完毕,检查测试

浏览器打开web后台地址,默认端口7500

http://ip:7500/

输入配置的用户名和密码,看到以下页面,说明frp服务端安装成功
在这里插入图片描述

三、安装frpc客户端(openwrt安装)

(一)更新openrt软件源列表

在这里插入图片描述

(二)输入luci-app-frpc ,安装 luci-i18n-frpc-zh-cn 中文界面软件包,同时会自动安装所需的其他依赖包

在这里插入图片描述

(三)包安装成功后,刷新页面,在服务中即可找的frpc客户端

在这里插入图片描述

(四)配置frpc客户端(openwrt配置)

输入服务端设置的相应参数配置

  • 基本设置
    在这里插入图片描述
  • 其他设置
    在这里插入图片描述
  • 配置好后记得点 保存并应用

(五)添加端口映射

  • 点击新增,添加端口映射
    在这里插入图片描述
    示例将内网 10.0.0.1的80端口映射至服务端IP的8880端口,设置好后点击 保存并应用,即可完成一个端口的映射
    在这里插入图片描述

(六)检查映射的端口是否成功

打开frps服务端的后台web面板

http://ip:7500

如果配置正确,web面板上即可看到你添加的端口映射显示出来,此时检查测试服务端IP的8880端口是否成功映射

在这里插入图片描述

http://www.dtcms.com/a/339979.html

相关文章:

  • 2025-08-19利用opencv检测图片中文字及图片的坐标
  • RocketMq消费者动态订阅topic
  • 【PyTorch项目实战】OpenNMT本地机器翻译框架 —— 支持本地部署和自定义训练
  • 千里马招标网站的核心技术分析
  • qwen2.5vl(1): 环境安装及运行
  • 二维图像处理(完整版2)
  • iOS安全和逆向系列教程 第22篇:iOS应用网络安全与通信保护
  • 自学python第10天
  • 路由器最大传输速率测试
  • VS Code 终端完全指南
  • Pandas中数据清理、连接数据以及合并多个数据集的方法
  • 仿新浪微博 typecho 主题模板源码
  • 1. AutoSAR 技术学习
  • Spring AOP核心原理与实战指南
  • 任务十一 搜索页面开发
  • Incredibuild 新增 Unity 支持:击破构建时间过长的痛点
  • AutoSarAP状态管理的状态机能否理解成C++的类?
  • 电视系统:开启视听新时代
  • 一个多功能的文件分享工具--zdir手动部署教程
  • 垂直领域大模型构建:法律行业“类ChatGPT”系统的训练与落地
  • el-table合并单元格
  • 接口自动化测试大全(python+pytest+allure)
  • Angular极速入门
  • 【CUDA教程--3】通过简单的矩阵运算入门CUDA
  • cursor+mcp-clickhouse进行数据分析
  • Spring循环依赖源码调试详解,用两级缓存代替三级缓存
  • JB4-9-任务调度
  • 网络通信基础:从数据链路层到传输层
  • 如何解决pip安装报错ModuleNotFoundError: No module named ‘paramiko’问题
  • Leetcode 3652. Best Time to Buy and Sell Stock using Strategy