通过Cloudflare隧道实现安全的远程桌面访问

在信息时代,远程桌面对于工作和生活变得至关重要。想象一下,你可以坐在家里,通过互联网连接到办公室的计算机,就像你亲自在那里一样。但这也伴随着安全风险,因为不正确的配置可能会导致未经授权的人访问你的计算机。今天,我将向你介绍一种方法,通过Cloudflare Zero Trust,你可以在不开放本地服务器的入站端口的情况下,安全地提供远程桌面服务。

步骤1:在GCP上设置RDP服务器

首先,我们需要在Google Cloud Platform(GCP)虚拟机上设置一个RDP服务器。虽然我以GCP为例,但你可以在支持RDP连接的任何机器上进行设置。

  1. 在你的Google Cloud控制台中,创建一个新项目。
  2. 转到Compute Engine > VM实例。
  3. 选择“创建实例”。
  4. 为你的VM实例命名,例如"windows-rdp-server"。
  5. 配置你的VM实例:
    • 滚动到“Boot Disk”并选择“更改”。
    • 选择操作系统为Windows Server。
    • 选择一个带有桌面体验的版本,例如Windows Server 2016 Datacenter。
  6. 一旦你的VM实例运行起来,点击RDP旁边的下拉菜单,选择“查看gcloud命令以重置密码”。
  7. 选择在Cloud Shell中运行。
  8. 在Cloud Shell终端中运行命令。你将被要求确认密码重置。
  9. 复制自动生成的密码和用户名到一个安全的地方。

步骤2:安装Microsoft远程桌面

你可以使用任何RDP客户端来访问和配置RDP服务器。为了通过Microsoft远程桌面访问服务器,请按照以下步骤进行:

  1. 下载并安装Microsoft远程桌面。
  2. 下载后,打开Microsoft远程桌面并选择“添加PC”。
  3. 在“PC名称”中,输入你的RDP服务器的公共IP地址。在GCP中,这是VM实例的外部IP。
  4. 对于“用户帐户”,选择“添加用户帐户”并输入你之前生成的密码和用户名。
  5. 选择“添加”。PC将显示在Microsoft远程桌面中。
  6. 为了测试基本连接,双击新添加的PC。
  7. 当询问是否继续时,选择“继续”。
  8. 现在,你可以远程访问和配置你的RDP服务器。

默认情况下,Internet Explorer将被安装并配置为增强安全模式。如果浏览器运行缓慢或无法加载,你可以关闭增强安全性,并安装诸如Google Chrome之类的替代浏览器。

步骤3:通过Cloudflare隧道连接RDP服务器

你可以使用Cloudflare隧道来创建从服务器到Cloudflare边缘的安全、仅出站的连接。这需要在服务器上运行cloudflared守护程序。用户可以通过在其设备上安装Cloudflare WARP客户端并加入你的Zero Trust组织来访问该服务。远程设备可以像在你的私有网络上一样连接。默认情况下,所有加入你组织的设备都可以访问该服务,除非你构建策略来允许或阻止特定用户。

步骤1:连接服务器到Cloudflare

  1. 通过按照我们的仪表板设置指南为你的服务器创建一个Cloudflare隧道。你可以跳过连接应用程序的步骤,直接转到连接网络。
  2. 在隧道的“私有网络”选项卡中,输入服务器的私有IP地址(或包括服务器IP的范围)。在GCP中,服务器IP是VM实例的内部IP。

(可选)3. 设置Zero Trust策略以微调对服务器的访问。

步骤2:设置客户端

为了让设备连接到你的Zero Trust组织,你需要:

  1. 在设备上以WARP模式部署WARP客户端。仅当你想要显示自定义阻止页面或过滤HTTPS流量时才需要Cloudflare证书。
  2. 创建设备注册规则以确定哪些设备可以加入你的Zero Trust组织。

步骤3:路由私有网络IP通过WARP

