简介
本文档介绍生成证书的过程,每次全新安装安全控制台私有云时必须上传这些证书,或者更新已安装的证书服务。
先决条件
要求
本文档中的信息基于以下软件和硬件版本:
- Windows Server 2008
- CentOS 7/8
- 安全控制台虚拟私有云3.0.2(以后)
- OpenSSL 1.1.1
使用的组件
Cisco 建议您了解以下主题:
- Windows Server 2008(以后)
- 安全控制台私有云安装
- 公用密钥基础结构
- OpenSSL
- Linux CLI
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您的网络处于活动状态,请确保您了解所有命令的潜在影响。
背景信息
引入安全控制台私有云3.X后,以下所有服务都需要主机名和证书/密钥对:
- 管理门户
- 身份验证(私有云3.X中的新功能)
- 安全控制台
- 处置服务器
- Disposition Server — 扩展协议
- 处置更新服务
- Firepower 管理中心
本文档将讨论生成和上传所需证书的快速方法。您可以根据组织策略调整每个参数,包括散列算法、密钥大小和其他参数,并且生成这些证书的机制可能与此处详细介绍的内容不匹配。
警告:下面提到的步骤可能因您的CA服务器配置而异。预期您选择的CA服务器已调配,并且配置已完成。以下技术说明仅介绍生成证书的示例,思科TAC不参与任何类型的证书生成和/或CA服务器问题的故障排除。
证书创建
在Window服务器上生成证书
确保在Windows Server上安装并配置以下角色。
- Active Directory证书服务
- 证书颁发机构
- 证书颁发机构Web注册
- 在线响应器
- 证书注册Web服务
- 证书注册策略Web服务
- Active Directory 域服务
- DNS Servers
- Web服务器(IIS)
生成证书签名请求(CSR)
步骤1:导航到MMC控制台,然后添加计算机帐户的证书管理单元,如下图所示。
第二步:向下钻取证书(本地计算机)>个人>证书。
第三步:右键单击空白区域,然后选择所有任务>高级操作>创建自定义请求。
第四步:在“登记”窗口中选择下一步。
第五步:选择证书注册策略,然后选择下一步。
第六步:选择模板作为Web Server,然后选择下一步。
步骤 7.如果您的“Web服务器”模板已正确配置且可用于注册,则会显示“可用”状态。选择Details展开Properties。
步骤 8至少添加CN和DNS属性。可以根据您的安全要求添加其余属性。
步骤 9或者,在General选项卡下提供一个友好名称。
步骤 10选择Private Key选项卡,并确保在Key Options部分下启用了Make private key exportable。
步骤 11最后,选择OK。这必须引导您进入Certificate Enrollment对话框,从中可以选择Next。
步骤 12浏览到保存提交到CA服务器进行签名的.req文件的位置。
向CA提交CSR并生成证书
步骤1:导航到您的MS AD证书服务网页(如下所示),然后选择Request a Certificate。
第二步:选择advanced certificate request链接。
第三步:选择Submit a certificate request by using a base-64-encoded CMC or PKCS #10 file,或选择submit a renewal request by using a base-64-encoded PKCS #7 file。
第四步:通过记事本打开以前保存的.req文件(CSR)的内容。复制内容并粘贴到此处。确保证书模板被选为Web服务器
第五步:最后,选择Submit。
第六步:此时,您必须能够下载证书,如图所示。
导出私钥并转换为PEM格式
步骤1:通过打开.cer文件并选择安装证书,将证书安装到证书存储区。
第二步:导航到之前选择的MMC管理单元。
第三步:导航到安装证书的商店。
第四步:右键单击正确的证书,选择所有任务>导出。
第五步:在证书导出向导中,确认导出私钥,如图所示。
第六步:输入密码,然后选择Next将私钥保存到磁盘上。
步骤 7.这会以.PFX格式保存私钥,但是,需要将其转换为.PEM格式才能将其用于安全终端私有云。
步骤 8安装OpenSSL库。
步骤 9打开命令提示符窗口,并切换到安装OpenSSL的目录。
步骤 10运行以下命令提取私钥并将其保存到新文件:(如果PFX文件与存储OpenSSL库的路径不同,则必须指定确切路径以及文件名)
openssl pkcs12 -in yourpfxfile.pfx -nocerts -out privatekey.pem -nodes
步骤 11现在运行以下命令来提取公共证书并将其保存到新文件:
openssl pkcs12 -in yourpfxfile.pfx -nokeys -out publiccert.pem -nodes
在Linux服务器上生成证书(Strict SSL check DISABLED)
注意:严格TLS检查验证证书是否符合Apple的TLS要求。有关详细信息,请参阅管理员指南。
确保您尝试生成所需证书的Linux服务器安装了OpenSSL 1.1.1库。验证此操作以及下面列出的过程是否可能与您运行的Linux发行版不同。此部分已编档,在CentOS 8.4服务器上完成。
生成自签名RootCA
步骤1:生成根CA证书的私钥。
openssl genrsa -out
4096
第二步:生成CA证书。
openssl req \
-subj '/CN=
/C=US/OU=
/O=
' \
-addext "extendedKeyUsage = serverAuth, clientAuth" \
-outform pem -out
\
-key
-new -x509 \
-days "1000"
为每个服务生成证书
根据DNS名称条目为身份验证、控制台、性质、性质扩展、更新服务器、Firepower管理中心(FMC)服务创建证书。您需要为每个服务(身份验证、控制台等)重复以下证书生成过程。
生成私钥
openssl genrsa -out
4096
将<YourServiceName.key>替换为要创建为Auth-Cert.key的新密钥文件名
生成 CSR
openssl req -new \
-subj '/CN=
/C=US/OU=
/O=
' \
-key
-out
更换 <YourServiceName.key>使用当前(或新)证书KEY文件,例如Auth-Cert.key
将<YourServiceName.csr>替换为要创建的CSR文件名,例如Auth-Cert.crt
生成证书
openssl x509 -req \
-in
-CA
\
-CAkey
-CAcreateserial -out
\
-days 397 -sha256
将<YourServiceName.csr>替换为实际(或新)证书CSR,例如Auth-Cert.csr
将<YourRootCAName.pem>替换为实际(或新)的PEM文件名RootCAName.pem
使用当前(或新)证书KEY文件(例如Auth-Cert.key)替换<YourServiceName.key>
使用要创建的文件名(例如Auth-Cert.crt)替换<YourServiceName.crt>
在Linux服务器上生成证书(启用严格SSL检查)
注意:严格TLS检查验证证书是否符合Apple的TLS要求。有关详细信息,请参阅管理员指南。
生成自签名RootCA
步骤1:生成根CA证书的私钥。
openssl genrsa -out
4096
第二步:生成CA证书。
openssl req \
-subj '/CN=
/C=US/OU=
/O=
' \
-outform pem -out
\
-key
-new -x509 \
-days "1000"
为每个服务生成证书
根据DNS名称条目为身份验证、控制台、性质、性质扩展、更新服务器、Firepower管理中心(FMC)服务创建证书。您需要为每个服务(身份验证、控制台等)重复以下证书生成过程。
创建扩展配置文件并保存(extensions.cnf)
[v3_ca]
basicConstraints = CA:FALSE
keyUsage = critical, digitalSignature, keyEncipherment
extendedKeyUsage = critical, serverAuth, clientAuth
生成私钥
openssl genrsa -out
4096
用要作为Auth-Cert.key创建的新KEY文件名替换<YourServiceName.key>
生成 CSR
openssl req -new \
-key
\
-subj '/CN=
/C=US/OU=
/O=
' \
-out
更换 <YourServiceName.key>使用当前(或新)证书KEY,例如Auth-Cert.key
使用当前(或新)证书CSR(例如Auth-Cert.csr)替换<YourServiceName.csr>
生成证书
openssl x509 -req -in
\
-CA
-CAkey
\
-CAcreateserial -out
\
-extensions v3_ca -extfile extensions.cnf \
-days 397 -sha256
使用当前(或新)证书CSR(例如Auth-Cert.csr)替换<YourServiceName.csr>
将<YourRootCAName.pem>替换为当前(或新)的PEM文件名RootCAName.pem
使用当前(或新)证书KEY文件(例如Auth-Cert.key)替换<YourServiceName.key>
使用要创建的文件名(例如Auth-Cert.crt)替换<YourServiceName.crt>
将证书添加到安全控制台私有云
步骤1:从上述任一方法生成证书后,上传每个服务的相应证书。如果正确生成,则会启用所有复选标记,如图所示。
验证
当前没有可用于此配置的验证过程。
故障排除
目前没有针对此配置的故障排除信息。