首页 > 其他分享 >内网穿透:如何借助Cloudflare连接没有公网的电脑的远程桌面(RDP)

内网穿透:如何借助Cloudflare连接没有公网的电脑的远程桌面(RDP)

时间:2024-10-21 18:20:38浏览次数:3  
标签:RDP 电脑 控制者 远程桌面 公网 cloudflare 连接 localhost

在这里插入图片描述

内网穿透:如何借助Cloudflare连接没有公网的电脑的远程桌面(RDP)-含详细原理配置说明介绍

前言

远程桌面协议(RDP, Remote Desktop Protocol)可用于远程桌面连接,Windows系统(家庭版除外)也是支持这种协议的,无需安装额外客户端即可实现类似向日葵、toDesk等的远程桌面访问与控制。

但是前提是被控制的电脑有公网ip或者可以被局域网访问。没有公网ip又不在同一个局域网中的电脑如何使用这个协议进行远程连接呢?那就试试大名鼎鼎的cloudflare的内网穿透零信任tunnel技术吧!

准备

方法

  1. 进入Cloudflare零信任控制台(控制台主页 -> ZeroTrust -> Networks -> Tunnels

    进入Cloudflare零信任控制台,并点击Create Tunnel

  2. 新建Tunnel(Create Tunnel -> Select Cloudflared -> 起个名字 -> Save tunnel

    创建tunnel

  3. 两台电脑都下载并安装cloudflared客户端,并且复制命令行代码

    安装cloudflared客户端,并记录密钥(命令)

  4. 在被控制的电脑上运行刚才复制的命令(Win + S -> cmd -> 右键“命令提示符” -> 以管理员身份运行 -> 在弹出的小黑框中输入刚才复制的命令并回车

    命令提示符

    配置成功后应该能在下方Connectors列表中看到一个“连接者”。

  5. 配置域名(外网访问与内网映射规则)(点击网页上的Next -> 选择一个域名 -> 协议选择RDP -> URL输入localhost://3389因为rdp默认端口是3389 -> Save Tunnel

    Next

    配置域名

  6. 在控制者电脑上同样打开“命令提示符”,输入命令cloudflared.exe access rdp --hostname test.letmefly.xyz --url rdp://localhost:1234,就可以远程连接另一台电脑了(Win + R -> cmd -> 回车 -> 替换这个命令并回车 -> Win + R -> mstsc -> 回车 -> localhost:3089 -> 填写远程连接的用户名并回车 -> 输入密码并完成远程连接

原理解释

关于我为什么要写这篇文章,是因为网上很多现有文章之说操作步骤不讲原理。有的跟着配置下来在自己电脑上还会踩上不少坑。因此我想简单介绍下它的原理,以及为什么这么操作。

整体原理

被控制电脑没有公网IP也没有处于控制者电脑所在局域网中,控制者电脑想要连接它但是访问不到它。

但是Cloudflare有公网IP,因此被控制电脑要安装cloudflared客户端并输入命令,其实是被控制电脑与cloudflare服务器建立了一个持久性连接(隧道)。

控制者电脑访问配置的域名,流量到达cloudflare服务器,借助cloudflare服务器实现与被控制者的通信。

准确来说,不知道这样能否被称为是内网穿透(因为所有流量大概都需要经过cloudflare服务器转发一下,并没有控制者与被控制者两台电脑的直接通信),应该是属于内网穿透的吧。

新建Tunnel是在干什么

新建Tunnel就是新建一个cloudflare与被控制者之间的“隧道”,二者通过“隧道”保持持久化连接。

被控制者电脑为何要安装cloudflared客户端并输入那一串命令

安装客户端是因为要借助客户端来建立与cloudflare服务器之间的隧道。

那串命令是为了让cloudflare服务器知道这台电脑要连接哪个隧道(起识别作用的是命令最后的那串“乱码”)。

配置域名(外网访问与内网映射规则)是在干什么,具体应该怎么配置

配置了访问规则,cloudflare才知道流量到来时才能如何转发、通过哪个隧道以及什么规则转发给哪个机器。

第一行是控制者(访问者)相关的配置。子域名(Subdomain)是自己定义的,域名(Domain)是你购买/拥有的绑定在Cloudflare的域名,路径(Path)是访问哪个路径时转发规则生效。

第二行是被控制者(被访问者)相关的配置。Type是协议类型(RDP是微软远程桌面连接的协议),URL是流量要被转发到哪里(被访问者的RDP服务的地址)。

例如我上述配置中,SubdomaintestDomainletmefly.xyzTypeRDPURLlocalhost:3389。因此我在控制者电脑上使用RDP协议访问test.letmefly.xyz时,流量会被转发到被控制者的localhost:3389上。

访问者电脑上的配置是怎么回事

访问者电脑上输入的那串命令相当于是把对于localhost:1234RDP访问转发到test.letmefly.xyz上,因此mstsc后输入localhost:1234流量就可以被转发到test.letmefly.xyz然后被通过隧道转发到被控制机器的localhost:3389上,从而实现了远程桌面连接。

注意,命令中的test.letmefly.xyz需要修改成你所配置的域名,1234可以修改,但注意不要和其他端口冲突(比如控制者主机上也开启了RDP能被其他设备控制的话3389端口很可能被占用了)。

后记

同步发文于CSDN,原创不易,转载经作者同意后请附上原文链接哦~

Tisfy:https://letmefly.blog.csdn.net/article/details/143114828

标签:RDP,电脑,控制者,远程桌面,公网,cloudflare,连接,localhost
From: https://blog.csdn.net/Tisfy/article/details/143114828

相关文章

  • Ubuntu 24.04自带RDP远程桌面
    Ubuntu24.04自带远程桌面啦,在Setting-->System-->DesktopSharing中可以开启远程桌面共享和远程控制,默认使用3390端口,开启远程服务后,在Windows机器中就可以用自带的远程桌面软件连接Ubuntu桌面了.另外一种可选方案是RemoteLogging,但启用此功能会导致当前用户被......
  • WordPress如何优雅地删除没有包含图片的文章
    作为一个在乎用户体验的 SEOer 来说,子凡我不太能够接受文章没有配图,不然就总感觉少了点东西,当然这也是对文章质量的一种提升,但是由于网站中可能会存在一些老旧的文章没有包含任何图片,导致内容显得单薄,影响用户体验。为了提高网站内容的整体质量,删除这些没有图片的文章是一个有效......
  • 【远程监控新体验】OpenObserve结合内网穿透无公网IP远程访问全攻略
    文章目录前言1.安装Docker2.Docker镜像源添加方法3.创建并启动OpenObserve容器4.本地访问测试5.公网访问本地部署的OpenObserve5.1内网穿透工具安装5.2创建公网地址6.配置固定公网地址前言本文主要介绍如何在Linux系统使用Docker快速本地......
  • 公网Linux环境搭建frp实现内网穿透
    前提:本实验为一台ubuntu22操作系统云主机脚本适用于安装平台:CentOS、Debian、UbuntuFRP项目地址:https://github.com/fatedier/frpFRP一键脚本地址:https://github.com/MvsCode/frps-onekey 1、FRP服务器端一键安装脚本(脚本在本文最后有,如果在服务器上无法获取到下面的instal......
  • wordpress建站的网站提速的十五个技巧
    WordPress网站提速对于提升用户体验和搜索引擎排名至关重要。以下是一些有效的技巧来加速你的WordPress网站:选择高质量的托管服务:选择一个快速且可靠的托管服务提供商,如WPEngine、SiteGround或A2Hosting。比如www.gaiguang.com这个建站的速度就做的很棒!使用缓存插件:安装缓......
  • WordPress WP_Query自定义搜索多个关键词
    WP_Query是 WordPress 中用于查询文章和自定义内容的核心类。它提供了强大的查询能力,允许开发者以多种方式从数据库中检索和展示内容。WP_Query支持广泛的查询参数,可以用于获取文章、页面、自定义文章类型等。所以通过WP_Query可以创建复杂的搜索功能,以便根据各种条件检索内......
  • Exchange 2016与国内版O365混合部署(4):配置Exchange 公网证书
    Exchange2016与国内版O365混合部署(4):配置Exchange公网证书Exchange混合部署需要安装一个第三方权威机构颁发的公网证书,用于邮件流的安全传输,详细的步骤technet也有写:https://technet.microsoft.com/zh-cn/library/mt595782(v=exchg.150).aspx 实验中我们需要先在服务器上创......
  • 优化远程桌面RDP,使用GPU和帧率60帧
    1.平时在使用远程桌面的时候,会发现无法使用GPU,也就无法运行一些需要独立GPU的应用和游戏。以下为开启方式:在被远程的电脑上运行:开始->运行,输入gpedit.msc(家庭版没有)打开组策略。在左侧导航到以下路径计算机配置-管理模板-Windows组件-远程桌面服务-远程桌面会话主机,在右侧选择......
  • web应用私网公网访问题
    问题描述一台主机有一个私网地址以及一个公网地址,部署一个web应用,通过内网地址可以访问、通过公网地址访问返回403报错,通过telnet测试公网地址的端口是可以连通的。问题原因需要在web应用server配置上加一个判断。if($http_host!~*^(localhost|127.0.0.1|192.66.0.162|172.......
  • 基于LNMP快速搭建WordPress平台
    1、案例目标(1)了解LNMP环境的组成。(2)了解LNMP环境的部署与安装。(2)了解WordPress应用的部署与使用。2、案例分析2.1、规划节点        Linux操作系统的单节点规划,见表3-1-1。IP主机名节点192.168.20.20lnmplnmp服务节点表3-1-1节点规划 2.2、基础准备   ......