默认情况下,WARP客户端会排除前往RFC 1918空间的流量,作为其Split Tunnel功能的一部分。例如,WARP自动排除10.0.0.0/8,这些IP地址通常用于私有网络,无法从互联网访问。为了让WARP将流量发送到你的私有网络,你需要在Split Tunnel配置中包括你为Cloudflare隧道指定的IP/CIDR。

要配置私有网络访问的Split Tunnel,请按照以下步骤:

  1. 首先,检查你的Split Tunnel模式是否设置为排除或包括模式。
  2. 如果你使用的是包括模

式,请将你的网络IP/CIDR范围添加到列表中。

  1. 如果你使用的是排除模式:
    • 从列表中删除你的网络IP/CIDR范围。例如,如果你的网络使用默认的AWS范围172.31.0.0/16,删除172.16.0.0/12。
    • 重新添加不被你的私有网络显式使用的IP/CIDR范围。以AWS为例,你会添加新的条目,如172.16.0.0/13、172.24.0.0/14、172.28.0.0/15和172.30.0.0/16。这确保只有前往172.31.0.0/16的流量会通过WARP。

通过缩小包括在WARP中的私有IP范围,你可以降低用户访问本地资源的风险。

步骤4:以用户身份连接

一旦WARP客户端配置好,你可以使用你的RDP客户端连接到服务器的私有IP地址(而不是最初使用的公共IP地址)。

要在Microsoft远程桌面中连接:

  1. 打开Microsoft远程桌面并选择“添加PC”。
  2. 对于“PC名称”,输入你的RDP服务器的私有IP地址。在GCP中,这是VM实例的内部IP。
  3. 对于“用户帐户”,输入你的RDP服务器用户名和密码。
  4. 双击新添加的PC以测试Zero Trust连接。
  5. 当询问是否继续时,选择“继续”。

现在,你已经拥有了对RDP服务器的安全远程访问

通过Cloudflare隧道访问RDP服务器

Cloudflare隧道还可以将应用程序路由到公共主机名,允许用户在不使用WARP客户端的情况下连接到应用程序。这种方法需要在服务器机器和客户机器上都安装cloudflared,并在Cloudflare上激活区域。流量通过这个连接代理,并用户使用Cloudflare Access凭证登录服务器。

公共主机名方法可以与通过WARP进行路由一起实施,以便有多种连接服务器的方式。你可以重复使用同一个隧道用于私有网络和公共主机名路由。

步骤1:连接服务器到Cloudflare

  1. 通过按照我们的仪表板设置指南为你的服务器创建一个Cloudflare隧道。
  2. 在“公共主机名”选项卡中,选择下拉菜单中的域名,并指定任何子域名(例如,rdp.example.com)。
  3. 对于“服务”,选择RDP,并输入服务器的RDP监听端口(例如,localhost:3389)。通常是端口3389。
  4. 选择“保存主机名”。

(建议)5. 添加一个自托管应用程序到Cloudflare Access,以管理对服务器的访问。

步骤2:以用户身份连接

在客户端机器上安装cloudflared。

运行以下命令以打开RDP监听端口:

cloudflared access rdp --hostname rdp.example.com --url rdp://localhost:3389

这个过程需要配置为保持活动和自动启动。如果进程被终止,用户将无法连接。

如果客户机器运行Windows,端口3389可能已经被本地占用。选择一个未被使用的3389端口的替代端口。

在cloudflared access运行时,使用RDP客户端(如Microsoft远程桌面)连接:

  1. 打开Microsoft远程桌面并选择“添加PC”。
  2. 对于“PC名称”,输入localhost:3389。
  3. 对于“用户帐户”,输入你的RDP服务器用户名和密码。
  4. 双击新添加的PC以进行连接。
  5. 当客户端启动时,浏览器窗口将打开并提示用户进行身份验证。

结语

通过Cloudflare Zero Trust,我们实现了安全的远程桌面访问,而无需在本地服务器上开放入站端口。这为远程办公提供了更高的安全性,同时保持了便利性。希望这篇文章对你有所帮助,让你的远程工作更加安全和便捷。如果你还有任何问题或疑虑,请随时在评论中分享。

