FRP内网穿透,配置本地电脑作为服务器

news2024/11/25 0:01:22

FRP内网穿透,配置本地电脑作为服务器

  • 下载FRP
  • 服务端
  • 客户端

参考链接:
https://www.it235.com/实用工具/内网穿透/pierce.html
https://www.cnblogs.com/007sx/p/17469301.html

  由于没有公网ip,所以尝试内网穿透将本地电脑作为服务器,目的就是作为一个demo展示。这里尝试了多种内网穿透软件,算是各种坑踩了一下,需要直接上手的可以直接拉到下面。尝试了Zerotier,发现用途和想象的不一样,更多用来远程连接自己的电脑等。又尝试了NATAPP,这个在之前就用过,效果还行,缺点就是域名每次运行exe时会改变,不能固定,要是绑定自定义域名还得有一个域名。又尝试了花生壳,发现目前已经不支持HTTP协议了,要是使用HTTPS协议需要申请数字证书,并且代码中可能会出现问题。后来发现NATAPP和花生壳都是基于ngrok,于是尝试了ngrok,用的是ngrok国内版,使用起来还行,关键是可以自定义一个三级域名,这样域名就不会变了。但缺点是只能建立一条隧道,前端项目可以访问了,但前端给后端发送请求时又访问不到,于是又要另外一个隧道。后来又发现ngrok小米球可以用,于是使用小米球映射到后端的gateway,这时神奇的情况出现了,本地电脑通过域名和内网穿透是可以正常访问网站的,但是其他电脑怎么都访问不了,这里已经把前端请求的url改成了后端的域名,也使用了HTTPClient测试也可以,但是其他电脑请求总是超时,网上尝试了很多解决方法都无效。没有办法,最终还是开通了一个云服务器,并且使用“最强”的FRP建立内网穿透,原理大概就是云服务器作为服务端,本地电脑作为客户端,由云服务器进行端口映射,使用步骤如下:

下载FRP

https://github.com/fatedier/frp/releases
选择版本下载,服务器和客户端分别下载,我这里服务器下载linux版,客户端下载windows版。

服务端

服务端解压缩包后,进入文件夹,编辑文件vi frps.ini,粘贴以下内容。注意后续访问7005端口时需要用到用户名和密码就是这里的admin,123456789

[common]
bind_port = 7000
dashboard_port = 7005
dashboard_user = admin
dashboard_pwd = 123456789
token = ttt123
tls_enable = true

启动服务端frp

nohup ./frps -c frps.ini >/dev/null 2>&1 &

网址输入公网ip:7005,应该能看到仪表盘
在这里插入图片描述

客户端

同样解压,注意要编辑frpc.ini,下面RDP只是名字,可以再加一栏。注意local_port填写本地需要映射的端口,remote_port 填写云服务器的端口

[common]
server_addr = 云服务器ip
server_port = 7000
token = ttt123
tls_enable = true

[RDP] 
type = tcp 
local_ip = 127.0.0.1
local_port = 3389 
remote_port = 7001

运行客户端

frpc.exe -c frpc.ini

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/904385.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

第 6 章 递归(1)(应用场景,概念,调用机制,解决问题类型,重要规则)

6.1递归应用场景 看个实际应用场景,迷宫问题(回溯), 递归(Recursion) 6.2递归的概念 简单的说: 递归就是方法自己调用自己,每次调用时传入不同的变量.递归有助于编程者解决复杂的问题,同时可以让代码变得简洁。 6.3递归调用机制 我列举两个小案例,…

代码随想录算法训练营之JAVA|第三十四天|509. 斐波那契数

今天是第 天刷leetcode,立个flag,打卡60天,如果做不到,完成一件评论区点赞最高的挑战。 算法挑战链接 509. 斐波那契数https://leetcode.cn/problems/fibonacci-number/ 第一想法 这个就是求斐波那契数,感觉应该不用…

Error creating bean with name ‘esUtils‘ defined in file

