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

使用frp配置内网机器访问

frp简介

frp 是一个开源、简洁易用、高性能的内网穿透和反向代理软件,支持 tcp, udp, http, https等协议。frp 项目官网是 https://github.com/fatedier/frp,软件下载地址为https://github.com/fatedier/frp/releases

frp工作原理

  • 服务端运行,监听一个主端口,等待客户端的连接;
  • 客户端连接到服务端的主端口,同时告诉服务端要监听的端口和转发类型;
  • 服务端fork新的进程监听客户端指定的端口;
  • 外网用户连接到客户端指定的端口,服务端通过和客户端的连接将数据转发到客户端;
  • 客户端进程再将数据转发到本地服务,从而实现内网对外暴露服务的能力。

简单来说,就是可以随时随地通过有公网 IP的服务器 中转连接到运行 frpc 程序的任意机器的任意端口

安装包结构

下载linux安装包:frp_0.47.0_linux_amd64.tar.gz,解压后文件如下:
在这里插入图片描述

服务端相关文件

frps 、frps_full.init 、frps.ini

  • frps服务端运行程序
  • frps.ini:服务端配置文件(简化版)
  • frps_full.ini:服务端配置文件(完整版配置模板)

客户端相关文件

frpc 、frpc_full.init 、frpc.ini

  • frpc:客户端运行程序
  • frpc.ini:客户端配置文件(简化版)
  • frpc_full.ini:客户端配置文件(完整版配置模板)

frp配置

服务端配置

服务端配置文件为 frps.init,配置如下图:

[common]
#bind_port是服务端与客户端之间通信使用的端口号
bind_port = 7000
#与客户端的token必须设置成一致,token用于验证连接,只有服务端和客户端token相同的时候才能正常访问。如果不使用token,那么所有人都可以直接连接上
token = 123456
#开启仪表板
dashboard_port = 6556
dashboard_user = admin
dashboard_pwd = admin

服务端启动

./frps -c ./frps.ini

客户端配置

客户端配置文件为 frpc.init,配置如下图:

[common]
#服务端ip
server_addr = xxx.xxx.xxx.xxx  # frp服务端所在的IP(公网IP)
#服务端与客户端之间通信使用的端口号
server_port = 7000
#与服务端的token必须设置成一致
token = 123456[ssh]
type = tcp
local_ip = 127.0.0.1 # 部署客户端的机器的IP,默认写127.0.0.1即可
local_port = 22 # 本地的ssh端口
remote_port = 6000 # 通过frp服务端IP的6000端口即可访问本机的22端口#本地服务1
[web1]
type = http
local_ip = 127.0.0.1 # 部署客户端的机器的IP,默认写127.0.0.1即可
local_port = 8090  # 本地web1应用的端口
remote_port = 9090 # 通过frp服务端IP的9090端口即可访问本机的8090端口应用#本地服务2
[web2]
type = http
local_ip = 127.0.0.1 # 部署客户端的机器的IP,默认写127.0.0.1即可
local_port = 8091  # 本地web1应用的端口
remote_port = 9091 # 通过frp服务端IP的9091端口即可访问本机的8091端口应用

相关文章:

使用frp配置内网机器访问

frp简介 frp 是一个开源、简洁易用、高性能的内网穿透和反向代理软件,支持 tcp, udp, http, https等协议。frp 项目官网是 https://github.com/fatedier/frp,软件下载地址为https://github.com/fatedier/frp/releases frp工作原理 服务端运行&#xf…...

简述7个流行的强化学习算法及代码实现!

目前流行的强化学习算法包括 Q-learning、SARSA、DDPG、A2C、PPO、DQN 和 TRPO。这些算法已被用于在游戏、机器人和决策制定等各种应用中,并且这些流行的算法还在不断发展和改进,本文我们将对其做一个简单的介绍。1、Q-learningQ-learning:Q-…...

朗润国际期货招商:地方政府工作报告中对于促进消费

地方政府工作报告中对于促进消费 北京:把恢复和扩大消费摆在优先位置。加紧推进国际消费中心城市建设、深化商圈改造提升行动、统筹推进物流基地规划建设,强化新消费地标载体建设、试点建设80个“一刻钟便民生活圈”,提高生活性服务重品质。…...

前端性能优化的一些技巧(90% chatGpt生成)

