默认情况下,管理 API 的 TLS 处于停用状态,您可以使用管理服务器节点的 IP 地址和端口 8080 通过 HTTP 访问 Edge 管理 API。例如:
http://ms_IP:8080
或者,您也可以为 Management API 配置 TLS 访问,以便使用以下形式进行访问:
https://ms_IP:8443
在此示例中,您将 TLS 访问配置为使用端口 8443。不过,Edge 不需要该端口号 - 您可以将管理服务器配置为使用其他端口值。唯一的要求是,您的防火墙允许通过指定端口传输流量。
如需确保进出 Management API 的流量进行加密,请配置 /opt/apigee/customer/application/management-server.properties
文件中的设置。
除了 TLS 配置之外,您还可以通过修改 management-server.properties
文件来控制密码验证(密码长度和强度)。
确保 TLS 端口处于打开状态
本部分中的步骤会将 TLS 配置为使用管理服务器上的端口 8443。 无论您使用哪个端口,都必须确保该端口在管理服务器上处于打开状态。例如,您可以使用以下命令将其打开:
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 8443 -j ACCEPT --verbose
配置 TLS
修改 /opt/apigee/customer/application/management-server.properties
文件,以控制对往来于您的管理 API 的流量的 TLS 使用。如果此文件不存在,请创建一个。
如需配置对管理 API 的 TLS 访问权限,请执行以下操作:
- 生成包含 TLS 认证和私钥的密钥库 JKS 文件。如需了解详情,请参阅为边缘设备 (On Premises) 配置 TLS/SSL。
- 将密钥库 JKS 文件复制到管理服务器节点上的某个目录中,例如
/opt/apigee/customer/application
。 - 将 JKS 文件的所有权更改为“apigee”用户:
chown apigee:apigee keystore.jks
其中,keystore.jks 是您的密钥库文件的名称。
- 修改
/opt/apigee/customer/application/management-server.properties
以设置以下属性。如果该文件不存在,请创建该文件:conf_webserver_ssl.enabled=true # Leave conf_webserver_http.turn.off set to false # because many Edge internal calls use HTTP. conf_webserver_http.turn.off=false conf_webserver_ssl.port=8443 conf_webserver_keystore.path=/opt/apigee/customer/application/keystore.jks # Enter the obfuscated keystore password below. conf_webserver_keystore.password=OBF:obfuscatedPassword
其中,keyStore.jks 是您的密钥库文件,obfuscatedPassword 是经过混淆处理的密钥库密码。如需了解如何生成经过混淆处理的密码,请参阅为 Edge 本地部署配置 TLS/SSL。
- 使用以下命令重启 Edge 管理服务器:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
Management API 现在支持通过 TLS 访问。
将 Edge 界面配置为使用 TLS 访问 Edge API
在上述过程中,Apigee 建议保留 conf_webserver_http.turn.off=false
,以便 Edge 界面可以继续通过 HTTP 进行 Edge API 调用。
请按照以下步骤配置 Edge 界面,使其仅通过 HTTPS 进行调用:
- 按照上述说明配置对 Management API 的 TLS 访问。
- 确认管理 API 使用 TLS 正常运行后,请修改
/opt/apigee/customer/application/management-server.properties
以设置以下属性:conf_webserver_http.turn.off=true
- 执行以下命令重启 Edge 管理服务器:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
- 修改
/opt/apigee/customer/application/ui.properties
,为 Edge 界面设置以下属性:conf_apigee_apigee.mgmt.baseurl="https://FQ_domain_name:port/v1"
其中,FQ_domain_name 是根据管理服务器的证书地址指定的完整域名,port 是上面由
conf_webserver_ssl.port
指定的端口。如果 ui.properties 不存在,请创建它。
- 仅在配置对上述 Management API 的 TLS 访问权限时使用了自签名证书(不建议在生产环境中使用),请将以下属性添加到
ui.properties
:conf/application.conf+play.ws.ssl.loose.acceptAnyCertificate=true
否则,Edge 界面会拒绝自签名证书。
- 通过执行以下命令重启 Edge 界面:
/opt/apigee/apigee-service/bin/apigee-service edge-ui restart
针对启用了 FIPS 的操作系统使用 PKCS12 密钥库
如果您在启用了 FIPS 的操作系统上使用 Edge for Private Cloud,则必须使用 PKCS12 密钥库。这是符合 FIPS 标准的要求。除了本文中提及的其他标准配置外,您还可以将以下配置添加到 management-server.properties
文件中:
conf/webserver.properties+keystore.type=PKCS12
如果您的环境支持 FIPS,请务必应用此更改,以确保与规定的加密标准兼容。
管理服务器的 TLS 属性
下表列出了您可以在 management-server.properties
中设置的所有 TLS/SSL 属性:
属性 | 说明 |
---|---|
|
默认值为 8080。 |
|
如需启用/停用 TLS/SSL,请执行以下操作。启用 TLS/SSL(true)后,您还必须设置 ssl.port 和 keystore.path 属性。 |
|
要启用/停用 http 和 https。如果您想仅使用 HTTPS,请将默认值保留为 |
|
TLS/SSL 端口。 如果启用 TLS/SSL ( |
|
密钥库文件的路径。 如果启用 TLS/SSL ( |
|
使用以下格式的经过混淆处理的密码:OBF:xxxxxxxxxx |
|
可选的密钥库证书别名 |
|
如果您的密钥管理工具有密码,请输入经过混淆处理的密码,格式如下: OBF:xxxxxxxxxx |
|
为您的受信任证书存储区配置设置。确定是否要接受所有 TLS/SSL 证书(例如,接受非标准类型)。默认值为 OBF:xxxxxxxxxx |
|
指明要包含或排除的所有加密套件。例如,如果您发现密码存在漏洞,可以在此处将其排除。如有多个密码,请用英文逗号分隔。 您通过黑名单移除的所有密码都将优先于通过白名单添加的所有密码。 注意:默认情况下,如果未指定任何黑名单或白名单,则默认会排除与以下 Java 正则表达式匹配的密码。 ^.*_(MD5|SHA|SHA1)$ ^TLS_RSA_.*$ ^SSL_.*$ ^.*_NULL_.*$ ^.*_anon_.*$ 不过,如果您确实指定了黑名单,则此过滤器会被替换,并且您必须单独将所有加密算法列入黑名单。 如需了解加密套件和加密架构,请参阅 JDK 8 的 Java 加密架构 Oracle 提供程序文档。 |
|
整数,用于确定:
|