内网穿透:针对小白的VSCode+云服务器+本地Ubuntu搭建GPU云服务器

news2024/10/7 18:26:05

前言

自己实验室的情况:

  1. 实验室拥有自己的GPU集群、工作站
  2. 使用仅限于线下或者远程向日葵(不稳定、速度慢)
  3. 拥有自己的廉价cpu轻量云服务器(阿里云服务器(2G+2*cpu),大概40左右一年)

平时出差、在宿舍等需要远程操作,向日葵等一众软件实时性不满足我的要求,又慢又卡,我仅需要加载文件和源码文字内容,不需要展示图形化界面

参考了一些网上的方案,最终选择:FRP+阿里云服务器+VSCode的方案

FRP简介

在这里插入图片描述

一言以蔽之,FRP是实现内网穿透的C/S架构软件,通过连接本地服务器到云服务器端,以公网IP实现本地服务器的访问,满足在外网环境下使用内网服务的需求

流程:

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

方案步骤

  1. 在客户端、服务器端分配下载FRP,注意,在本地(client)和云服务器(server)上操作不一样,分别运行对应的功能

  2. 服务器端设置:

$ wget https://github.com/fatedier/frp/releases/download/v0.29.0/frp_0.29.0_freebsd_amd64.tar.gz
# 解压
tar -zxvf  frp_0.29.0_freebsd_amd64.tar.gz
# 进入到文件夹,修改frps.ini也就是服务器端的内容
vim ./frps.ini

打开后,自定义bind_port也就是你要将本地端与云服务器端的转发端口号:

[common]
bind_port = 7000

设置完成后,开启server的服务:

$ ./frps -c ./frps.ini

或者如下,将进程放到后台,然后回车退出

$ nohup ./frps -c ./frps.ini &
  1. 同样,对于客户端,修改的是frpc.ini文件而不是frps,要注意,其内容如下:

在这里插入图片描述

(注:这两个端口号,一定要在云服务器上的防火墙功能添加,不然会阻止访问,我用的分别是20001和20002端口)

# frpc.ini
[common]
server_addr = x.x.x.x # 你的公网ip
server_port = 7000	# 与server的bind_port设置一致,用于访问端口

