针对 SharePoint Server 配置 SQL Server 安全性

 

**上一次修改主题:**2017-12-21

**摘要:**了解如何为 SharePoint Server 2016 和 SharePoint 2013 环境提高 SQL Server 的安全性。

当您安装 SQL Server 时,默认设置有助于提供安全的数据库。此外,可以使用 SQL Server 工具和 Windows 防火墙为 SharePoint Server 环境增强 SQL Server 的安全性。

重要

SharePoint 团队已全面测试本主题中的安全步骤。还有其他方法有助于保护 SharePoint Server 场中的 SQL Server。有关详细信息,请参阅保护 SQL ServerSecuring SharePoint:Harden SQL Server in SharePoint Environments(保护 SharePoint:强化 SharePoint 环境中的 SQL Server)。

本文内容:

  • 开始之前

  • 配置 SQL Server 实例以便在非默认端口上进行侦听

    • 配置 SQL Server 实例以便在非默认端口上进行侦听
  • 阻止默认 SQL Server 侦听端口

  • 配置 Windows 防火墙以开放手动分配的端口

    • 配置 Windows 防火墙以开放手动分配的端口
  • 配置 SQL Server 客户端别名

    • 配置 SQL Server 客户端别名

开始之前

在开始此操作之前,请查看以下有关如何保护服务器场的任务:

  • 阻止 UDP 端口 1434。

  • 配置 SQL Server 的命名实例,以便侦听非标准端口(除 TCP 端口 1433 或 UDP 端口 1434 之外的其他端口)。

  • 为增强安全性,阻止 TCP 端口 1433 并将默认实例使用的端口重新分配到不同端口。

  • 在服务器场中的所有前端 Web 服务器和应用程序服务器上配置 SQL Server 客户端别名。在阻止 TCP 端口 1433 或 UDP 端口 1434 之后,与运行 SQL Server 的计算机通信的所有计算机都需要 SQL Server 客户端别名。

配置 SQL Server 实例以便在非默认端口上进行侦听

SQL Server 可以重新分配默认实例和任何命名实例所使用的端口。在 SQL Server Service Pack 1 (SP1) 中,可使用 SQL Server 配置管理器重新分配 TCP 端口。更改默认端口时,您可提高环境的安全性,防范了解默认分配并使用它们破坏 SharePoint 环境的黑客的攻击。

配置 SQL Server 实例以便在非默认端口上进行侦听

  1. 确认执行此过程的用户帐户是 sysadmin 或 serveradmin 固定服务器角色的成员。

  2. 在运行 SQL Server 的计算机上,打开 SQL Server 配置管理器。

  3. 在导航窗格中,展开“SQL Server 网络配置”。

  4. 单击所配置实例的相应条目。

    默认实例列为“MSSQLSERVER 的协议”。命名实例将显示为“命名实例的协议”。

  5. 在主窗口的“协议名称”列中,右键单击“TCP/IP”,然后单击“属性”。

  6. 单击“IP 地址”选项卡。

    对于分配给运行 SQL Server 的计算机的每个 IP 地址,此选项卡上都有一个对应条目。默认情况下,SQL Server 在分配给计算机的所有 IP 地址上进行侦听。

  7. 若要全局更改默认实例所侦听的端口,请按照以下步骤操作:

    • 对于除“IPAll”外的每个 IP 地址,清除“TCP 动态端口”和“TCP 端口”的所有值。

    • 对于“IPAll”,清除“TCP 动态端口”的值。在“TCP 端口”字段中,输入您希望 SQL Server 的实例进行侦听的端口。例如,输入 40000。

  8. 若要全局更改命名实例所侦听的端口,请按照以下步骤操作:

    • 对于包括“IPAll”在内的每个 IP 地址,清除“TCP 动态端口”的所有值。此字段的值为 0 表示 SQL Server 将动态 TCP 端口用于 IP 地址。此值为空则表示 SQL Server 不将动态 TCP 端口用于 IP 地址。

    • 对于除“IPAll”外的每个 IP 地址,清除“TCP 端口”的所有值。

    • 对于“IPAll”,清除“TCP 动态端口”的值。在“TCP 端口”字段中,输入您希望 SQL Server 的实例进行侦听的端口。例如,输入 40000。

  9. 单击“确定”。

    消息指明,必须重启 SQL Server 服务,然后更改才会生效。单击“确定”。

  10. 关闭 SQL Server 配置管理器。

  11. 重新启动 SQL Server 服务并确认运行 SQL Server 的计算机侦听的是您所选的端口。

    可以在重新启动 SQL Server 服务之后查看事件查看器日志以确认此信息。请查找类似于以下事件的信息事件:

    事件类型: 信息

    事件源: MSSQL$MSSQLSERVER

    事件类别: (2)

    事件 ID:26022

    日期: 3/6/2008

    时间: 1:46:11 PM

    用户: N/A

    计算机: computer_name

    说明:

    SQL Server 正在监听 [ 'any' <ipv4>50000]

  12. 验证:(可选)包括用户应执行的用于验证操作是否成功的步骤。

