安装 SQL Server 的安全注意事项

安全很重要,这不只是对 Microsoft SQL Server 和 Microsoft 而言的,而是对每个产品和每家企业都很重要。遵循简单的最佳做法,可以避免很多安全漏洞。本主题讨论安装 SQL Server 之前和安装 SQL Server 之后应使用的一些最佳安全做法。功能的参考主题中包括了特定功能的安全指南。

安装 SQL Server 前的工作

设置服务器环境时,请遵循以下最佳做法:

  • 增强物理安全性
  • 使用防火墙
  • 隔离服务
  • 创建具有最低特权的服务帐户
  • 禁用 NetBIOS 和服务器消息块

增强物理安全性

物理和逻辑隔离是构成 SQL Server 安全的基础。若要增强 SQL Server 安装的物理安全性,请执行以下任务:

  • 将服务器置于专门的房间,未经授权的人员不得入内。
  • 将数据库的宿主计算机置于受物理保护的场所,最好是上锁的机房,房中配备水灾检测和火灾检测监视系统或灭火系统。
  • 将数据库安装在公司 Intranet 的安全区域中,任何时候都不要直接连接到 Internet。
  • 定期备份所有数据,并将副本存储在远离工作现场的安全位置。

使用防火墙

防火墙是保护 SQL Server 安装所不可或缺的。若要使防火墙发挥最佳效用,请遵循以下指南:

  • 在服务器和 Internet 之间放置防火墙。
  • 将网络分成若干安全区域,区域之间用防火墙分隔。先阻塞所有通信流量,然后有选择地只接受所需的通信。
  • 在多层环境中,使用多个防火墙创建屏蔽子网。
  • 如果在 Windows 域内部安装服务器,请将内部防火墙配置为允许 Windows 身份验证。
  • 在所有版本的 Windows 都是 Windows XP、Windows Server 2003 或更高版本的 Windows 域中,禁用 NTLM 身份验证。 .
  • 如果应用程序使用分布式事务处理,可能必须要将防火墙配置为允许 Microsoft 分布式事务处理协调器 (MS DTC) 在不同的 MS DTC 实例之间以及在 MS DTC 和资源管理器(如 SQL Server)之间进行通信。

隔离服务

隔离服务可以降低风险,防止已受到危害的服务被用于危及其他服务。若要隔离服务,请遵循以下指南:

  • 请尽可能不要在域控制器中安装 SQL Server。
  • 在不同的 Windows 帐户下运行各自的 SQL Server 服务。
  • 在多层环境中,在不同的计算机上运行 Web 逻辑和业务逻辑。

创建具有最低特权的服务帐户

SQL Server 安装程序可以自动配置服务帐户或具有 SQL Server 所需特定权限的帐户。修改或配置 SQL Server 2005 使用的 Windows 服务时,应仅授予它们需要的权限。有关详细信息,请参阅设置 Windows 服务帐户

禁用 NetBIOS 和服务器消息块

边界网络中的服务器应禁用所有不必要的协议,包括 NetBIOS 和服务器消息块 (SMB)。

NetBIOS 使用以下端口:

  • UDP/137(NetBIOS 名称服务)
  • UDP/138(NetBIOS 数据报服务)
  • TCP/139(NetBIOS 会话服务)

SMB 使用以下端口:

  • TCP/139
  • TCP/445

Web 服务器和域名系统 (DNS) 服务器不需要 NetBIOS 或 SMB。在这些服务器上,禁用这两个协议可以缓解用户枚举的威胁。有关如何禁用这些协议的详细信息,请参阅如何禁用基于 TCP/IP 的 NetBIOS如何禁用服务器消息块

安装 SQL Server 后的工作

安装完成后,若要增强所安装的 SQL Server 软件的安全性,请遵循以下有关帐户和身份验证模式的最佳做法:

服务帐户

  • 以可能的最低特权运行 SQL Server 服务。
  • 将 SQL Server 服务与 Windows 帐户相关联。

身份验证模式

  • 连接 SQL Server 时要求 Windows 身份验证。

强密码

  • 始终给 sa 帐户分配强密码。
  • 始终启用密码策略检查。
  • 始终对所有 SQL Server 登录名使用强密码。

请参阅

其他资源

密码策略

帮助和信息

获取 SQL Server 2005 帮助