This content has been machine translated dynamically.
Dieser Inhalt ist eine maschinelle Übersetzung, die dynamisch erstellt wurde. (Haftungsausschluss)
Cet article a été traduit automatiquement de manière dynamique. (Clause de non responsabilité)
Este artículo lo ha traducido una máquina de forma dinámica. (Aviso legal)
此内容已动态机器翻译。 放弃
このコンテンツは動的に機械翻訳されています。免責事項
This content has been machine translated dynamically.
This content has been machine translated dynamically.
This content has been machine translated dynamically.
This article has been machine translated.
Dieser Artikel wurde maschinell übersetzt. (Haftungsausschluss)
Ce article a été traduit automatiquement. (Clause de non responsabilité)
Este artículo ha sido traducido automáticamente. (Aviso legal)
この記事は機械翻訳されています.免責事項
이 기사는 기계 번역되었습니다.
Este artigo foi traduzido automaticamente.
这篇文章已经过机器翻译.放弃
Translation failed!
创建证书
证书颁发机构 (CA) 是颁发用于公钥加密的数字证书的实体。进行 SSL 交易的应用程序(例如 Web 浏览器)信任由证书颁发机构颁发或签名的证书。这些应用程序维护他们信任的 CA 的列表。如果任何受信任的 CA 签署了用于安全事务的证书,应用程序将继续处理该事务。
警告: Citrix 建议您对所有 SSL 事务使用从授权 CA(例如威瑞信)获取的证书。在 Citrix ADC 设备上生成的证书仅用于测试目的,而不是在任何实时部署中使用。
要导入现有证书和密钥,请参阅导入证书。
执行以下步骤创建证书并将其绑定到 SSL 虚拟服务器。文件名中唯一允许的特殊字符是下划线和点。
- 创建私钥。
- 创建证书签名请求 (CSR)。
- 将 CSR 提交给证书颁发机构。
- 创建证书密钥对。
- 将证书密钥对绑定到 SSL 虚拟服务器
下图说明了工作流程。
视频链接到 如何创建和安装新证书。
创建私钥
备注:
从版本 12.1 版本 49.x 开始,您可以使用带有 PEM 密钥格式的 AES256 算法来加密设备上的私钥。与数据加密标准 (DES) 的 56 位密钥相比,带 256 位密钥的 AES 在数学上更加高效和安全。
从 12.1 版本生成 50.x,您可以创建 PKCS #8 格式的 RSA 密钥。
私钥是数字证书中最重要的部分。根据定义,此密钥不能与任何人共享,必须安全地保存在 Citrix ADC 设备上。使用公钥加密的任何数据只能通过使用私钥解密。
您从 CA 接收的证书仅对用于创建 CSR 的私钥有效。将证书添加到 Citrix ADC 设备时需要密钥。
该设备仅支持用于创建私钥的 RSA 加密算法。您可以向证书颁发机构 (CA) 提交任何一种类型的私钥。您从 CA 接收的证书仅对用于创建 CSR 的私钥有效。将证书添加到 Citrix ADC 设备时需要密钥。
重要:
- 请确保限制对私钥的访问权限。任何有权访问您的私钥的人都可以解密您的 SSL 数据。
- 如果密钥名称中包含路径,则允许的 SSL 密钥名称的长度包括绝对路径名称的长度。
所有 SSL 证书和密钥都存储在设备上的 /nsconfig/ssl
文件夹中。为了提高安全性,您可以使用 DES 或三重 DES (3DES) 算法来加密存储在设备上的私钥。
使用 CLI 创建 RSA 私钥
在命令提示符下,键入:
create ssl rsakey <keyFile> <bits> [-exponent ( 3 | F4 )] [-keyform (DER | PEM )] [-des | -des3 | -aes256] {-password } [-pkcs8]
示例:
create rsakey testkey 2048 -aes256 -password 123456 -pkcs8
通过使用 GUI 创建 RSA 私钥
-
导航到 流量管理 > SSL > SSL 文件。
-
在 密钥 选项卡中,选择 创建 RSA 密钥。
-
输入以下参数的值,然后单击 创建。
- 密钥文件名 -RSA 密钥文件的名称和路径(可选)。/nsconfig/ssl/ 是默认路径。
- 密钥大小 -RSA 密钥的大小(以位为单位)。可以从 512 位到 4096 位。
- 公共指数值 -RSA 密钥的公共指数。指数是密码算法的一部分,是创建 RSA 密钥所必需的。
- 密钥格式 -在设备上存储 RSA 密钥文件的格式。
- PEM 编码算法 -使用 AES 256、DES 或 Triple-DES (DES3) 算法加密生成的 RSA 密钥。默认情况下,私钥是未加密的。
- PEM 密码 短语-如果私钥已加密,请输入密钥的密码短语。
使用 GUI 在 RSA 密钥中选择 AES256 编码算法
-
导航到“流量管理”>“SSL”>“SSL 文件”>“创建 RSA 密钥”。
-
在 密钥格式中,选择 PEM。
-
在 PEM 编码算法中,选择 AES256。
-
选择 PKCS8。
使用 CLI 创建证书签名请求
在命令提示符下,键入:
create ssl certreq <reqFile> -keyFile <input_filename> | -fipsKeyName <string>) [-keyForm (DER | PEM) {-PEMPassPhrase }] -countryName <string> -stateName <string> -organizationName <string> -organizationUnitName <string> -localityName <string> -commonName <string> -emailAddress <string> {-challengePassword } -companyName <string> -digestMethod ( SHA1 | SHA256 )
示例:
create ssl certreq priv_csr_sha256 -keyfile priv_2048_2 -keyform PEM -countryName IN -stateName Karnataka -localityName Bangalore -organizationName Citrix -organizationUnitName NS -digestMethod SHA256
使用 GUI 创建证书签名请求
- 导航到流量管理 > SSL。
-
在 SSL 证书中,单击 创建证书签名请求 (CSR) 。
- 在 摘要 方法中,选择 SHA256 。
有关详细信息,请参阅创建 CSR。
支持证书签名请求中的使用者备用名称
证书中的使用者备用名称 (SAN) 字段允许您将多个值(如域名和 IP 地址)与单个证书关联。换句话说,您可以使用一个证书来保护多个域名,例如:www.example.com、www.example1.com、www.example2.com 等。
某些浏览器(例如 Google Chrome 浏览器)不再支持证书签名请求 (CSR) 中的公用名称。他们在所有公开信任的证书中强制执行 SAN。
Citrix ADC 设备支持在创建 CSR 时添加 SAN 值。您可以将带有 SAN 条目的 CSR 发送到证书颁发机构,以获取带有该 SAN 条目的签名证书。当设备收到请求时,它会检查服务器证书中的 SAN 条目中是否匹配的域名。如果找到匹配项,则会将证书发送到客户端并完成 SSL 握手。您可以使用 CLI 或 GUI 创建具有 SAN 值的 CSR。
注意: Citrix ADC 设备仅处理基于 DNS 的 SAN 值。
使用 CLI 创建具有主题备用名称的 CSR
create ssl certReq <reqFile> (-keyFile <input_filename> | -fipsKeyName <string>) [-subjectAltName <string>] [-keyform ( DER | PEM ) {-PEMPassPhrase }] -countryName <string> -stateName <string> -organizationName <string> [-organizationUnitName <string>] [-localityName <string>] [-commonName <string>] [-emailAddress <string>] {-challengePassword } [-companyName <string>] [-digestMethod ( SHA1 | SHA256 )]
参数:
subjectAltName: 使用者备用名称 (SAN) 是 X.509 的扩展名,允许使用主题名称字段将各种值与安全证书关联。这些值称为“使用者备用名称”(SAN)。名称包括:
-
IP 地址(前缀为“IP:”示例:IP:198.51.10.5 IP:192.0.2.100)
-
DNS 名称(前缀为“DNS:”示例:DNS:www.example.com DNS:www.example.org DNS:www.example.net)
在命令行上,在引号内输入值。用空格分隔两个值。GUI 中不需要引号。 最大长度:127
示例:
create certReq test1.csr -keyFile test1.ky -countryName IN -stateName Kar -organizationName citrix -commonName ctx.com -subjectAltName "DNS:*.example.com DNS:www.example.org DNS:www.example.net"
注意:
在 FIPS 设备上,如果直接在设备上创建 FIPS 密钥,则必须将密钥文件名替换为 FIPS 密钥名称。
create certReq <csrname> -fipsKeyName fipskey.ky -countryName IN -stateName Kar -organizationName citrix -commonName ctx.com -subjectAltName "DNS:www.example.com DNS:www.example.org DNS:www.example.net"
通过使用 GUI 创建 CSR
- 导航到流量管理 > SSL > SSL 文件。
- 在 CSR 选项卡中,单击 创建证书签名请求 (CSR) 。
- 输入值并单击 创建。
限制
要在创建 SSL 证书时使用 SAN,必须显式指定 SAN 值。这些值不会自动从 CSR 文件读取。
向证书颁发机构提交 CSR
大多数证书颁发机构 (CA) 接受通过电子邮件提交的证书。CA 将向您提交 CSR 的电子邮件地址返回有效证书。
CSR 存储在 /nsconfig/ssl
文件夹中。
生成测试证书
注意:
要生成服务器测试证书,请参阅 生成服务器测试证书。
Citrix ADC 设备具有内置 CA 工具套件,可用于创建用于测试的自签名证书。
注意: 由于 Citrix ADC 设备对这些证书进行签名,而不是实际 CA,因此您不得在生产环境中使用它们。如果您尝试在生产环境中使用自签名证书,用户每次访问虚拟服务器时都会收到“证书无效”警告。
设备支持创建以下类型的证书
- 根 CA 证书
- 中间证书
- 最终用户证书
- 服务器证书
- 客户端证书
在生成证书之前,请创建一个私钥,然后使用它在设备上创建证书签名请求 (CSR)。然后,使用 Citrix ADC CA 工具生成证书,而不是将 CSR 发送到 CA。
使用向导创建证书
- 导航到流量管理 > SSL。
- 在详细信息窗格的“入门”下,选择要创建的证书类型的向导。
- 按照屏幕上的说明进行操作。
使用 CLI 创建根 CA 证书
在命令提示符下,键入以下命令:
create ssl cert <certFile> <reqFile> <certType> [-keyFile <input_filename>] [-keyform ( DER | PEM )] [-days <positive_integer>]
在以下示例中,csreq1 是 CSR,rsa1 是之前创建的私钥。
示例:
create ssl cert cert1 csreq1 ROOT_CERT -keyFile rsa1 -keyForm PEM -days 365
Done
使用 CLI 创建中间 CA 证书
create ssl cert <certFile> <reqFile> <certType> [-keyFile <input_filename>] [-keyform ( DER | PEM )] [-days <positive_integer>] [-certForm ( DER | PEM )] [-CAcert <input_filename>] [-CAcertForm ( DER | PEM )] [-CAkey <input_filename>] [-CAkeyForm ( DER | PEM )] [-CAserial <output_filename>]
在以下示例中,csr1 是之前创建的 CSR。Cert1 和 rsakey1 是该证书和自签名 (root-CA) 证书的相应密钥,pvtkey1 是中间 CA 证书的私钥。
示例:
create ssl cert certsy csr1 INTM_CERT -CAcert cert1 -CAkey rsakey1 -CAserial 23
Done
create ssl rsakey pvtkey1 2048 -exponent F4 -keyform PEM
Done
通过使用 GUI 创建根 CA 证书
导航到“流量管理”>“SSL”,然后在“入门”组中选择“根 CA 证书向导”,然后配置根 CA 证书。
通过使用 GUI 创建中间 CA 证书
导航到“流量管理”>“SSL”,然后在“入 门”组中选择“中间 CA 证书向导”,然后配置中间 CA 证书。
创建最终用户证书
最终用户证书可以是客户端证书或服务器证书。要创建测试最终用户证书,请指定中间 CA 证书或自签名 Root-CA 证书。
注意: 要创建用于生产的最终用户证书,请指定受信任的 CA 证书,然后将 CSR 发送给证书颁发机构 (CA)。
使用命令行界面创建测试最终用户证书
create ssl cert <certFile> <reqFile> <certType> [-keyFile <input_filename>] [-keyform ( DER | PEM )] [-days<positive_integer>] [-certForm ( DER | PEM )] [-CAcert <input_filename>] [-CAcertForm ( DER | PEM )] [-CAkey<input_filename>] [-CAkeyForm ( DER | PEM )] [-CAserial <output_filename>]
如果没有中间证书,请在 CAcert
和 CAkey
中使用根 CA 证书的证书 (cert1) 和私钥 (rsakey1) 值。
示例:
create ssl cert cert12 csr1 SRVR_CERT -CAcert cert1 -CAkey rsakey1 -CAserial 23
Done
如果存在中间证书,请在 CAcert
和 CAkey
中使用中间证书的证书 (certsy
) 和私钥 (pvtkey1) 值。
示例:
create ssl cert cert12 csr1 SRVR_CERT -CAcert certsy -CAkey pvtkey1 -CAserial 23
Done
使用 OpenSSL 创建自签名 SAN 证书
要创建具有多个使用者备用名称的自签名 SAN 证书,请执行以下步骤:
-
根据公司要求编辑相关字段,在本地计算机上创建 OpenSSL 配置文件。
注意:在以下示例中,配置文件是 “req.conf”。
[req] distinguished_name = req_distinguished_name x509_extensions = v3_req prompt = no [req_distinguished_name] C = US ST = VA L = SomeCity O = MyCompany OU = MyDivision CN = www.company.com [v3_req] keyUsage = keyEncipherment, dataEncipherment extendedKeyUsage = serverAuth subjectAltName = @alt_names [alt_names] DNS.1 = www.company.net DNS.2 = company.com DNS.3 = company.net
-
将文件上传到 Citrix ADC 设备上的 /nsconfig/ssl 目录。
-
以
nsroot
用户身份登录 Citrix ADC CLI 并切换到 shell 提示符。 -
运行以下命令创建证书:
cd /nsconfig/ssl openssl req -x509 -nodes -days 730 -newkey rsa:2048 -keyout cert.pem -out cert.pem -config req.conf -extensions 'v3_req'
-
运行以下命令验证证书:
openssl x509 -in cert.pem -noout –text Certificate: Data: Version: 3 (0x2) Serial Number: ed:90:c5:f0:61:78:25:ab Signature Algorithm: md5WithRSAEncryption Issuer: C=US, ST=VA, L=SomeCity, O=MyCompany, OU=MyDivision, CN=www.company.com Validity Not Before: Nov 6 22:21:38 2012 GMT Not After : Nov 6 22:21:38 2014 GMT Subject: C=US, ST=VA, L=SomeCity, O=MyCompany, OU=MyDivision, CN=www.company.com Subject Public Key Info: Public Key Algorithm: rsaEncryption RSA Public Key: (2048 bit) Modulus (2048 bit): … Exponent: 65537 (0x10001) X509v3 extensions: X509v3 Key Usage: Key Encipherment, Data Encipherment X509v3 Extended Key Usage: TLS Web Server Authentication X509v3 Subject Alternative Name: DNS:www.company.net, DNS:company.com, DNS:company.net Signature Algorithm: md5WithRSAEncryption …
分享:
分享:
This Preview product documentation is Citrix Confidential.
You agree to hold this documentation confidential pursuant to the terms of your Citrix Beta/Tech Preview Agreement.
The development, release and timing of any features or functionality described in the Preview documentation remains at our sole discretion and are subject to change without notice or consultation.
The documentation is for informational purposes only and is not a commitment, promise or legal obligation to deliver any material, code or functionality and should not be relied upon in making Citrix product purchase decisions.
If you do not agree, select Do Not Agree to exit.