检查 Lync Server 2013 服务器证书

 

上次修改的主题: 2014-11-01

验证计划

每月

测试工具

Windows PowerShell

所需的权限

使用 Lync Server Management Shell 在本地运行时,用户必须是 RTCUniversalServerAdmins 安全组的成员。

使用远程实例Windows PowerShell运行时,必须为用户分配有权运行Get-CsCertificate cmdlet 的 RBAC 角色。 若要查看可以使用此 cmdlet 的所有 RBAC 角色的列表,请从Windows PowerShell提示符运行以下命令:

Get-CsAdminRole | Where-Object {$_.Cmdlets -match "Get-CsCertificate"}

说明

使用Get-CsCertificate cmdlet 可以检索有关每个 Lync Server 证书的信息。 这一点尤其重要,因为证书具有内置过期日期。 例如,私人颁发的证书通常在 12 个月后过期。 如果任何 Lync Server 证书过期,则在续订或替换该证书之前,将失去随附的功能。

运行测试

若要返回有关每个 Lync Server 证书的信息,只需运行以下命令:

Get-CsCertificate

或者,可以根据到期日期筛选返回证书信息。 例如,此命令将返回的数据限制为 2014 年 6 月 1 日) 后无法使用过期 (证书:

Get-CsCertificate | Where-Object {$_.NotAfter -lt "6/1/2014"}

有关详细信息,请参阅Get-CsCertificate cmdlet 的帮助文档。

请注意,尽管存在Test-CsCertificateConfiguration cmdlet,但它对管理员来说并不十分有用。 (相反,该 cmdlet 主要由证书向导使用。) 尽管 cmdlet 有效,但它返回的信息的值极小,如以下输出示例所示:

指纹使用

---------- ---

A9D51A2911C74FABFF7F2A8A994B20857D399107 默认值

查看输出

Get-CsCertificate cmdlet 为每个 Lync Server 证书返回如下所示的信息:

颁发者:CN=FabrikamCA

NotAfter : 12/28/2015 3:35:41 PM

NotBefore : 1/2/2014 12:49:37 PM

SerialNumber: 611BB012000000000000000C

主题:CN=LYNC-SE.fabrikam.com

AlternativeNames: {sip.fabrikam.com, LYNC-SE.fabrikam.com,

meet.fabrikam.com,admin.fabrikam.com...}

指纹:A9D51A2911C74FABFF7F2A8A994B20857D399107

使用:默认值

通常,涉及 Lync Server 证书的首要问题涉及日期和时间,例如证书在 NotBefore) (生效的时间或 (NotAfter) 过期的时间。 由于这些日期和时间非常重要,因此可能需要将返回的数据限制为证书使用、证书序列号和证书过期日期等信息:然后,可以快速查看所有证书,以及它们何时过期。 若要仅返回该信息,请将命令与选项一起使用,如下所示:

Get-CsCertificate | Select-Object Use, SerialNumber, NotAfter | Sort-Object NotAfter

该命令返回如下所示的数据,证书按过期日期的顺序排序:

使用 SerialNumber NotAfter

--- ------------ --------

默认值 611BB012000000000000C 12/28/2015 3:35:41 PM

WebServicesInteral 32980AA20BBB20000191 02/15/2016 2:16:12 PM

WebServicesExternal 0451B012003872651A0C 02/20/2016 7:11:58 AM

如果存在证书问题,可能需要查看为证书配置的 AlternativeNames。 乍一看,这似乎是个问题。 默认情况下,根据控制台窗口的大小,Get-CsCertificate可能无法显示所有名称:

AlternativeNames: {sip.fabrikam.com, LYNC.fabrikam.com,

meet.fabrikam.com,admin.fabrika...}

若要查看分配给证书的所有替代名称,请使用类似于以下命令的命令:

Get-CsCertificate | Where-Object {$_.SerialNumber -eq "611BB01200000000000C"} | Select-Object -ExpandProperty AlternativeNames

这应该会显示证书上的所有替代名称:

sip.fabrikam.com

LYNC.fabrikam.com

meet.fabrikam.com

admin.fabrikam.com

LYNC-SE.fabrikam.com

Dialin.fabrikam.com

另请参阅

Get-CsCertificate