在 Lync Server 2013 中部署一个 SQL Server 非标准端口和别名。

 

上次修改的主题: 2015-09-16

Microsoft Lync Server 2013 支持在 SQL Server 中使用非标准端口和别名。 使用SQL Server非标准端口和别名可提高安全性,并为 Lync 部署创建更灵活的环境。 这些步骤只是正确保护 Lync Server 2013 环境的一个步骤。 应采取其他步骤来减少 Lync Server 2013 实现的攻击面。

以下文章介绍在 Lync Server 2013 中设置SQL Server非标准端口和别名所需的步骤。

在 Lync Server 2013 中部署SQL Server非标准端口和别名

Lync Server 2013 拓扑生成器支持在配置 Lync Server 2013 时使用SQL Server别名作为完全限定的域名 (FQDN) 而不是实际SQL Server FQDN。 这允许对任何恶意攻击者隐藏实际SQL Server FQDN。 此外,使用非标准端口会掩盖任何攻击者试图攻击标准端口 1433 上的数据库的实际端口,如下图所示。

黑客不知道要攻击的端口号。

为了成功确定 Lync Server 2013 用于与SQL Server通信的端口,攻击者需要扫描所有端口以获取端口信息。 攻击者的端口扫描增加了安全人员检测和停止指令的机会。 除了使用非标准端口添加更高的安全性外,还可以使用SQL Server别名为部署提供灵活性。 这对于减少需要更改SQL Server名称的情况的配置更改非常有用。

注意

SQL Server提供两种容错方法 (故障转移群集和镜像) 。 支持将SQL Server非标准端口和别名与 Lync Server 2013 配合使用SQL Server容错方法。 如果池使用的SQL Server后端采用镜像配置,则SQL Server后端服务器上的 SQL 浏览器服务应运行,以便前端服务器在数据库故障转移到镜像SQL Server时连接到镜像数据库。

在拓扑生成器中配置SQL Server数据库连接时,或者使用Install-CsDatabase cmdlet 时,无法显式定义SQL Server非标准端口号并将其与 SQL 实例关联。 若要设置非标准端口,需要使用 SQL Server 和 Windows Server 实用工具。

若要设置用于 Lync Server 2013 的SQL Server非标准端口和别名,需要完成三个主要步骤。 这些步骤包括:

  • 确认 Lync Server 2013 已应用最新汇报。

  • 设置SQL Server非标准端口和别名。

  • 使用拓扑生成器使用SQL Server别名配置 Lync Server 2013。

  • 发布拓扑并验证数据库。

确认 Lync Server 2013 已应用最新汇报

请务必使 Lync Server 2013 保持最新。 若要检查最新更新以及如何应用它们的信息,请参阅 Lync Server 2013 的汇报

设置SQL Server非标准端口和别名

必须先在数据库实例上设置SQL Server非标准端口和别名,然后才能从 Lync Server 2013 拓扑生成器引用它。 若要设置SQL Server非标准端口和别名,必须完成三个主要步骤。 以下步骤如下所示:

  • 更改默认 TCP/IP 协议值。

  • 创建和配置SQL Server别名。

  • 创建域名系统 (DNS) 规范名称 (CNAME) 资源记录。