报错异常: 背景: esUtils在common服务中、启动media服务时候、报这个异常、后排查esUtils在启动时候发生异常引起的、在相关bean中加入try{}catch{}即可解决问题 String[] split url.split(","); HttpHost[] httpHosts new HttpHost[split.…

卷积网络手动实现和nn实现

代码中涉及的图片实验数据下载地址:https://download.csdn.net/download/m0_37567738/88235543?spm1001.2014.3001.5501 (一)手动实现卷积算法 代码: import os import torch.nn.functional as F from PIL import Image import…

装饰器读取不到被装饰函数的参数-已解决

def write_case_log(func):def wrapper(*args, **kwargs):logger.info("{}开始执行".format(func.__name__))func(*args,**kwargs)logger.info("{}执行中".format(args))logger.info("{}执行结束",format(func.__name__))return wrapper被装饰函…

卡方分箱(chi-square)

统计学,风控建模经常遇到卡方分箱算法ChiMerge。卡方分箱在金融信贷风控领域是逻辑回归评分卡的核心,让分箱具有统计学意义(单调性)。卡方分箱在生物医药领域可以比较两种药物或两组病人是否具有显著区别。但很多建模人员搞不清楚…

基于SSM的校园旧书交易交换网站

博主主页:猫头鹰源码 博主简介:Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战 主要内容:毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询 文末联系获取 项目介绍…

CVE-2023-21292 AMS框架层高危漏洞分析

文章目录 前言漏洞细节故事起源漏洞利用漏洞修复 总结 前言 本周在分析 Google 官方发布的 Android 2023 年8 月安全公告 涉及的漏洞补丁的时候,遇到一个有意思的漏洞:CVE-2023-21292。 之所以说它有意思是因为这个漏洞早在去年年底就在某平台上被国外…

shell脚本语句

一、语句 一、条件语句 一、以用户为例演示 一、显示当前登录系统的用户信息 w命令 二、显示有多少个用户 w | wc -l 显示有7个用户 前两个是固定标题,从第三个开始才是登录用户,所以要统计数量需要 命令:echo $[$(w | wc -l) -2] 显示…

知识储备--基础算法篇-Hash table

1.哈希表的基础概念 哈希表是一种数据结构,它使用哈希函数将键映射到存储桶或槽位中。它通过将键转换为索引来实现快速的插入、查找和删除操作。哈希表通常用于需要高效查找的场景,如字典、缓存和数据库中。 常见哈希结构 数组set(集合&am…

系统架构设计专业技能 · 数据库设计

系列文章目录 系统架构设计专业技能 软件工程(一)【系统架构设计师】 系统架构设计高级技能 软件架构概念、架构风格、ABSD、架构复用、DSSA(一)【系统架构设计师】 系统架构设计高级技能 系统质量属性与架构评估(…

高频面试题:多线程顺序打印ABC字符20次

一个关于多线程协作的题目经常会出现在大厂的面试中:有三个线程分别打印A、B、C,请让这三个线程按顺序打印出ABC20次。 我们知道,线程调度机制是非确定性的,如果不加上额外的并发控制,直接启动三个线程,那么…

【软件测试】Java和Python做自动化测试哪个更有优势?

Java和Python做自动化测试,哪个更有优势?这两个语言都是很流行的语言,所以从技术上很难说谁好谁不好的。因为要说好不好得看使用的环境和要求。就像生活在中国,你天天说英语,别人会说你“又拽鸟语啊”?但是…

Postman的高级用法—Runner的使用​

1.首先在postman新建要批量运行的接口文件夹,新建一个接口,并设置好全局变量。 2.然后在Test里面设置好要断言的方法 如: tests["Status code is 200"] responseCode.code 200; tests["Response time is less than 10000…

接口自动化中如何完成接口加密与解密?

加密是一种限制对网络上传输数据的访问权的技术。将密文还原为原始明文的过程称为解密,它是加密的反向处理。在接口开发中使用加密、解密技术,可以防止机密数据被泄露或篡改。在接口自动化测试过程中,如果要验证加密接口响应值正确性的话&…

简单认识镜像底层原理详解和基于Docker file创建镜像

文章目录 一、镜像底层原理1.联合文件系统(UnionFS)2.镜像加载原理3.为什么Docker里的centos的大小才200M? 二、Dockerfile1.简介2.Dockerfile操作常用命令 三、创建Docker镜像1.基于已有镜像创建2.基于本地模板创建3.基于Dockerfile创建4.Dockerfile多阶段构建镜像 一、镜像底…

卷积神经网络全解:(AlexNet/VGG/ GoogLeNet/LeNet/ResNet/卷积/激活/池化/全连接)、现代卷积神经网络、经典卷积神经网络

CNN,卷积神经网络,Convolution Neural Network 卷积计算公式:N (W-F2p)/s1 这个公式每次都得看看,不能忘 1 经典网络 按照时间顺序 1.1 LeNet LeNet是 Yann LeCun在1998年提出,用于解决手…

Ribbon:负载均衡及Ribbon

什么是负载均衡&#xff1f; 第一种轮询算法&#xff0c;依次遍历去执行&#xff0c;达到负载均衡 集成Ribbon 导入pom&#xff0c;在消费者服务里的pom文件导入 <!-- Ribbon 集成 --><!-- https://mvnrepository.com/artifact/org.springframework.cloud/spr…

《合成孔径雷达成像算法与实现》Figure3.12

clc clear close all% 参数设置 TBP 724; % 时间带宽积 T 42e-6; % 脉冲持续时间 t_0 1e-6; % 脉冲回波时延 Nfft 2^11; % fft长度% 参数计算 B TBP/…

第8步---MySQL的存储过程和触发器

第8步---MySQL的存储过程和触发器 1.存储过程 5开始支持的 sql集&#xff0c;类似Java中的代码中的方法 实现对sql的封装和服用 有输入和输出 可以声明变量 可以实现一下复杂的控制语句 1.1入门案例 基本语法 测试数据 -- 创建表的测试数据 create table dept(deptno int pri…