配置 TLS/SSL

TLS(传输层安全协议,其前身是 SSL)是确保在 API 环境(从应用到 Apigee Edge 再到后端服务)中安全加密消息传递的标准安全技术 。

无论 Management API 的环境配置如何(例如,您是否在 Management API 前端使用代理、路由器和/或负载均衡器),Edge 都允许您启用和配置 TLS,从而让您能够控制本地 API 管理环境中的消息加密。

对于 Edge 私有云的本地安装,您可以在以下几个位置配置 TLS:

  1. 路由器和消息 处理器之间
  2. 用于访问 Edge Management API
  3. 用于访问新版 Edge 界面
  4. 用于从应用 访问您的 API
  5. 用于 从 Edge 访问您的后端服务

如需全面了解如何在 Edge 上配置 TLS,请参阅 TLS/SSL。

创建 JKS 文件

对于许多 TLS 配置,您将密钥库表示为 JKS 文件,其中密钥库包含您的 TLS 证书和 私钥。您可以通过多种方式创建 JKS 文件,但一种方式是使用 openssl 和 keytool 实用程序。

例如,您有一个名为 server.pem 的 PEM 文件,其中包含您的 TLS 证书 ,还有一个名为 private_key.pem 的 PEM 文件,其中包含您的私钥。请使用以下命令 创建 PKCS12 文件:

openssl pkcs12 -export -clcerts -in server.pem -inkey private_key.pem -out keystore.pkcs12

您必须输入密钥的口令(如果有)和导出密码。此 命令会创建一个名为keystore.pkcs12的 PKCS12 文件。

使用以下命令将其转换为名为 keystore.jks 的 JKS 文件:

keytool -importkeystore -srckeystore keystore.pkcs12 -srcstoretype pkcs12 -destkeystore keystore.jks -deststoretype jks

系统会提示您输入 JKS 文件的新密码,以及 PKCS12 文件的现有密码。请确保您为 JKS 文件使用的密码与为 PKCS12 文件使用的密码相同。

如果您必须指定密钥别名(例如在路由器和消息 处理器之间配置 TLS 时),请在 openssl 命令中添加 -name 选项:

openssl pkcs12 -export -clcerts -in server.pem -inkey private_key.pem -out keystore.pkcs12 -name devtest

然后,在 keytool 命令中添加 -alias 选项:

keytool -importkeystore -srckeystore keystore.pkcs12 -srcstoretype pkcs12 -destkeystore keystore.jks -deststoretype jks -alias devtest

生成混淆密码

Edge TLS 配置过程的某些部分要求您在配置文件中输入混淆密码 。混淆密码是一种比以纯文本形式输入 密码更安全的替代方案。

您可以在 Edge 管理 服务器上使用以下命令生成混淆密码:

/opt/apigee/apigee-service/bin/apigee-service edge-management-server generate-obfuscated-password

输入新密码,然后在提示符处确认该密码。出于安全考虑,系统不会显示 密码的文本。此命令会以以下形式返回密码:

OBF:58fh40h61svy156789gk1saj
MD5:902fobg9d80e6043b394cb2314e9c6

配置 TLS 时,请使用 OBF 指定的混淆密码。

如需了解详情,请参阅这篇 文章。