保护Windows Server 2012的Windows防火墙连接

我在非域环境中的Amazon EC2上安装了Windows Server 2012。

我需要远程桌面,并连接到运行在其上的Microsoft SQL服务器实例。

除了在Windows防火墙中打开这些端口之外,我想让这个更安全。 我不能限制连接到特定的IP,因为我有从我的ISPdynamicIP地址。

我在想的是使用我的客户端计算机和服务器上都存在的东西,作为连接的必要条件。 也许某种SSL证书?

我发现这个Windows Server 2003的: http : //www.alkia.net/index.php/faqs/106-how-to-secure-remote-desktop-connections-using-tls-ssl-based-authentication这似乎与我正在寻找的类似,但它假定活动域环境正在使用,只涵盖远程桌面,而不是通过防火墙的任何连接。 terminal服务configuration的Plus GUI甚至不存在于Windows Server 2012上。

我在任何防火墙规则的“常规”选项卡上看到,在Windows Server 2012中,有一个选项“允许连接,如果它是安全的”,可以启用和进一步configuration。 “高级安全Windows防火墙”下还有“连接安全规则”文件夹。 我怀疑我所寻找的是与这两个选项有关,但我不知道他们是如何一起工作的。

我试图在非域环境中实现甚至是可能的吗? 有没有关于如何设置Windows Server 2012的分步指南?

恕我直言,到目前为止最快和最简单的解决scheme将是使用IPSec安装使用仅传输模式和基于证书的身份validation。

这将允许您从特定笔记本电脑(或安装自定义证书的任何位置)连接到服务器的公用IP。

VPN是伟大的,但如果你所需要的只是传输模式,那真是太过分了 – 大多数VPN指南都假设需要设置隧道,这在你的用例中是过度的。

如果我打算这样做:

  1. 在服务器和工作站上创build本地自签名证书。
  2. 导入服务器上的工作站证书,反之亦然。 他们需要在受信任的根存储中。
  3. 使用证书身份validation,使用端点1的设置“any remote ip”和端点2的“您的服务器ip”设置连接安全规则。 这将使服务器可选地使用IPSec。 同样的规则也需要在你的工作站上进行设置。
  4. 在服务器上使用“允许连接,如果它是安全的”选项创build一个Windows防火墙规则。 我会从一个单一的协议,如远程桌面开始。 你以后可以扩大它。

请注意 ,可能会有几个AWS特定步骤,例如需要打开的端口,我没有涉及。 你可能想要启动一个testing实例来试试这个。

您指出的文章不一定只适用于域环境。 正如最后指出的那样:

本文中介绍的步骤假定您正在Active Directory域环境中运行terminal服务,并且还运行您自己的基于Microsoft的PKI。 但是,应该注意的是 ,只要您在计算机需要信任CA层次结构时专注于安全性,则这不是必需的。

但是,正如你所说,它只会保证你的RDP连接。

我想VPN是一个明显的解决scheme,但由于你没有提到它,我认为这不是你正在寻找的。 您可以使用以下一项或多项来减less攻击面:

  • 港口敲门。 这是一个很好的资源。
  • 向您的ISP询问他们拥有的地址块,只将这些地址添加到防火墙规则中的源地址将大大减less尝试攻击您的服务器的脚本小子的数量。 他们可能不会给你这个信息,那么你将不得不自己弄清楚范围。
  • 更改您的公开服务的默认端口。 这也减less了大量的自动化攻击。

尽pipe其中的一些选项只是通过默默无闻的安全措施,但它们总比没有效果好,而且在一起使用时还是一个很好的防御层。