终于弄好了chatGpt的账号,赶紧来体验一波。先来一波结论,这篇文章的主要内容来源,90%是用chatGpt生成的。先上chatGpt的生成的结果:作为一名懒惰的程序员,chatGpt会帮助我变得更懒...,好了下面开始文章的正…...

[软件工程导论(第六版)]第8章 维护(复习笔记)

文章目录8.1 软件维护的定义8.2 软件维护的特点8.3 软件维护过程8.4 软件的可维护性8.5 预防性维护8.6 软件再工程过程维护的基本任务:保证软件在一个相当长的时期能够正常运行软件工程的主要目的就是要提高软件的可维护性,减少软件维护所需要的工作量&a…...

Python - 绘制人体生物节律

文章目录项目说明关于人体生物节律用到的技术代码实现获取每月有多少天计算每天到生日过了多少天计算节律绘图结果项目说明 这里仿照 http://www.4qx.net/The_Human_Body_Clock.php 做一个人体生物节律的计算和展示 关于人体生物节律 百度/维基百科 解释 https://zh.wikiped…...

【NVMEM子系统】二、NVMEM驱动框架

个人主页:董哥聊技术我是董哥,嵌入式领域新星创作者创作理念:专注分享高质量嵌入式文章,让大家读有所得!文章目录1、前言2、驱动框架3、源码目录结构4、用户空间下的目录结构1、前言 NVMEM SUBSYSTEM,该子系…...

小波神经网络(WNN)的实现(Python,附源码及数据集)

文章目录一、理论基础1、小波神经网络结构2、前向传播过程3、反向传播过程4、建模步骤二、小波神经网络的实现1、训练过程(WNN.py)2、测试过程(test.py)3、测试结果4、参考源码及实验数据集一、理论基础 小波神经网络&#xff08…...

商标干货!所有企业都值得收藏!

商标,是用于识别和区分不同商品或服务来源的标志,代表了企业的产品质量和服务保证,可以说,商标承载了一个企业的信誉,是企业参与市场竞争的重要工具,对于企业及其产品的重要性不言而喻。 根据《商标法》四十…...

4次迭代,让我的 Client 优化 100倍!泄漏一个 人人可用的极品方案!

4次迭代,让我的HttpClient提速100倍 在大家的生产项目中,经常需要通过Client组件(HttpClient/OkHttp/JDK Connection)调用第三方接口。 尼恩的一个生产项目也不例外。 在一个高并发的中台生产项目中。有一个比较特殊的请求,一次…...

并查集(高级数据结构)-蓝桥杯

一、并查集并查集(Disioint Set):一种非常精巧而实用的数据结构用于处理不相交集合的合并问题。用于处理不相交集合的合并问题。经典应用:连通子图。最小生成树Kruskal算法。最近公共祖先。二、应用场景有n个人,他们属于不同的帮派。 已知这些…...

你是真的“C”——C语言详解求两个正数最小公倍数的3种境界

C语言详解求两个正数最小公倍数的3种境界~😎前言🙌必备小知识~😘求最小公倍数境界1~ 😊求最小公倍数境界2~ 😊求最小公倍数境界3~ 😊总结撒花💞博客昵称:博客小梦😊 最喜…...

【java】Spring Cloud --Feign Client超时时间配置以及单独给某接口设置超时时间方法

文章目录feign配置(最常用)ribbon配置hystrix配置单独给某接口设置超时时间FeignClient面对服务级有三种超时时间配置feign配置(最常用) feign:sentinel:enabled: trueclient:config:default://全部服务配置connectTimeout: 5000…...

spark代码

