目录

简介

本文档介绍如何为Industrial Network Director(IND)和身份服务引擎之间的pxGrid集成创建SAN证书。

背景信息

在Cisco ISE中为pxGrid使用创建证书时，无法将服务器短主机名输入到ISE GUI，因为ISE仅允许FQDN或IP地址。

要创建包含主机名和FQDN的证书，必须在ISE之外创建证书请求文件。可以使用OpenSSL创建证书签名请求(CSR)和主题备用名称(SAN)字段条目。

本文档不包括在IND服务器和ISE服务器之间启用pxGrid通信的全面步骤。  这些步骤可在配置pxGrid后使用，并确认需要服务器主机名。  如果在ISE分析器日志文件中发现此错误，则通信需要主机名证书。

Unable to get sync statusjava.security.cert.CertificateException: No subject alternative DNS name matching <IND server hostname> found.

通过pxGrid通信初始部署IND的步骤位于https://www.cisco.com/c/dam/en/us/td/docs/switches/ind/install/IND_PxGrid_Registration_Guide_Final.pdf

所需的应用程序

- 思科工业网络导向器(IND)

- 思科身份服务引擎(ISE)

- OpenSSL

- 在大多数现代Linux版本以及MacOS中，默认情况下会安装OpenSSL软件包。如果您发现命令不可用，请使用操作系统的软件包管理应用程序安装OpenSSL。

- 有关OpenSSL for Windows的信息，请访问https://wiki.openssl.org/index.php/Binaries

其他信息

本文档使用以下详细信息：

- IND服务器主机名：rch-mas-ind

- FQDN:rch-mas-ind.cisco.com

- OpenSSL配置：rch-mas-ind.req

- 证书请求文件名：rch-mas-ind.csr

- 私钥文件名：rch-mas-ind.pem

- 证书文件名：rch-mas-ind.cer

流程步骤

创建证书CSR

1. 在安装了OpenSSL的系统上，为OpenSSL选项（包括SAN信息）创建请求文本文件。

- 大多数“_default”字段是可选的，因为在步骤10中运行OpenSSL命令时可以输入答#2。

- SAN详细信息(DNS.1、DNS.2)是必需的，必须包括DNS短主机名和服务器的FQDN。如果需要，可以使用DNS.3、DNS.4等添加其他DNS名称。

- 请求文件文本文件示例：

[req]

distinguished_name =名称

req_extensions = v3_req

[姓名 ]

countryName =国家/地区名称（2个字母代码）

countryName_default =美国

stateOrProvinceName =省或省名称（全称）

stateOrProvinceName_default = TX

localityName =城市

localityName_default = Cisco Lab

organizationalUnitName =组织单位名称（例如，IT）

organizationalUnitName_default = TAC

commonName =通用名称（例如，您的名称）

commonName_max = 64

commonName_default = rch-mas-ind.cisco.com

emailAddress =电子邮件地址

emailAddress_max = 40

[v3_req]

keyUsage = keyEncipherment、dataEncipherment

extendedKeyUsage = serverAuth、clientAuth

subjectAltName = @alt_names

[alt_names]

DNS.1 = rch-mas-ind

DNS.2 = rch-mas-ind.cisco.com

2. 使用OpenSSL在SAN字段中创建具有DNS短主机名的CSR。除CSR文件外，创建私钥文件。

- 命令:

openssl req -newkey rsa:2048 -keyout <server>.pem -out <server>.csr -config <server>.req

- 出现提示时，输入您选择的密码。  请务必记住此密码，在后面的步骤中会用到它。

- 出现提示时，请输入有效的电子邮件地址，或将该字段留空，然后按<ENTER>。

3. 如果需要，请验证CSR文件信息。对于SAN证书，请检查“x509v3 Subject Alternative Name”（x509v3主题备用名称），如本屏幕截图中所突出显示。

- 命令行:

openssl req -in <server>.csr -noout -text

