为新 Edge 体验配置 TLS

Edge for Private Cloud v4.19.01

默认情况下,您可以使用新版 Edge 体验节点的 IP 地址或 DNS 名称以及端口 3001,通过 HTTP 访问新版 Edge 体验。例如:

http://newue_IP:3001

或者,您也可以配置对新版 Edge 体验的 TLS 访问权限,以便通过以下形式访问它:

https://newue_IP:3001

TLS 要求

新版 Edge 体验仅支持 TLS v1.2。如果您在新版 Edge 体验中启用 TLS,则用户必须使用与 TLS v1.2 兼容的浏览器连接到新版 Edge 体验。

TLS 配置属性

执行以下命令,为新版 Edge 体验配置 TLS:

/opt/apigee/apigee-service/bin/apigee-service edge-management-ui configure-ssl -f configFile

其中,configFile 是您用于安装新版 Edge 体验的配置文件。

在执行此命令之前,您必须修改配置文件,以设置控制 TLS 的必要属性。下表介绍了用于为新版 Edge 体验配置 TLS 的属性:

属性 说明 是否必需?
MANAGEMENT_UI_SCHEME

设置用于访问新版 Edge 体验的协议(“http”或“https”)。 默认值为“http”。将其设置为“https”以启用 TLS:

MANAGEMENT_UI_SCHEME=https
是
MANAGEMENT_UI_TLS_OFFLOAD

如果为“n”,则指定对新版 Edge 体验的 TLS 请求在新版 Edge 体验处终止。您必须设置 MANAGEMENT_UI_TLS_KEY_FILE 和 MANAGEMENT_UI_TLS_CERT_FILE.

如果为“y”,则指定对新版 Edge 体验的 TLS 请求在负载均衡器上终止,然后负载均衡器使用 HTTP 将请求转发到新版 Edge 体验。

如果您在负载均衡器上终止 TLS,则新版 Edge 体验仍需要知道原始请求是通过 TLS 传入的。例如,某些 Cookie 设置了 Secure 标志。

您必须将 MANAGEMENT_UI_SCHEME 设置为“https”,否则 MANAGEMENT_UI_TLS_OFFLOAD 将被忽略:

MANAGEMENT_UI_SCHEME=https
MANAGEMENT_UI_TLS_OFFLOAD=y
是
MANAGEMENT_UI_TLS_KEY_FILE

MANAGEMENT_UI_TLS_CERT_FILE

如果为 MANAGEMENT_UI_TLS_OFFLOAD=n,则指定 TLS 密钥和证书文件的绝对路径。文件必须采用 PEM 格式,不含口令,并且必须归“apigee”用户所有。

这些文件的推荐位置为:

/opt/apigee/customer/application/edge-management-ui

如果该目录不存在,请创建它。

如果为 MANAGEMENT_UI_TLS_OFFLOAD=y,则省略 MANAGEMENT_UI_TLS_KEY_FILE 和 MANAGEMENT_UI_TLS_CERT_FILE.。它们会被忽略,因为对新版 Edge 体验的请求通过 HTTP 传入。

是(如果 MANAGEMENT_UI_TLS_OFFLOAD=n)
MANAGEMENT_UI_PUBLIC_URIS

如果为 MANAGEMENT_UI_TLS_OFFLOAD=n,则指定新版 Edge 体验的网址。

根据配置文件中的其他属性设置此属性。例如:

MANAGEMENT_UI_PUBLIC_URIS=$MANAGEMENT_UI_SCHEME://$MANAGEMENT_UI_IP:$MANAGEMENT_UI_PORT

其中:

  • MANAGEMENT_UI_SCHEME 指定协议,即“http”或“https”,如上所述。
  • MANAGEMENT_UI_IP 指定新版 Edge 体验的 IP 地址或 DNS 名称。
  • MANAGEMENT_UI_PORT 指定新版 Edge 体验使用的端口。

如需详细了解这些属性,请参阅安装新版 Edge 体验。

如果 MANAGEMENT_UI_TLS_OFFLOAD=y:

  • MANAGEMENT_UI_IP 指定负载均衡器的 IP 地址或 DNS 名称,而不是新版 Edge 体验的 IP 地址或 DNS 名称。
  • 负载均衡器和新 UE 必须为请求使用相同的端口号,例如 3001。 使用 MANAGEMENT_UI_PORT 指定负载均衡器和新 UE 上的端口号。

是

SHOEHORN_SCHEME

在安装新版 Edge 体验之前,您需要先安装基本 Edge 界面(称为 shoehorn)。安装配置文件使用以下属性指定用于访问基本 Edge 界面的协议“http”:

SHOEHORN_SCHEME=http

基本 Edge 界面不支持 TLS,因此即使您在新版 Edge 体验中启用 TLS,此属性仍必须设置为“http”。

是,且设置为“http”

配置 TLS

