高效工具-内网穿透实现windowA连接linux服务器C

news2024/11/28 2:38:26

需求

个人需求是有一台连接局域网的电脑B,该电脑B可以访问局域网内的其他服务器,且可以访问公网,本人在另一个局域网内有一台电脑A,想要直接远程桌面访问B,通过B操作局域网内的其他服务器。经过调研发现通过“远程桌面+内网穿透”可以实现该功能需求。

image-20230427101955432

实现步骤

准备工作

  1. 公网服务器,用自己的服务器感觉更加安全,我用的腾讯云的轻量服务器
  2. 远程桌面工具
  3. 穿透工具

远程桌面

首先确保windows可以使用远程桌面的功能,一般来说,家庭版不支持远程桌面的功能,但是专业版支持。在设置的系统信息里可以查看自己的属性。

image-20230427102531094

如果是专业版,可以直接支持远程桌面,那么这一步可以跳过。

如果是家庭版,不直接支持远程桌面,解决方案是1.去淘宝花10元升级自己的密钥 2.采用安装RDPWrap 套件为家庭版windows赋予远程桌面访问的功能。

这边可以直接参考知乎教程 家庭版Windows11开启远程桌面被控 https://zhuanlan.zhihu.com/p/600706130

需要重点关注的是因为系统更新等原因,在安装过程中如果出现图示的问题

那么寻找和自己系统版本匹配的 rdpwrap.ini 文件,在 github issues页面 https://github.com/stascorp/rdpwrap/issues上面查找,找到与自己系统匹配的版本。

  1. 首先停止服务
# 停止服务
net stop termservice
  1. 然后复制替换配置文件脚本
替换C:\Program Files\RDP Wrapper中的rdpwrap.ini
  1. 然后重启服务
# 启动服务
net start termservice

成功后的状态应该是

image-20230427103955292

至此,你的家庭版windows电脑可以支持在局域网内开启远程桌面直接访问。

内网穿透

内网穿透的工具有很多,但是网上将windows类型云服务器作为公网IP的相对较少,大部分的教程都是演示的linux云服务器作为公网IP进行内网穿透。

本文总结教程,总结了windows服务器内网穿透的主要逻辑流程如下

image-20230427105231222

  1. windows云服务器开放端口

这边不同厂商的云服务器设置方法类似但是有区别,我采用的是腾讯云的轻量应用服务器,所以是在图示的页面打开(这边大家 厂商+云服务器类型+开放端口可以直接搜索到对应教程)。

为了方便,我是直接开启了所有端口,也可以根据自己真实想要开放的端口开放相应的端口,比如7000端口,8000端口等。

image-20230427105542276

  1. 配置穿透工具服务端
  2. 配置穿透工具客户端

这边是直接有教程的,这里放我参考的教程以及我最终采用的配置。

参考教程

1.通过windows server使用frp软件实现内网穿透

2.简单几步实现内网穿透(Windows部署开源frp)

3.windows server 部署frp内网穿透,并添加为服务

4.使用frp配置内网访问(穿透)教程(超详细,简单)

经过测试,最终采用的还是和教程1类似的配置,也就是frp穿透+nssm注册为windows服务。

这边的逻辑是直接直接cmd运行frp的exe就可以实现功能了,但是一般把cmd窗口关闭,就会停止服务。

nssm的功能就是把frp运行exe注册为window的服务,这样就可以后台无感直接运行,方便耐用,还可以开机自启。

下面总结介绍配置流程,按照教程下载资源

  1. 资源下载

下载frp,下载链接https://github.com/fatedier/frp/releases

下载nssm,下载链接 http://nssm.cc/download

2.配置服务端

(2.1)frps打头的负责服务器,所有修改frps.ini即可

#默认即可
[common]
bind_port = 7000

(2.2)注册服务

搜索cmd,用管理员身份打开,cd 你下载解压的nssm的目录

执行下面的指令

cd "替换为nssm.exe所在的目录,删除引号"
nssm.exe install frp_amd64

这个指令会把frps.exe的执行过程注册为服务frp_amd64

image-20230427112922625

3.配置客户端

(3.1)frpc打头的负责客户端,所以修改frpc.ini即可

frpc.ini 配置:比如我服务器 frps.exe 端口是7000,我希望能够通过远程桌面访问本机(即3389端口),通过配置 local_port = 3389,remote_port = 7001 ,这样就可以通过 服务器IP地址:7001 来访问本机。frpc.ini 配置如下