4. 在文本编辑器中打开CSR文件。  出于安全原因，示例屏幕截图不完整且经过编辑。 实际生成的CSR文件包含更多行。

5. 将私钥文件(<server>.pem)复制到您的PC，就像在后续步骤中所使用的一样。

使用思科ISE生成证书，使用创建的CSR文件信息

在ISE GUI中：

1. 删除现有的pxGrid客户端。

- 导航到Administration > pxGrid Services > All Clients。

- 查找并选择现有客户端主机名（如果列出），

- 如果找到并选中，请点击Delete按钮，然后选择“Delete Selected”。  根据需要进行确认。

2. 创建新证书。

- 点击pxGrid服务页面上的Certificates选项卡。

- 选择以下选项：

- “我想”：

- "生成单个证书（包含证书签名请求）"

- "证书签名请求详细信息：

- 从文本编辑器中复制/粘贴CSR详细信息。  请务必包含BEGIN和END行。

- "证书下载格式"

- "隐私增强型电子邮件(PEM)格式的证书，PKCS8 PEM格式的密钥。"

- 输入证书密码并确认。

- 点击Create按钮。

- 这将创建和下载包含证书文件以及证书链的其他文件的ZIP文件。打开ZIP并解压缩证书。

- 文件名通常为<IND server fqdn>.cer

- 在ISE的某些版本中，文件名是<IND fqdn>_<IND short name>.cer

将新证书导入IND服务器，并启用它以供pxGrid使用

在IND GUI中：

1. 禁用pxGrid服务，以便可以导入新证书并将其设置为活动证书。

- 导航到Settings（设置）> pxGrid。

- 单击以禁用pxGrid。

2. 将新证书导入系统证书。

- 导航到Settings（设置）> Certificate Management（证书管理）。

- 点击“System Certificates”（系统证书）

- 点击“添加证书”。

- 输入证书名称。

- 单击“证书”左侧的“浏览”，然后找到新的证书文件。

- 点击“证书”左侧的“浏览”，并找到创建CSR时保存的私钥。

- 输入之前使用OpenSSL创建私钥和CSR时使用的密码。

- 点击“上传”。

3. 将新证书导入为受信任证书。

- 导航到Settings > Certificate Management，点击Trusted Certificates。

- 点击“添加证书”。

- 输入证书名称；该名称必须不同于系统证书上使用的名称。

- 点击“证书”左侧的“浏览”并找到新的证书文件。

- 密码字段可以留空。

- 点击“上传”。

4. 设置pxGrid以使用新证书。

- 导航到Settings（设置）> Certificate Management（证书管理），单击Settings（设置）。

- 如果尚未完成，请选择“pxGrid”下的“CA证书”。

- 选择在证书导入过程中创建的系统证书名称。

- Click Save.

在ISE服务器中启用并注册pxGrid

在IND GUI中：

1. 导航到Settings（设置）> pxGrid。

2. 点击滑块以启用pxGrid。

3. 如果这不是第一次在此IND服务器上向ISE注册pxGrid，请选择“使用现有节点连接”。  会自动填充IND节点和ISE服务器信息。

4. 要注册新的IND服务器以使用pxGrid，如果需要，请选择“注册新节点”。  输入IND节点名称，并根据需要选择ISE服务器。

- 如果ISE服务器未列在服务器1或服务器2的下拉选项中，可以使用Settings > Policy Server将其添加为新的pxGrid服务器

5. 点击Register。屏幕上会显示确认消息。

在ISE服务器中批准注册请求

在ISE GUI中：

1. 导航到Administration > pxGrid Services > All Clients。  待批准请求显示为“待批准总数(1)”。

2. 点击“待批总数(1)”，然后选择“全部批准”。

3. 在显示的弹出窗口中，点击“全部批准”。

4. IND服务器显示为客户端，如下所示。

在IND服务器中激活pxGrid服务

在IND GUI中：

1. 导航到Settings（设置）> pxGrid。

2. 点击“激活”。

3. 屏幕上会显示确认消息。