frp内网穿透——以连接到校园内网的服务器为例

news/2025/2/26 7:12:53

有时候想摸鱼不去实验室,在宿舍就直接连接到实验室的GPU服务器。奈何服务器在校园网内部,外网无法直接直接访问。此时需要手动搭一个跳板机,来连接到内网的GPU服务器,这一过程怎么做到呢?我们可以使用frp内网穿透工具,frp是一个开源、简洁易用、高性能的内网穿透和反向代理软件。

准备工作:首先你要有一台自己的电脑,实验室的服务器,以及一台具有公网IP的设备。

公网IP的设备可以去租用各个厂商的云服务器,用最低配置即可(这里以阿里云为例,我当时在TB买的轻量应用服务器,比较便宜省心)。在你买的节点按照步骤自动虚拟化、安装完操作系统以后,就可以在控制台看到你的公网IP了。

在这里插入图片描述

对于有公网IP的云服务器

此设备将作为frp内网穿透中的服务端,因此需要进入该系统的控制台进行frp服务端的下载以及配置,具体的流程如下:

(1)下载frp服务端(由于从github下的,速度很慢,可能需要多下几次;有时候下完也会出问题,如果出现core dump删掉重新下载即可):

wget https://github.com/fatedier/frp/releases/download/v0.33.0/frp_0.33.0_linux_amd64.tar.gz 

(2)解压:

tar -zxvf frp_0.33.0_linux_amd64.tar.gz

(3)进入该目录:

cd frp_0.33.0_linux_amd64/

(4)查看配置文件:

cat frps.ini

在这里插入图片描述
发现里面只有一个默认的绑定端口7000,记住这个端口号。

(5)配置完成后启动服务:

./frps -c frps.ini

出现一堆蓝色的代码,现实success即为成功。

为了防止节点重启或关机,可以设置一个开机启动的程序;如果不想跑在前台,可以用nohup等操作后台运行。

对于内网的实验室服务器

实验室的内网服务器作为frp内网穿透中的客户端,向具有公网IP的云服务器发送请求。具体的操作流程如下:

(1)在物理机上下载frp客户端:下载、解压、切换目录均与上面一样的操作。
(2)配置frpc.ini文件:

[common]
server_addr = xxx.xxx.xxx.xxx  #服务端的公网ip
server_port = 7000             #服务端frp服务端口

[ssh]
type = tcp
local_ip = 127.0.0.1           #本机IP
local_port = 22                #本机需要映射的端口22
remote_port = 6000             #远程服务器映射的端口为6000

(3)启动客户端程序:

./frpc -c frpc.ini

出现一堆蓝色的代码,显示success以及start即为成功。

同样地,客户端也可以设置一个开机自动运行的脚本,防止内网服务器的重启或关机。

自己的电脑

在上面两个设备配置好之后,在自己的电脑上(外网)通过xshell等工具建立ssh连接,ip为公网IP,端口号为6000(客户端配置文件中的remote_port)。然后通过账号密码就可以在非内网的情况下登录到内网的服务器了。


http://www.niftyadmin.cn/n/233607.html

相关文章

Golang中是否可以无限开辟协程以及如何控制协程的数量?

文章目录1. Golang中是否可以无限开辟协程?2. 不控制goroutine数量引发的问题3. 如何控制goroutine的数量?⭐️3.1 只用有buffer的channel3.2 channel与sync同步组合方式3.3 利用无缓冲channel与任务发送/执行分离方式1. Golang中是否可以无限开辟协程&a…

ECShop开源商城与COS互通:降低本地存储负载、提升访问体验

ECShop简介 ECShop是一款开源电子商务平台,具有简单易用、安全稳定、模块化设计等特点。它提供了完整的电子商务解决方案,包括商品管理、订单管理、支付管理、配送管理、会员管理、促销管理、数据统计等功能。ECShop支持多语言、多货币、多种支付方式和配…

音频相关知识

目录 声音的本质 横波与纵波 为什么固体中既能传输横波,又能传输纵波,液体气体中只能传输纵波 声波 超声波与次声波 声音的三要素 音调 响度 音色 噪声 媒体音频 声道 分类 麦克风工作原理 模数转换 扬声器的使用原理 音频压缩类别 音…

第04讲:实战掌握 Byte Buddy,体验代码生成的顺畅

为什么需要运行时代码生成 我们知道,Java 是一种强类型的编程语言,即要求所有变量和对象都有一个确定的类型,如果在赋值操作中出现类型不兼容的情况,就会抛出异常。强类型检查在大多数情况下是可行的,然而在某些特殊场…

【JS运算】分组求和/平均值(reduce函数)

对于数组求和的问题,使用reduce函数能够最快的解决 如果你还不会reduce函数,可以看这一篇: reduce函数的使用 思路 reduce函数对相同group的值进行迭代求和 将分组的总和除以组里的个数得到平均值,然后存储起来 Sum函数&#x…

opencv:介绍 SIFT(尺度不变特征变换)及其使用(一)

在本章中 我们将了解 SIFT 算法的概念 我们将学习如何找到 SIFT 关键点和描述符。 理论 在过去的几章中,我们了解了一些角点检测器,如 Harris 等。它们具有旋转不变性,这意味着即使图像旋转,我们也可以找到相同的角点。这是显而易见的,因为旋转后的图像中的角点仍然是角点…

激活函数高频面试题集合

激活函数激活函数的作用是什么?常用的激活函数Relu引入Relu的原因Relu顺序relu在零点可导吗,不可导如何进行反向传播?Geluleaky relu优点缺点softmaxsigmoid缺陷tanh缺点如何选择激活函数Bert、GPT、GPT2中用的激活函数是什么?为什…

Charles安装及使用教程

一. 简介及安装 一、charles的使用 1.1 charles的说明 Charles其实是一款代理服务器,通过过将自己设置成系统(电脑或者浏览器)的网络访问代理服务器,然后截取请求和请求结果达到分析抓包的目的。该软件是用Java写的&#xff0…