本文由作者 王大神 原创发布于 大神网的AI博客。

转载请注明作者:王大神

原文出处:通过Cloudflare隧道实现安全的远程桌面访问

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 2023年9月25日
下一篇 2023年9月25日

相关推荐

  • 微软:从彩蛋恶搞到科技巨头的发展历程

    很多人都知道微软是一家全球知名的科技巨头,但你是否听说过微软的彩蛋和恶搞事件?今天,我们将深入探讨微软的发展历程,从其创立之初的彩蛋恶搞,到如今的技术创新和全球影响力。让我们一起回顾微软的独特之旅。 …

    2023年10月27日
    00
  • 通过Cloudflare隧道连接SSH服务器:实现安全远程访问

    嗨,大家好!在这个信息时代,远程访问和安全性变得愈发重要。你是否曾想过如何在不暴露服务器的入站端口的情况下,在互联网上提供SSH服务?别担心,今天我将为你介绍如何通过Cloudflare Zero Trust实现这一目标,…

    2023年9月25日
    00
  • Azure 云存储解决方案和服务:释放未来的数据力量

    曾经,我们对数据的需求是有限的,但现在,数据已成为了现代社会的生命线。无论是个人、企业还是政府,都需要处理和存储大量的数据。这就是为什么云存储解决方案和服务变得如此重要的原因,而Microsoft Azure正是在…

    2023年10月17日
    00
  • 微软超越苹果:AI时代科技巨头的市值之战

    最近,微软凭借在云计算和人工智能领域的显著进展,其市值超过苹果,成为全球市值最高的公司。作为技术博客的作者,我深入分析了两家公司的竞争历程、目前的市场表现,以及未来的发展趋势,探讨了这一变化对科技行…

    2024年4月10日
    00
  • WordPress插件兼容性与Cloudflare APO:确保网站优化无忧

    引言 WordPress是世界上最流行的内容管理系统之一,其强大之处在于可通过插件扩展功能。然而,与Cloudflare APO(Automatic Platform Optimization)等优化工具结合使用时,插件兼容性成为一个关键问题。本文将深入…

    2023年9月7日
    00
  • 如何用MacBook Pro作为Mini主机的显示器?

    你是否曾经面临过这样的情况:你有一台Mini主机,但却没有显示器,而你的MacBook Pro却闲置在一旁?别担心,本文将告诉你如何巧妙地将你的MacBook Pro变成Mini主机的显示器,解决这一难题。 开篇故事:MacBook Pro…

    2023年10月27日
    00
  • 使用Cloudflare 15年SSL证书的全面指南

    在当今的数字时代,网站的安全性成为了每个网站所有者的首要任务。SSL证书作为一种加密技术,确保了用户与服务器之间的信息安全传输。在众多SSL证书提供商中,Cloudflare以其长达15年的有效期和可靠的安全性脱颖而…

    2023年8月21日
    00
  • 谷歌云服务器玩转指南

    谷歌云服务器(Google Cloud Compute Engine)是一项强大的云计算服务,它为用户提供了虚拟机实例,允许您在云端运行应用程序和托管网站。这项服务不仅适用于开发人员和企业,还适用于个人用户,为他们提供了强大的…

    2023年12月17日
    00
  • 亚马逊:从线上书店到全球电商巨头的发展历程

    曾经有一个年轻人,他在自己的车库里开始了一项看似不起眼的业务,但最终,这项业务改变了全球购物的方式。这个年轻人的名字叫杰夫·贝佐斯(Jeff Bezos),他创建了亚马逊,一个从线上书店起步,发展成为全球最大的…

    2023年10月27日
    00
  • 如何在腾讯云创建文件系统及挂载点

    在数字化时代,数据管理和存储对于企业和个人都至关重要。无论是为了备份重要文件还是为了提供共享资源,文件系统是一个不可或缺的组成部分。腾讯云为用户提供了创建文件系统及挂载点的便捷工具,本文将详细介绍如…

    2023年10月19日
    00