修改默认 TCP/IP 协议值

  1. 选择“开始”,然后选择SQL Server 配置管理器,如下图所示。

    SQL Server Management Studio图标

  2. 在导航窗格中,选择展开SQL Server实例,选择展开SQL Server网络配置,然后选择实例名称>的协议<,如下图所示。

    导航到 TCP/IP 属性

  3. 在右窗格中,右键单击 TCP/IP,然后选择 “属性”。 将显示“TCP/IP 属性”对话框。

  4. 选择 “IP 地址 ”选项卡。“IP 地址”选项卡显示服务器上的所有活动 IP 地址。 这些格式为 IP1、IP2 和 IPAll,如下图所示。

    打开 TCP/IP 属性。

  5. 清除所有 IP 地址的 TCP 动态端口 字段。 如果字段包含零个字符,则表示SQL Server正在侦听动态端口。 请确保清除这些字段,并且不包含零。

  6. 对于 Lync Server 用于连接到数据库的 IP 地址,请确保 “启用” 设置为 “是”,如下图所示。

    为正确的 IP 设置为“是”。

  7. 在对话框底部的 IPAll 部分中,在 TCP 端口 字段中输入所需的端口,如下图所示。 在此示例中,我们使用端口 50062,但你可以使用 49152 和 65535 之间的任何端口。 这些端口分配给动态和专用使用,这可确保不会与 Lync Server 2013 部署中使用的其他端口冲突。

    在 IPAll 部分设置端口。

  8. 选择 “确定 ”退出“TCP/IP 属性”对话框。

  9. 通过在SQL Server 配置管理器的左窗格中选择SQL Server服务来重启SQL Server实例。 然后右键单击右窗格中的SQL Server<实例名称>,然后选择“重启”,如下图所示。

    例如,重置SQL Server服务。

重要

请确保更新防火墙设置以适应新的SQL Server端口。

创建和配置SQL Server别名

  1. 选择“开始”,然后选择SQL Server 配置管理器,如下图所示。

    SQL Server Management Studio图标

  2. 在左窗格中,选择展开SQL Server实例,选择展开 SQL Native Client <版本>配置,然后选择别名,如下图所示。

    SQL Server 配置管理器中的别名。

  3. 右键单击 别名,然后选择 “新建别名...”。

  4. 输入 别名端口号协议服务器,如下图所示。

    创建新别名

    谨慎

    请确保输入在上一步中使用的相同非标准端口,因为该端口SQL Server将侦听。 如果配置的别名连接到错误的SQL Server FQDN 或实例,请禁用并重新启用关联的网络协议。 这样做可清除任何缓存的连接信息,并允许客户端正确连接。

创建 DNS CNAME 资源记录

  1. 登录到管理 DNS 的计算机。

  2. 选择“开始”,然后选择服务器管理器,如下图所示。

    打开 服务器管理器

  3. 选择 “工具 ”下拉列表,然后选择 DNS,如下图所示。

    从服务器管理器打开 DNS。

  4. 在左窗格中,展开服务器名称节点,展开“向前查找区域”节点,然后选择相关域。

  5. 右键单击域,然后选择 “新别名 (CNAME) ...”,如下图所示。

    选择用于创建新别名 CNAME

  6. 输入别名SQL Server的 FQDN,如下图所示。

    填写新别名 CNAME 对话框。

  7. 选择 “确定 ”以保存 CNAME 并在 DNS 管理器中查看它。

验证数据库连接性

有许多不同的方法来确保它正常工作。 你希望确保SQL Server数据库正在使用别名侦听指定的端口。 可以使用 netstattelnet 命令完成快速检查。

注意

Telnet 客户端是 Windows Server 附带的一项功能,但必须安装该功能。 可以通过打开服务器管理器并从“管理”菜单中选择“添加角色和功能”来安装 Windows Server 功能。

使用 netstat 和 telnet 验证数据库连接

  1. 选择 “开始”,然后键入 cmd 以打开命令提示符。

  2. 键入 netstat -a -f,并确认SQL Server使用正确的端口运行,如下图所示。

    使用 netstat 验证端口。

  3. 键入 telnet <别名端><口 #> 以确认与SQL Server实例的连接。 如果连接成功,则 telnet 将连接,并且不应看到错误。 这表明SQL Server实例正在使用正确的别名侦听正确的端口。 如果连接到SQL Server数据库时出现问题,则 telnet 会显示无法建立连接的错误。 在数据库服务器上检查了数据库连接后,可以通过网络) 从 Lync Server (执行相同的操作,并确保没有任何防火墙阻止访问。

结论

配置SQL Server别名后,可以使用它在拓扑生成器工具中创建 Lync Server 2013 拓扑。 有关拓扑的详细信息,请参阅 在 Lync Server 2013 中定义和配置拓扑