为特定IP的所有程序和端口打开Windows 2008防火墙的风险有多大?

出于方便,我已经为客户的Windows 2008 R2服务器设置了防火墙规则,以便它对所有传入通信,所有端口和所有程序都是开放的,但范围设置将其限制为一个特定的远程IP地址 – 我们的。 原因是我们远程访问数据库和其他程序。

问:这样的设置有风险吗? 除了我们的固定IP地址之外,我是否应该努力为特定的端口和程序build立单独的规则?

作为一名开发人员,我发现很难估计IP欺骗的危险,以及其他任何可能利用该设置的黑客技术。

一般来说,可攻击表面积越小越好。 你是在正确的轨道上约束到一个特定的源IP。 继最小特权委托人之后,你应该拒绝所有的目标港口,只打开你实际需要的港口。 那么你就必须权衡pipe理成本与风险。 风险将取决于几件事情,例如您访问的数据有多敏感,服务器是否受损,量化损失是多less等等。

也就是说,攻击者从他们自己的networking内部利用客户服务器上的漏洞的可能性远远大于他们在中间人攻击中执行攻击并抓取您的凭证,敏感数据库资料等等。在实际应用中的IP欺骗在这里不会太担心。 它通常用于扫描networking或框架另一台机器/ IP。 当使用需要在源和目的地之间build立会话的协议时,欺骗IP并做任何function变得非常复杂。 可能的,但不太可能。 (见arp或dns中毒)

另一个更可能的攻击媒介(对数据库)可能是你自己的机器/networking被攻破,攻击者可以从那里枢轴转向数据库机器。 当然,在这一点上,你会遇到更大的问题。 ;) 希望这个对你有帮助。

这是一个不必要的风险。 大多数数据库访问可以通过证书authentication来处理。 “其他scheme”太模糊了。 这是否意味着您需要通过Internetvalidation远程Windows计算机? 听起来像一个VPN将是有用的。 在今天这个时代似乎不太可能,因为互联网上的两个组织没有防火墙能够在它们之间build立IPSEC VPN连接。

考虑到你对这个场景的解释,我会说限制访问一个IP(你的防火墙的公共IP地址),并且通过你的防火墙规则pipe理允许通过这个公共IP访问各种服务器服务的人。

只要你的IP地址是静态的,你应该没问题。