阻止默认 SQL Server 侦听端口

高级安全 Windows 防火墙将使用入站规则和出站规则来帮助保护传入和传出网络流量的安全。由于 Windows 防火墙默认情况下将阻止所有传入的主动提供的网络流量,因此您无需明确阻止默认的 SQL Server 侦听端口。有关详细信息,请参阅高级安全 Windows 防火墙配置 Windows 防火墙以允许 SQL Server 访问

配置 Windows 防火墙以开放手动分配的端口

要通过防火墙访问 SQL Server 实例,必须配置运行 SQL Server 的计算机上的防火墙以允许访问。手动分配的任何端口在 Windows 防火墙中都必须是开放的。

配置 Windows 防火墙以开放手动分配的端口

  1. 确认执行此过程的用户帐户是 sysadmin 或 serveradmin 固定服务器角色的成员。

  2. 在“控制面板”中,打开“系统和安全”。

  3. 单击“Windows 防火墙”,然后单击“高级设置”以打开“高级安全 Windows 防火墙”对话框。

  4. 在导航窗格中,单击“入站规则”以在“操作”窗格中显示可用的选项。

  5. 单击“新建规则”以打开“新建入站规则向导”。

  6. 使用该向导完成必要的步骤,以允许访问在配置 SQL Server 实例以侦听非默认端口中所定义的端口。

    备注

    您可配置 Internet 协议安全性 (IPsec),以帮助通过配置 Windows 防火墙来保证与运行 SQL Server 的计算机的通信的安全。通过选中“高级安全 Windows 防火墙”对话框的导航窗格中的“连接安全规则”可实现这一点。

配置 SQL Server 客户端别名

如果阻止运行 SQL Server 的计算机上的 UDP 端口 1434 或 TCP 端口 1433,则必须在服务器场中的所有其他计算机上创建 SQL Server 客户端别名。可以使用 SQL Server 客户端组件为连接到 SQL Server 的计算机创建 SQL Server 客户端别名。

配置 SQL Server 客户端别名

  1. 确认执行此过程的用户帐户是 sysadmin 或 serveradmin 固定服务器角色的成员。

  2. 在目标计算机上运行 SQL Server 安装程序,并安装下列客户端组件:

    • 连接组件

    • 管理工具

  3. 打开 SQL Server 配置管理器。

  4. 在导航窗格中,单击“SQL Native Client 配置”。

  5. 在主窗口的“项目”下,右键单击“别名”,再选择“新建别名”。

  6. 在“别名 - 新建”对话框的“别名”字段中,输入别名。例如,输入 SharePoint*_alias*。

  7. 在“端口号”字段中,输入数据库实例的端口号。例如,输入 40000。确保将协议设置为 TCP/IP。

  8. 在“服务器”字段中,输入运行 SQL Server 的计算机的名称。

  9. 单击“应用”,然后单击“确定”。

  10. **验证:**可以使用 SQL Server Management Studio(在安装 SQL Server 客户端组件时可用)测试 SQL Server 客户端别名。

  11. 打开 SQL ServerManagement Studio。

  12. 当提示您输入服务器名称时,请输入所创建别名的名称,再单击“连接”。如果连接成功,则会用对应于远程数据库的对象填充 SQL ServerManagement Studio。

  13. 若要从 SQL ServerManagement Studio 中检查与其他数据库实例的连接,请单击“连接”,然后单击“数据库引擎”。

See also

SQL Server Security Blog
Securing SharePoint: Harden SQL Server in SharePoint Environments
Configure a Windows Firewall for Database Engine Access
Configure a Server to Listen on a Specific TCP Port (SQL Server Configuration Manager)