如需配置对新版 Edge 体验的 TLS 访问权限,请执行以下操作:

  1. 生成 TLS 证书和密钥作为 PEM 文件,不使用口令。例如:

    mykey.pem
    mycert.pem

    您可以通过多种方式生成 TLS 证书和密钥。例如,您可以执行以下命令来生成未签名的证书和密钥:

    openssl req -x509 -newkey rsa:4096 -keyout mykey.pem -out mycert.pem -days 365 -nodes -subj '/CN=localhost'
  2. 将密钥和证书文件复制到 /opt/apigee/customer/application/edge-management-ui 目录。如果该目录不存在,请创建它。
  3. 确保证书和密钥归“apigee”用户所有:

    chown apigee:apigee /opt/apigee/customer/application/edge-management-ui/*.pem
  4. 修改用于安装新版 Edge 体验的配置文件,以设置以下 TLS 属性:

    # Set to https to enable TLS.
    MANAGEMENT_UI_SCHEME=https 
    # Do NOT terminate TLS on a load balancer.
    MANAGEMENT_UI_TLS_OFFLOAD=n
    
    # Specify the key and cert. 
    MANAGEMENT_UI_TLS_KEY_FILE=/opt/apigee/customer/application/edge-management-ui/mykey.pem
    MANAGEMENT_UI_TLS_CERT_FILE=/opt/apigee/customer/application/edge-management-ui/mycert.pem
    
    # Leave these properties set to the same values as when you installed the New Edge experience:
    MANAGEMENT_UI_PUBLIC_URIS=$MANAGEMENT_UI_SCHEME://$MANAGEMENT_UI_IP:$MANAGEMENT_UI_PORT
    SHOEHORN_SCHEME=http
  5. 执行以下命令以配置 TLS:

    /opt/apigee/apigee-service/bin/apigee-service edge-management-ui configure-ssl -f configFile

    其中,configFile 是配置文件的名称。

    该脚本会重启新版 Edge 体验。

  6. 运行以下命令以设置并重启 shoehorn:

    /opt/apigee/apigee-service/bin/apigee-service edge-ui setup -f configFile
    /opt/apigee/apigee-service/bin/apigee-service edge-ui restart

    重启后,新版 Edge 体验支持通过 HTTPS 进行访问。 如果您在启用 TLS 后无法登录新版 Edge 体验,请清除浏览器缓存,然后尝试重新登录。

在负载均衡器上进行 TLS 终结时配置新版 Edge 体验

如果您有负载均衡器将请求转发到新版 Edge 体验,则可以选择在负载均衡器上终止 TLS 连接,然后让负载均衡器通过 HTTP 将请求转发到新版 Edge 体验:

在负载均衡器上终止 TLS

此配置受支持,但您需要相应地配置负载均衡器和新版 Edge 体验。

如需在 TLS 在负载均衡器上终止时配置新版 Edge 体验,请执行以下操作:

  1. 修改用于安装新版 Edge 体验的配置文件,以设置以下 TLS 属性:

    # Set to https to enable TLS
    MANAGEMENT_UI_SCHEME=https
    # Terminate TLS on a load balancer
    MANAGEMENT_UI_TLS_OFFLOAD=y
    # Set to the IP address or DNS name of the load balancer.
    MANAGEMENT_UI_IP=LB_IP_DNS
    # Set to the port number for the load balancer and New Edge experience.
    # The load balancer and the New Edge experience must use the same port number.
    MANAGEMENT_UI_IP=3001
    
    # Leave these properties set to the same values as when you installed the New Edge experience:
    MANAGEMENT_UI_PUBLIC_URIS=$MANAGEMENT_UI_SCHEME://$MANAGEMENT_UI_IP:$MANAGEMENT_UI_PORT
    SHOEHORN_SCHEME=http
    

    如果您设置了 MANAGEMENT_UI_TLS_OFFLOAD=y,请省略 MANAGEMENT_UI_TLS_KEY_FILE 和 MANAGEMENT_UI_TLS_CERT_FILE.。它们会被忽略,因为对新版 Edge 体验的请求是通过 HTTP 传入的。

  2. 执行以下命令以配置 TLS:

    /opt/apigee/apigee-service/bin/apigee-service edge-management-ui configure-ssl -f configFile

    其中,configFile 是配置文件的名称。

    该脚本会重启新版 Edge 体验。

  3. 运行以下命令以设置并重启 shoehorn:

    /opt/apigee/apigee-service/bin/apigee-service edge-ui setup -f configFile
    /opt/apigee/apigee-service/bin/apigee-service edge-ui restart

    重启后,新版 Edge 体验支持通过 HTTPS 进行访问。 如果您在启用 TLS 后无法登录新版 Edge 体验,请清除浏览器缓存,然后尝试重新登录。

在新版 Edge 体验中停用 TLS

如需在新版 Edge 体验中停用 TLS,请执行以下操作:

  1. 修改用于安装新版 Edge 体验的配置文件,以设置以下 TLS 属性:

    # Set to http to disable TLS.
    MANAGEMENT_UI_SCHEME=http
    
    # Only if you had terminated TLS on a load balancer,
    # reset to the IP address or DNS name of the New Edge experience.
    MANAGEMENT_UI_IP=newue_IP_DNS
    
  2. 执行以下命令以停用 TLS:

    /opt/apigee/apigee-service/bin/apigee-service edge-management-ui configure-ssl -f configFile

    其中,configFile 是配置文件的名称。

    该脚本会重启新版 Edge 体验。

  3. 运行以下命令以设置并重启 shoehorn:

    /opt/apigee/apigee-service/bin/apigee-service edge-ui setup -f configFile
    /opt/apigee/apigee-service/bin/apigee-service edge-ui restart

    现在,您可以通过 HTTP 访问新版 Edge 体验。 如果您在停用 TLS 后无法登录新版 Edge 体验,请清除浏览器缓存,然后尝试重新登录。