RDD Tom,DataBase,80 Tom,Algorithm,50 Tom,DataStructure,60 Jim,DataBase,90 Jim,Algorithm,60 Jim,DataStructure,80 该系总共有多少学生; val lines sc.textFile("file:///usr/local/spark/sparksqldata/Data01.txt") val par lines.map(ro…...

利用OpenCV的函数equalizeHist()对图像作直方图均衡化处理

如果一幅图像的灰度值集中在某个比较窄的区域,则图像的对比度会显得比较小,不便于对图像的分析和处理。 图像的直方图均衡化可以实现将原图像的灰度值范围扩大,这样图像的对比度就得到了提高,从而方便对图像进行后续的分析和处理…...

星河智联Android开发

背景:朋友内推,过了一周约面。本人 2019年毕业 20230208一面 1.自我介绍 2.为啥换工作 3.项目经历(中控面板、智能音箱、语音问的比较细) 4.问题 Handler机制原理?了解同步和异步消息吗?View事件分发…...

【C++】关联式容器——map和set的使用

文章目录一、关联式容器二、键值对三、树形结构的关联式容器1.set2.multiset3.map4.multimap四、题目练习一、关联式容器 序列式容器📕:已经接触过STL中的部分容器,比如:vector、list、deque、forward_list(C11)等,这些容器统称为…...

Promise的实现原理

作用:异步问题同步化解决方案,解决回调地狱、链式操作原理: 状态:pending、fufilled reject构造函数传入一个函数,resolve进入then,reject进入catch静态方法:resolve reject all any react ne…...

【MFC】数据库操作——ODBC(20)

ODBC:开放式数据库连接,是为解决异构数据库(不同数据库采用的数据存储方法不同)共享而产生的。ODBC API相对来说非常复杂,这里介绍MFC的ODBC类。 添加ODBC用户DSN 首先,在计算机中添加用户DSN:(WIN10下&a…...

旺店通与金蝶云星空对接集成采购入库单接口

旺店通旗舰奇门与金蝶云星空对接集成采购入库单查询连通销售退货新增V1(12-采购入库单集成方案-P)数据源系统:旺店通旗舰奇门旺店通是北京掌上先机网络科技有限公司旗下品牌,国内的零售云服务提供商,基于云计算SaaS服务模式,以体系化解决方案…...

【Axure高保真原型】引导弹窗

今天和大家中分享引导弹窗的原型模板,载入页面后,会显示引导弹窗,适用于引导用户使用页面,点击完成后,会显示下一个引导弹窗,直至最后一个引导弹窗完成后进入首页。具体效果可以点击下方视频观看或打开下方…...

华为云AI开发平台ModelArts

华为云ModelArts:重塑AI开发流程的“智能引擎”与“创新加速器”! 在人工智能浪潮席卷全球的2025年,企业拥抱AI的意愿空前高涨,但技术门槛高、流程复杂、资源投入巨大的现实,却让许多创新构想止步于实验室。数据科学家…...

springboot 百货中心供应链管理系统小程序

一、前言 随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,百货中心供应链管理系统被用户普遍使用,为方…...

大话软工笔记—需求分析概述

需求分析,就是要对需求调研收集到的资料信息逐个地进行拆分、研究,从大量的不确定“需求”中确定出哪些需求最终要转换为确定的“功能需求”。 需求分析的作用非常重要,后续设计的依据主要来自于需求分析的成果,包括: 项目的目的…...

golang循环变量捕获问题​​

在 Go 语言中,当在循环中启动协程(goroutine)时,如果在协程闭包中直接引用循环变量,可能会遇到一个常见的陷阱 - ​​循环变量捕获问题​​。让我详细解释一下: 问题背景 看这个代码片段: fo…...

【Java学习笔记】Arrays类

Arrays 类 1. 导入包:import java.util.Arrays 2. 常用方法一览表 方法描述Arrays.toString()返回数组的字符串形式Arrays.sort()排序(自然排序和定制排序)Arrays.binarySearch()通过二分搜索法进行查找(前提:数组是…...

srs linux

下载编译运行 git clone https:///ossrs/srs.git ./configure --h265on make 编译完成后即可启动SRS # 启动 ./objs/srs -c conf/srs.conf # 查看日志 tail -n 30 -f ./objs/srs.log 开放端口 默认RTMP接收推流端口是1935,SRS管理页面端口是8080,可…...

【AI学习】三、AI算法中的向量

在人工智能(AI)算法中,向量(Vector)是一种将现实世界中的数据(如图像、文本、音频等)转化为计算机可处理的数值型特征表示的工具。它是连接人类认知(如语义、视觉特征)与…...

高效线程安全的单例模式:Python 中的懒加载与自定义初始化参数

高效线程安全的单例模式:Python 中的懒加载与自定义初始化参数 在软件开发中,单例模式(Singleton Pattern)是一种常见的设计模式,确保一个类仅有一个实例,并提供一个全局访问点。在多线程环境下,实现单例模式时需要注意线程安全问题,以防止多个线程同时创建实例,导致…...

并发编程 - go版

1.并发编程基础概念 进程和线程 A. 进程是程序在操作系统中的一次执行过程,系统进行资源分配和调度的一个独立单位。B. 线程是进程的一个执行实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。C.一个进程可以创建和撤销多个线程;同一个进程中…...