本指南将向您展示如何在 F5 BIG-IP 上生成 CSR(证书签名请求)。
同样的工作流程适用于所有终止 TLS 的 BIG-IP 模块(LTM、APM、GTM/DNS、ASM/Advanced WAF),因为它们共享相同的 TMOS 证书存储。主要路径使用 BIG-IP Configuration utility(TMUI);文末附近有一小节展示了对应的 tmsh 命令,供偏好命令行的用户使用,另有一个单独的旧版章节介绍F5 FirePass SSL VPN。
BIG-IP 私钥在整个过程中生成并始终保留在设备上:您只需将 CSR 发送给您的 CA。当签名的证书返回后,您需要将其导入到相同的 SSL Certificate 条目下,以确保密钥和证书保持配对。有关证书签发后的端到端安装流程,请参阅如何在 F5 产品上安装 SSL 证书。
在 F5 BIG-IP 上生成 CSR
以下步骤适用于使用 Configuration utility 的 BIG-IP 13.x、14.x、15.x、16.x 和 17.x 版本,以及 2025 年 11 月发布的新 BIG-IP 21.x 分支(BIG-IP 21.x 沿用了 17.x 的 TMOS 工作流程)。在 BIG-IP 12.x 及更早版本中,菜单路径有所不同(详见步骤 1)。
步骤 1:打开 SSL Certificate List
- 以管理员身份登录 BIG-IP Configuration utility(TMUI)。
- 在BIG-IP 13.x 及更高版本中,转到 System > Certificate Management > Traffic Certificate Management > SSL Certificate List。
- 在BIG-IP 12.x 及更早版本中,转到 System > File Management > SSL Certificate List。
- 点击右上角的Create。将打开New SSL Certificate对话框。
步骤 2:命名证书并选择签发机构
- 在General Properties下,为 SSL 证书输入一个唯一的Name(BIG-IP 会在内部使用此名称来跟踪密钥及其匹配的证书)。请使用具有描述性的名称,例如 www_example_com_2026。
- 在Certificate Properties下,从Issuer下拉列表中选择Certificate Authority。此选项会生成一个供外部(公共)CA 签署的 CSR;而Self则会生成自签名证书。
步骤 3:填写证书主体和 SAN
仅使用标准 ASCII 字符;非拉丁字母会导致请求失败。请按以下方式填写各字段:
- Common Name:您要保护的完全限定域名(FQDN),例如 www.example.com。对于通配符证书,请在顶级域名前加上星号,例如 *.example.com。
- Subject Alternative Name:列出证书必须覆盖的所有主机名,以逗号分隔,每个前面加上DNS:(如果 CA 允许,IP SAN 前面加 IP:)。例如:DNS:www.example.com, DNS:example.com, DNS:api.example.com。请在此处也包含 Common Name;现代客户端(Chromium、Firefox、Safari、.NET、Java、Go)仅根据 SAN 扩展验证主机名,缺少 SAN 是 CSR 被拒绝或签发后浏览器信任失败的最常见原因。
- Division(组织单位):留空。OU 属性已被 CA/Browser Forum 弃用,大多数公共 CA 会在签发的证书中将其移除。
- Organization:贵公司的完整法定名称,须与注册信息完全一致,例如 GPI Holding LLC。此字段为 OV 和 EV 证书所必需。对于域名验证(DV)订单,此字段会被忽略,因此可以填写任意简单的占位内容。
- Locality:贵组织注册所在城市的全称(例如Seattle,而非SEA)。
- State or Province:州或省的全称(例如Washington,而非WA)。
- Country:从下拉列表中选择您的国家(BIG-IP 会将两位字母的 ISO 代码写入请求中,例如 US、GB、DE)。
- E-mail Address:可选;将写入 CSR 中的联系邮箱地址。大多数公共 CA 会忽略此字段,转而使用订单中提供的邮箱。
- Challenge Password:除非您的 CA 明确要求,否则请留空。
步骤 4:选择密钥类型和密钥长度
- Key Type:对于标准的公共证书,请选择RSA(这是所有公共 CA 都支持的选项)。仅当您的 CA 确认订单类型支持,且您有特定理由偏好使用时,才选择ECDSA。
- Key Size:选择2048。这是目前所有公共 CA 都接受的最低标准。仅当您的策略要求更大的密钥时才选择3072或4096;这样做的代价是 TLS 握手速度会略慢。
- Security Type:除非您的环境使用 FIPS 或外部 HSM,否则保留默认设置(Normal);如果使用,请选择相应选项,以便 BIG-IP 在正确的密钥库中生成密钥。
步骤 5:完成并生成 CSR
核对每个字段无误后,点击Finished。BIG-IP 会在设备密钥库中生成私钥,创建对应的 PKCS #10 格式 CSR,并将您返回到SSL Certificate List页面。您新创建的条目会显示在列表中,使用您指定的名称,并标记为待处理请求,直至导入已签名的证书为止。
步骤 6:复制 Request Text 并提交给您的 CA
- 在SSL Certificate List中,点击您刚创建的条目。
- 打开Certificate Authority选项卡(某些 BIG-IP 版本中标注为CA)。
- 复制Request Text框中的全部内容,包括 BEGIN CERTIFICATE REQUEST 和 END CERTIFICATE REQUEST 标记行。(您也可以点击Download Request将其保存为 .csr 文件。)
您复制的 CSR 看起来应类似这样:
-----BEGIN CERTIFICATE REQUEST-----
MIICvDCCAaQCAQAwdzELMAkGA1UEBhMCVVMxEzARBgNVBAgMCldhc2hpbmd0b24x
... (many lines of base64) ...
-----END CERTIFICATE REQUEST-----
将完整的代码块(包含标记行)粘贴到您 SSL 订单中的 CSR 字段。私钥永远不会离开 BIG-IP 设备,因此请勿将设备上的任何其他内容粘贴到订单表单中。当 CA 验证请求并通过邮件发送已签发的证书及其中间证书链后,请返回同一个 SSL Certificate 条目,打开它并导入已签名的证书(这样可以保持与现有密钥的配对);然后将证书链作为单独的 Certificate 对象导入,并在 Client SSL 配置文件中同时引用两者。完整的导入及 Virtual Server 分配流程详见如何在 F5 产品上安装 SSL 证书。
提交前检查 CSR(可选)
在将请求发送给 CA 之前,值得确认一下 Common Name、SAN 条目和密钥长度是否正确。将 Request Text 粘贴到 SSL Dragon 的CSR 解码器中,即可读取主体、SAN 列表和密钥长度。Common Name 应与客户端将使用的主机名一致,且每个所需的主机名都必须出现在 Subject Alternative Name 列表中。如果您的工作站上安装了 OpenSSL,同样的详细信息也可以在本地打印出来:
openssl req -noout -text -in request.csr
可选:通过 tmsh(命令行)生成 CSR
如果您更喜欢使用 TMOS shell,可以通过一条命令同时生成密钥和 CSR。通过 SSH 连接到 BIG-IP,进入tmsh,然后运行:
create sys crypto key www_example_com_2026 gen-certificate gen-csr
key-size 2048
common-name www.example.com
organization "Example Inc"
country US
state Washington
city Seattle
subject-alternative-name "DNS:www.example.com,DNS:example.com,DNS:api.example.com"
该命令会在 BIG-IP 密钥库中以您指定的名称创建密钥,并将对应的 CSR 写入 /config/ssl/ssl.csr/<name>.csr。可以通过以下命令查看该文件:
cat /config/ssl/ssl.csr/www_example_com_2026.csr
复制从 BEGIN CERTIFICATE REQUEST 到 END CERTIFICATE REQUEST 的完整代码块,并按与图形界面流程相同的方式提交给您的 CA。
在 F5 FirePass SSL VPN 上生成 CSR(旧版)
注意:F5 FirePass 已停止销售并停止软件开发。其远程访问功能已由 BIG-IP APM 取代,目前的公共 CA 不再为 FirePass 设备提供任何支持保证。仅当您仍在维护尚无法替换的旧版 FirePass 系统时才使用本节内容;对于任何新的部署,请改为在 BIG-IP APM 上生成 CSR。
- 登录到您的 FirePass 管理控制台。
- 转到 Server > Security,然后选择 Certificate > Generate a New Certificate Request。
- 填写请求字段:
- Server Name:您要保护的主机的完全限定域名(FQDN),例如 yourdomain.com。对于通配符证书,请在前面加上星号(例如 *.yourdomain.com)。
- Country Name:选择贵公司注册所在的国家。
- State:贵公司注册所在的州或省,需填写全称。
- City:贵公司注册所在的城市,需填写全称。
- Company:贵公司的完整法定名称。
- Organizational Unit:简短的部门标签,例如 IT 或 Web。目前大多数公共 CA 会忽略此字段,因此保持简洁即可。
- Contact Email:一个有效的电子邮箱地址。
- Expiration:跳过。
- Encryption Password:设置一个密码,用于加密 FirePass 设备上的私钥,然后进行确认。
- 仔细检查每个字段,然后点击Generate Request。
- 点击Here链接以下载 CSR 和私钥。请妥善保管密钥及其密码;您在安装时需要用到它们,且事后无法恢复。
FirePass 向导没有提供 Subject Alternative Name 字段,因此生成的 CSR 中只包含 Common Name。对于单域名签发,公共 CA 会自动将 CN 复制到 SAN 条目中,但该请求无法编码多个主机名;如果您需要多域名证书,请使用我们的CSR 生成器生成 CSR,并将签发的证书与其生成的密钥一并导入到 FirePass 中。


