关于安全问题在 Internet 上分发 SQL Server

And*_*kub 1 security sql replication sql-server sql-server-2005

我们将把我们的服务器放在两个地方,以保持高水平的冗余并避免带宽批评。两台服务器位于不同的 LAN 上,但通过 WAN 网络(通过 Internet)进行通信。其中一台服务器是主服务器,另一台是辅助服务器。问题是该软件不仅包含一个数据库,而且在主服务器上还有必须传输到第二台服务器的文件。我们正在使用SQL SERVER 2005

我们设计的主要要求如下:

  1. 我们正在使用SQL Server 2005,将来打算将数据库升级到 Oracle。所以我们必须考虑维护和进化问题。
  2. 文件(图像、电影等)也必须传输到第二个服务器。
  3. 位于 Internet 的两台服务器之间的关系必须是完全安全的。安全是重点之一。主服务器上唯一打开的端口是用于 HTTP 请求的端口 80,它只是只读的,所有其他端口都关闭,这被证明是一个非常安全的选项。
  4. 两台服务器之间的带宽非常有限,我们不想增加主服务器的负担。
  5. 第二个服务器必须是可写的,但第二个服务器上的任何修改都不会回发到主服务器。所以我们有一个单向交易,不想要一个双向交易。

  1. 解决方案 I SQL Servers 之间的数据传输:Transactional Replication 服务器之间的文件传输:Cute FTP 安全选项:VPN 在这个解决方案中,我们将使用 VPN 来保护两台服务器之间的关系。两个 SQL SERVER 之间的数据通过事务复制发送。

  2. 方案二 SQL Server 之间的数据传输:备份和恢复 服务器之间的文件传输:Cute FTP 安全选项:VPN 这里我们将每六小时备份一次数据库,并通过安全隧道 - VPN - 将数据与文件一起发送通过 FTP 到第二个服务器。此解决方案的缺点是它使用了大量带宽,并且比第一个解决方案花费更多的时间。

  3. 解决方案三 SQL Server 之间的数据传输:Web 同步与 Merge Replication 服务器之间的文件传输:WebDAV over SSL 安全选项:- 这里我们使用 Merge Replication 进行复制,虽然我们不打算使用 Merge Replication 的双向选项. 我们将使用 Web 同步而不是 VPN。要将文件传输到第二台服务器,我们将使用基于 SSL 的 WebDAV 来保护连接。此选项的可能缺点是我不确定数据传输是否安全,并可能导致主服务器缺乏安全性。即使对于 Web 同步,我们也必须打开 443 端口,这也可能导致安全问题,尤其是我们在此解决方案中未使用 VPN。

  4. 方案四 SQL Server 之间的数据传输:事务复制 服务器之间的文件传输:FTP 或 WebDAV over SSL 安全选项:配置代理服务器 将代理服务器配置为多宿主服务器,以防止 Internet 上未经授权的用户访问运行的内部服务器SQL 服务器。代理服务器配置为多宿主服务器,以防止 Internet 上未经授权的用户访问运行 SQL Server 的内部服务器。在此选项中,我们必须打开端口:1433 和 21。我不确定这会导致安全性不足,尤其是我们在此解决方案中未使用 VPN。

注意:您认为我们没有使用镜像或日志传送等功能。我们不能在 SQL Server 中使用像镜像这样的功能,因为在这些情况下,备用服务器要么不可用,要么 - 如果使用快照 - 只是只读的。

总结:我更喜欢使用Solution Nr。1 因为它解决了所有安全问题并被证明是安全的。由于执行事务复制,它将很快,并且可以在未来扩展到其他数据库源,如 Oracle 和带宽问题。我正在等待您对我的解决方案的建议和评论,并期待任何其他想法。


非常感谢您的回复。

让我给你更清楚地了解我们的案例。我们现在在 WAN 网络上有一台服务器。该服务器包含数据库和 Web 应用程序。问题是我们公司的用户数量非常多,但是我们的连接线路非常少,并且带宽不足。所以当他们开始使用 WAN 上的网站时,它是无法使用的。

所以我们决定在我们的 LAN 连接上运行另一个从服务器,它将由主服务器同步。该公司的用户将使用此服务器作为性能问题。我认为这个解释让你更清楚这个主题。

所以我想对数据库(SQL SERVER 2005)使用复制,而不是为了故障转移或可用性。这只是我之前解释过的问题。您必须注意我们的带宽非常慢。

我正在使用 VPN 连接,因为安全性对我来说至关重要,我不想打开任何不必要的端口和缺失。

您使用 DFS 复制文件的建议看起来不错。但是 DFS 有一些限制和要求:

  1. 我们通过 VPN 通道使用安全关系,并且数据是加密的。那么当 FTP 数据通过安全 VPN 通道加密发送时,为什么还要使用 DFS?
  2. 将参与 DFS 复制的服务器必须运行 Windows Server 2003 R2 操作系统。但是我们的服务器只是 Windows Server 2003 Service Pack 1 而不是 R2。这也适用吗?
  3. 两台服务器必须在一个林中。我不确定这些是否适用于我们的案例!?它反映了安全性吗?
  4. 你能给我一些有用的 DFS 电子书的建议吗?

我希望我已经为您提供了足够的细节。我在等你的回复。

Tom*_*nor 6

如果我没看错,并且我喜欢认为我是,那么您实际上遇到了一个非常简单的问题。但前提是您准备修改您的 4 个解决方案中的任何一个。

我还将假设您的预算在 1 到 1000 万美元之间,因为您已经表示有兴趣在未来迁移到 Oracle,如果您没有足够高的预算,那么您搞砸了。

所以。您上述问题的 TL;DR 摘要如下。“我们希望创建一个高可用性数据库集群,在两个(或更多)站点上有两个(或更多)服务器。”

我不知道你为什么一直提到 FTP 和 WebDAV,因为你似乎很关心安全性。FTP 绝不是安全的。WebDAV 绝不是高性能。

第一步。获得并保持对网络的绝对控制。您将需要站点之间的良好连接。我正在考虑 10 到 100Mbit 的无竞争、未经过滤的“运营商级”互联网。在每个站点,您都需要一个合适的 VPN 路由器。类似于 Cisco ASA 的东西将是一个好的开始。然后在两个站点之间设置一个 AES 安全的 IPSec VPN。

要在两台服务器之间复制文件,您可以使用DFS。这是 Windows Server 2003 及更高版本中的内置多主文件系统复制工具。我不打算解释设置 DFS 的具体细节。这是一个完全不同的问题。

要复制数据库,您可以使用多种替代方法,每种方法都有不同的好处。关于您的应用程序架构,或者您是否希望从改进的可用性、改进的可扩展性或两者中受益,您还没有说得更多。同样,设置复制的实际过程是另一个问题的问题。

我建议您使用便携式 USB 硬盘“手动”对新数据库服务器进行初始同步,这可能比通过 Internet 同步要快得多。

你也没有提到你的网络基础设施,你有独立的网络服务器和数据库服务器吗?你也打算复制这些吗?

TL;DR:使用具有安全 VPN 的站点到站点链接的行业最佳实践方法,将内置复制系统用于数据库和文件系统。忘记 FTP、WebDAV 和所有其他的东西,好好做吧。如果你做得正确,就不太可能咬你的屁股。