[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6000	# 你在外部访问的接口

完成后,对客户端也运行进程:

$ ./frpc -c ./frpc.ini

或者如下,放到后台,回车退出

$ nohup ./frpc -c ./frpc.ini &

  1. 验证一下:

输出连接生成的实时log,看看是不是成功了

tail -f nohup.out

以下分别是连接成功后的命令行输出
在这里插入图片描述
在这里插入图片描述

  1. 最后,连接本地服务器,一定要注意!!
$ ssh -p 你的remote_port端口号 你本地服务器!的用户名(不是云服务器)@公网ip

然后,会提示你输入密码,密码不是你云服务器的,是本地服务器的密码!用户名也是本地服务器的用户名!这个当时没注意到。。。。

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

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

相关文章

Python学习笔记-数字类型

目录 1. 数字类型 1.1 整型 1.2 浮点数 1.3 复数 1.4 布尔类型 2. 常用内置数值计算函数库 3. 随机数函数 本文记录python中的基本数字类型信息,以及一些其他的相关知识点。 1. 数字类型 python中用于标识数字或者数值的数据类型,主要有如下分类…

​鸽群卫星(Flock)​介绍

鸽群卫星(Flock)是美国Planet公司[1]研制的3U遥感立方体卫星星座,单颗卫星重约5kg,也被称为“鸽子”(Dove)。鸽群星座主要有两类轨道:空际空间站释放420km高、52度倾角轨道(ISS&…

R语言基于决策树的银行信贷风险预警模型

引言 我国经济高速发展,个人信贷业务也随着快速发展,而个人信贷业务对提高内需,促进消费也有拉动作用。有正必有反,在个人信贷业务规模不断扩大的同时,信贷的违约等风险问题也日益突出,一定程度上制约着我…

力扣(LeetCode)115. 不同的子序列(C++)

动态规划 状态转移方程 f[i,j]{f[i−1,j]f[i−1,j]f[i−1,j−1]if s[i]t[j]f[i,j]\begin{cases} f[i-1,j]\\ f[i-1,j]f[i-1,j-1]&\text{if } s[i]t[j] \end{cases}f[i,j]{f[i−1,j]f[i−1,j]f[i−1,j−1]​if s[i]t[j]​ 无论选不选 s[i]s[i]s[i] , f[i][j]f[i…

解决报错:fatal: in unpopulated submodule *

目录 问题 解决 问题 今天想把两个 Git 工程合并成一个工程,尽管已经将其中一个工程的 .git 目录删除了,但是在合并提交时还是遇到了一个和子模块相关的报错,具体报错信息如下: fatal: in unpopulated submodule * 报错截图如下…

【iMessage苹果相册日历推位置推送】软件安装deviceToken是由APNs生成的

推荐内容IMESSGAE相关 作者推荐内容iMessage苹果推软件 *** 点击即可查看作者要求内容信息作者推荐内容1.家庭推内容 *** 点击即可查看作者要求内容信息作者推荐内容2.相册推 *** 点击即可查看作者要求内容信息作者推荐内容3.日历推 *** 点击即可查看作者要求内容信息作者推荐…

SpringBoot+html+vue模板开发

除了对某个表基本的增删改查以外&#xff0c;可能需要额外的增加操作&#xff0c;这里是通过按钮来实现的 1、新增一个测试按钮 <el-button type"primary" class"butT" click"test()">测试</el-button> 2、这个按钮绑定一个方法t…

Android 创建桌面组件Widget——构建应用微件(二)

Android 创建桌面组件Widget——构建应用微件&#xff08;二&#xff09;Android 创建桌面组件Widget——构建应用微件&#xff08;二&#xff09;概览使用 AppWidgetProvider 类接收应用微件广播 Intent固定应用微件设置预览图片完整代码Android 创建桌面组件Widget——构建应…

Spark学习(7)-SparkSQL函数定义

1 SparkSQL 定义UDF函数 目前在SparkSQL中&#xff0c;仅仅支持UDF和UDAF函数&#xff0c;python仅支持UDF。 1.1 定义方式 定义方式有两种&#xff1a; sparksession.udf.register() 注册的UDF可以用于DSL和SQL&#xff0c;返回值用于DSL风格&#xff0c;传参内的名字用于SQ…

如何在Odoo中添加水印?

为了防止信息的泄露&#xff0c;水印作为一种防泄密的方式&#xff0c;被使用的频率越来越高。 那么在Odoo中&#xff0c;如何添加水印呢&#xff1f;其实添加的方法有很多&#xff0c;如利用svg生成背景图&#xff0c;重复的dom元素覆盖等等。 本文主要讲解利用canvas输出背…

不懂单链表? 这篇文章就帮你搞明白

坚持看完&#xff0c;结尾有思维导图总结 链表对指针的操作要求不低链表的概念链表的特性链表的功能(最重要)定义和初始化头插头删细节说明尾插尾删寻找链表元素与打印链表在 某位置后插入删除在某位置的插入删除销毁链表链表的概念 什么是链表 官方概念&#xff1a;链表是一种…

链表(1)

我们以前学过的线性数据结构底层原理都是依托静态数组来实现的&#xff0c;今天我们讲学习一个最简单的动态数据结构---->链表&#xff01; 掌握链表有助于学习更加复杂的数据结构&#xff0c;例如&#xff1a;二叉树、trie 链表的优点是不需要处理固定的问题&#xff0c;…

mavon-editor的使用

vue3vitets下安装mavon-editor 3.0.0-beta版本&#xff0c;效果如下&#xff1a; 安装 //引入样式 import mavon-editor/dist/css/index.css; import mavonEditor from mavon-editor; app.use(router).use(mavonEditor).mount(#app);<template><div class"rich…

zabbix主动监控和被动监控

目录 一、环境准备 1、搭建zabbix基础环境 二、主动监控与被动监控介绍 三、设置客户端为主动监控 1、给web2主机安装zabbix_agent 2、修改主动监控配置 四、设置zabbix管理端主动监控 1、克隆模板 2、给目标主机绑定主动监控模板 3、查看主动监控的数据 一、环境准备…

【HIT-OSLAB-实验中的碎碎念】

文章目录应该养成的好习惯删除 替换 修改 内容时 记得留备份遇到问题要通过文字 图片 等多种途径去记录不同的项目应该在不同的文件夹进行处理代码文档 记得添加一些注释用于说明功能多输出有区别度的提示信息s找bug 先定位错误 再改当一份代码有不同版本的时候 记得说明每份代…

109376-05-8,Boc-QRR-AMC, Hepsin substrate

Boc-QRR-AMC是跨膜丝氨酸蛋白酶hepsin的底物&#xff0c;也用于测定酿酒酵母中的可辛(Kex2内蛋白酶)。Boc-QRR-AMC的库存解决方案最好在DMSO中准备。 编号: 187545中文名称: Hepsin substrate&#xff1a;Boc-Gln-Arg-Arg-7-氨基-4-甲基香豆素英文名: Boc-Gln-Arg-Arg-AMCCAS号…

全球No.1集装箱人工智能企业CIMCAI中集飞瞳,集装箱信息识别铅封号识别API免费,集装箱识别率99.98%高泛化性,全球两千+企业用户使用

全球No.1集装箱人工智能企业CIMCAI中集飞瞳&#xff0c;先进人工智能AI科技打造飞瞳引擎™AI集装箱检测云服务&#xff0c;集装箱信息识别铅封号识别API免费&#xff0c;集装箱识别率99.98%高泛化性&#xff0c;全球两千企业用户使用。CIMCAI中集飞瞳成熟港航人工智能核心技术及…

3年功能测试拿8K,被刚入职的应届生反超,其实你在假装努力

最近朋友给我分享了一个他公司发生的事 大概的内容呢&#xff1a;公司一位工作3年的测试工资还没有新人高&#xff0c;对此怨气不小&#xff0c;她来公司辛辛苦苦三年&#xff0c;三年内迟到次数都不超过5次&#xff0c;每天都是按时上下班&#xff0c;工作也按量完成&#xf…

PyQT6关联信号槽 (六) 百篇文章学PyQT6

本文章是百篇文章学PyQT6的第六篇&#xff0c;本文讲述如何使用PySide创建UI界面&#xff0c;并且关联入PyCharm 新建的项目中成功运行第一个PyQT程序&#xff0c;并且使用 信号槽 connect 到函数&#xff0c;在写博客和学习的过程中会遇到很多问题&#xff0c;例如&#xff1a…

Python实现点选验证码识别, B站模拟登陆

话不多说&#xff0c;今天就分享一下如何用Python实现点选验证码识别&#xff0c;小破站模拟登陆 开发环境 Python 3.8Pycharm 2021.2谷歌浏览器谷歌驱动 模块使用 selenium >>> pip install selenium3.141.0 指定版本安装time打码平台 模块安装问题: -如果安装…