[common]
server_addr = 服务器IP地址
server_port = 7000
[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 3389
remote_port = 7001

(2.2)注册服务

搜索cmd,用管理员身份打开,cd 你下载解压的nssm的目录

执行下面的指令

cd "替换为nssm.exe所在的目录,删除引号"
nssm.exe install frp_amd64

这个指令会把frpc.exe的执行过程注册为服务frp_amd64

image-20230427112813350

内网穿透+远程桌面

按照上面的配置完成后,即可实现内网穿透+远程桌面

打开monaxtern,输入如下,上面的配置是公网的ip+7001端口相当于直接局域网内直接访问我的电脑B,用户名是电脑B

image-20230427113411374

点击OK,即可成功通过电脑A,经过公网端口映射到电脑B的3389远程桌面端口,以内网穿透+远程桌面的技术栈访问到电脑B.

更多灵活应用

客户端绑定更多端口

[ssh]这样的名称必须全局唯一,即就算有多个客户端,也只能使用一次,其他的可以用[ssh2]、[ssh3]等;
意思就是说,如果你要配置多个客户端,必须将另外的客户端的[ssh]改为[ssh2]、[ssh3]等,并且remote_port也要变,比如6002,6003等

跳板机功能

在前面功能实现的基础上,可以进行灵活的操作使用,比如,可以其实使用电脑A登录服务器C

image-20230428090804173

(1)准备工作:安装SSH服务

确定windowB安装SSH服务,SSH在window系统上是自带的服务,所以只要在系统设置中安装SSH的服务端和客户端即可

image-20230428091158875

(2)使用windosB进行端口转发

添加端口转发

netsh interface portproxy add v4tov4 listenport=1005 connectport=22 connectaddress=192.168.1.95

如果添加错误可以删除

netsh interface portproxy delete v4tov4 listenport=1005

可以查看目前所有的端口转发

netsh interface portproxy show v4tov4

(3)按照前文步骤将你新添加的端口进行内网穿透,也就是直接在frpc.ini中添加即可,然后重启frpc服务即可

[ssh14(随便写一个就行)]
type = tcp
local_ip = 127.0.0.1
local_port = 1005 (要和前面的对应)
remote_port = 7005(要和服务器开放的端口对应)

(4)最后直接在电脑A上登录你绑定的服务器的IP和端口即可直接访问到服务器C!完结撒花!

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

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

相关文章

DPO5204B, MSO5204B, DPO5104B, MSO5104B泰克示波器

DPO5204B泰克MSO5204B数字荧光示波器,2 GHz,4 通道 当前设计对数据速率和定时余量提出更严格的要求,这需要示波器具备杰出的信号采集性能和分析功能。 泰克 MSO/DPO5000B 系列示波器不仅拥有杰出的信号保真度,而且提供高达 2 GHz …

SpringBoot启动时自动创建数据库表

Spring Boot 启动时自动创建 MySQL 数据库表 要想在 SpringBoot 程序启动时自动创建数据库表,我们首先需要导入相关依赖,这里我们导入了spring-jdbc(提供了与关系型数据库进行交互的一系列工具和类)与 HikariCP(高性能…

在全志V851S开发板上使用SSH配置步骤分析

在Tina板子上面开启SSH SERVER在Tina配置界面的以下目录中 > Network > SSH勾选的项目 《》openssh-keygen… OpenSSH keygen <> openssh-server… OpenSSH server1.配置 sshd_config rm -rf /etc/ssh/sshd_config;touch /etc/ssh/sshd_config;vi /etc/ssh/sshd…

怎么把mkv文件转成mp4格式,3招立马处理

怎么把mkv文件转成mp4格式的方法你知道吗&#xff1f;我想很多朋友会遇到这样的情况&#xff0c;下载视频后发现无法打开。原来我们下载的视频格式是mkv&#xff0c;也许这个格式大家不是很熟悉的。那么今天就来认识一下&#xff0c;mkv是Matroska的一种媒体文件&#xff0c;mk…

小红书流量密码是什么,怎么掌握并运用

现在是个流量的社会&#xff0c;因为流量其实代表的就是收益&#xff0c;那面对一个流量时代&#xff0c;小红书现在而言毫无疑问是蓝海&#xff0c;品牌想要做好&#xff0c;自然要掌握平台流量密码。今天来和大家一起分享一下小红书流量密码有什么&#xff0c;流量密码可以用…

Qt之QGraphicsView实现截图(漏洞百出且BUG丛生版,部分源码+注释)

文章目录 一、截图操作示例图1.图元绘制示例2.文本添加操作示例3.设置操作示例4.截图拖动示例5.文件保存示例6.剪切板粘贴示例 二、内容指路和思路三、部分源码1.自定义文本框源码2.多类型图形数据的存储3.截图源码 总结相关文章 一、截图操作示例图 1.图元绘制示例 下方一次…

Python小姿势 - ## 安装Python

安装Python 如果你还没有安装Python&#xff0c;那么现在是时候安装它了。有很多不同的选择&#xff0c;但是我们推荐使用Anaconda。 Anaconda是一个用于科学计算的Python发行版&#xff0c;捆绑了许多科学计算所需的包&#xff0c;并且Anaconda的安装包大小也不是很大&#xf…

AVUE做二级联查,本次需求:地市、市县做二级联动

目录 a. 数据库设计 b.前端代码解析***&#xff1a;** c. 后端接口解析&#xff1a; 注意&#xff1a; a. 数据库设计 表结构一定要设计好, 包括&#xff1a;主键、编号&#xff08;code-> 含义&#xff1a;地市、市县的唯一标识&#xff09;、父类编码&#xff08;在本次…

【高危】泛微 e-cology <10.57 存在 SQL注入漏洞(POC)(MPS-ndqt-0im5)

漏洞描述 泛微协同管理应用平台(e-cology)是一套企业大型协同管理平台。 泛微 e-cology 受影响版本存在SQL注入漏洞&#xff0c;未经授权的远程攻击者可通过发送特殊的HTTP请求来获取数据库的敏感信息。 漏洞名称GeoServer 存在 sql 注入漏洞漏洞类型SQL注入发现时间2023/4/…

深度学习 GNN图神经网络(四)线性回归之ESOL数据集水溶性预测

线性回归之ESOL数据集水溶性预测 一、前言二、ESOL数据集三、加载数据集四、数据拆分五、构造模型六、训练模型七、测试结果八、分类问题参考文献 一、前言 本文旨在使用化合物分子的SMILES字符串进行数据模型训练&#xff0c;对其水溶性的值进行预测。 之前的文章《深度学习…

前端开发中获取各种高度宽度

一、前言 前端开发中经常需要获取页面还有屏幕的高度和宽度进行计算,此文即介绍如何用 JavaScript 获取这些尺寸 二、屏幕尺寸 screen.height&#xff1a;屏幕高度screen.width&#xff1a;屏幕宽度screen.availHeight&#xff1a;屏幕可用高度。即屏幕高度减去上下任务栏后的…

2.2 定点加法 减法运算

学习前的建议 以下是一些学习定点加法和减法运算的建议&#xff1a; 掌握定点数的表示方法&#xff1a;在进行定点加法和减法运算之前&#xff0c;需要先了解定点数的表示方法&#xff0c;包括定点数的位数、小数点位置以及符号位等信息。 理解定点加法和减法的原理&#xf…

nginx配置sh脚本远程执行一键安装

背景 本地多机重复操作某些shell指令&#xff0c;分步执行&#xff0c;很耗费时间&#xff0c; 需要远程一键部署&#xff0c;傻瓜化运维&#xff0c;更为通用安装。 即参考docker通用安装 sudo curl https://get.docker.com | sh - # sudo python3 -m pip install docker-co…

SignalR实现简单的Web端实时通讯,跳过WebSocket验证,Swagger加锁后不能访问接口,Script setup不支持动态绑定

版本.Net6Vue3Element-Plus 问题 Swagger加锁后不能访问接口 &#xff08;看第三步&#xff09;跳过WebSocket验证 &#xff08;看第四步里面&#xff09;添加自定义接受方法 &#xff08;看第四步&#xff09;不能使用 第一步、下载包 后端&#xff1a; 前端&#xff1a;…

Android内存优化场景

1、集合类 内存泄露原因 集合类 添加元素后&#xff0c;仍引用着 集合元素对象&#xff0c;导致该集合元素对象不可被回收&#xff0c;从而 导致内存泄漏实例演示 // 通过循环申请Object 对象 & 将申请的对象逐个放入到集合List List<Object> objectList new Arra…

VBA-自定义面板,使用SQL查询Excel数据

需求 定制插件&#xff0c;实现用户打开任意一个工作簿&#xff0c;写sql对Excel中的数据进行查询 案例sql需求场景&#xff1a; 需求 筛选日期小于’2023-4-24’&#xff0c;按group分区&#xff0c;求和各分组下的销售额&#xff0c;返回结果集新建工作表写入 数据源 现…

Docker-compose 启动 lnmp 开发环境

GitHub传送阵 docker-lnmp 项目帮助开发者快速构建本地开发环境&#xff0c;包括Nginx、PHP、MySQL、Redis 服务镜像&#xff0c;支持配置文件和日志文件映射&#xff0c;不限操作系统&#xff1b;此项目适合个人开发者本机部署&#xff0c;可以快速切换服务版本满足学习服务新…

国产开源项目管理软件ZenTao

本文应网友 ukiyoec 要求而写&#xff1b; 什么是禅道 &#xff1f; 禅道 (ZenTao)是国产开源项目管理软件。它集产品管理、项目管理、质量管理、文档管理、组织管理和事务管理于一体&#xff0c;是一款专业的研发项目管理软件&#xff0c;完整覆盖了研发项目管理的核心流程。禅…

2023-Hive性能企业级调优

Hive作为大数据平台举足轻重的框架&#xff0c;以其稳定性和简单易用性也成为当前构建企业级数据仓库时使用最多的框架之一。 但是如果我们只局限于会使用Hive&#xff0c;而不考虑性能问题&#xff0c;就难搭建出一个完美的数仓&#xff0c;所以Hive性能调优是我们大数据从业…

前端周总结

在vue里面引入ts文件报错&#xff1a; An import path cannot end with a .ts extension. Consider importing xx.js instead. 方法一&#xff08;最快&#xff09; 把引入的xx.ts后缀删除 方法二 # 在tsconfig.json中加入以下配置 "baseUrl": ".", &quo…