ssl - 在单个 ec2 实例 VPC 上设置 RD 网关
问题描述
我有一个 AWS 环境
- 对于每个客户端,都有一个专用的 ec2 windows 实例。
- 没有活动目录;每个 ec2 实例就像在自己的工作组中一样。
- 每个实例都部署在自己的专用 VPC、安全组等上。
- 客户端在需要时通过端口 3389 使用 RDP 从其站点连接到 ec2 实例。
客户端的 IP 地址是预先知道的,我们打开端口 3389 以允许 RDP 连接。
现在我们要介绍使用 SSL 的 RDP(端口 443)
来自 Amazon 和其他书籍的典型指南通过在单独的 ec2 实例中设置 RD 网关并将其用作跳转框。 https://docs.aws.amazon.com/quickstart/latest/rd-gateway/architecture.html#best-practices
这一切都很好,除了,
- 我不想在每个 VPC 中有额外的 ec2。(我知道还有其他选择可以在自己的 vpc 中使用集中式 RD 网关,然后使用 VPC 对等互连等。但由于各种原因,我不想走那条路)。
所以,我的问题是:
是否可以直接在我最终想要 RDP 进入的 ec2 实例上设置 RD 网关?并使用 SSL(端口 443)通过 RDP 连接?
提前致谢。
解决方案
我成功地尝试了这个。我创建了一个 EC2 windows 2016 服务器。
我使用 powershell 命令安装了 RD 网关。
安装-WindowsFeature RDS-网关-IncludeManagementTools
然后我启动了 RD 网关管理器。
配置 CAP 和 RAP 以允许我的远程桌面用户访问任何资源。
使用了我在 linux 中使用 certroot 创建的 ssl 证书。
从 aws 控制台,打开安全组中的端口 443 以允许从我的公共连接到 ec2 实例。(没有打开其他端口)。
在我的本地计算机上,我设置了一个 RDP 连接,这样:
RD 网关服务器设置具有 RD 网关服务器名称(例如 poc.mydomain.com)这应该与 ssl 证书匹配。
远程计算机名称被指定为“localhost”(意味着需要连接到同一台服务器)。
推荐阅读
- android - 任务 ':app:compileDebugJavaWithJavac' 执行失败。安卓工作室 4.1.1
- java - 与 xhr(或 fetch)和 spring-mvc 的网络通信
- php - 寻找设计模式来处理或批处理
- google-cloud-platform - 使用 pip install 更新后 Airflow 1.10.13、2020-11-24 问题
- android - 为什么 Android Studio 中的调度程序不起作用
- javascript - 如何在不改变位置的情况下将 div 和 dl 包装在 js 中
- python - 类型对象“评论”没有属性“对象”
- c - 使用 If 语句的简单 C 程序在 VS Code 中停止运行
- javascript - 复选框选中勾选功能
- javascript - 当页面几分钟未使用或没有互联网连接时,React JS Web 应用程序显示“未定义”弹出错误消息