PowerFlex 3.X: Falha ao carregar a IU da Web do servidor de apresentação

Summary: A IU da Web do Servidor de apresentação falha ao carregar devido a várias extensões de nome alternativo da entidade (SAN) presentes no certificado.

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Symptoms

O serviço do servidor de apresentação é iniciado, mas a página da Web falha ao carregar a tela de log-in inicial.

[root@host1 .config]# systemctl status mgmt-server.service

● mgmt-server.service - Scaleio MGMT Server
   Loaded: loaded (/etc/systemd/system/mgmt-server.service; enabled; vendor preset: disabled)
   Active: active (running) since Fri 2023-1-09 05:30:03 EST; 11s ago
Main PID: 29700 (java)
   CGroup: /system.slice/mgmt-server.service
    
        └─29700 /bin/java -Xmx4g -Dlog4j2.formatMsgNoLookups=true -Djna.tmpdir=/opt/emc/scaleio/mgmt-server/tmp -Djava.io.tmpdir=/opt/emc/scaleio/mg...
Dec 09 05:30:08 host1 java[29700]: at org.eclipse.jetty.server.AbstractConnector.doStart(AbstractConnector.java:320)
...
Dec 09 05:30:08 host1  java[29700]: at java.lang.Thread.run(Thread.java:750)

O log do servidor de apresentação mostra os seguintes erros:

/opt/emc/scaleio/mgmt-server/logs/scaleio.log:

Suppressed: com.google.common.util.concurrent.ServiceManager$FailedService: HttpdService [FAILED]
Caused by: java.lang.IllegalStateException: KeyStores with multiple certificates are not supported on the base class org.eclipse.jetty.util.ssl.SslContextFactory. (Use org.eclipse.jetty.util.ssl.SslContextFactory$Server or org.eclipse.jetty.util.ssl.SslContextFactory$Client instead)
    at org.eclipse.jetty.util.ssl.SslContextFactory.newSniX509ExtendedKeyManager(SslContextFactory.java:1288)
    at org.eclipse.jetty.util.ssl.SslContextFactory.getKeyManagers(SslContextFactory.java:1270)
    at org.eclipse.jetty.util.ssl.SslContextFactory.load(SslContextFactory.java:372)
    at org.eclipse.jetty.util.ssl.SslContextFactory.doStart(SslContextFactory.java:243)
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:73)
    at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169)
    at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:117)
    at org.eclipse.jetty.server.SslConnectionFactory.doStart(SslConnectionFactory.java:97)
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:73)
    at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169)
    at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:117)
    at org.eclipse.jetty.server.AbstractConnector.doStart(AbstractConnector.java:321)
    at org.eclipse.jetty.server.AbstractNetworkConnector.doStart(AbstractNetworkConnector.java:81)
    at org.eclipse.jetty.server.ServerConnector.doStart(ServerConnector.java:234)
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:73)
    at org.eclipse.jetty.server.Server.doStart(Server.java:401)
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:73)
    at com.emc.vxflexos.webui.backend.httpd.HttpdService.startUp(HttpdService.java:31)
    at com.google.common.util.concurrent.AbstractIdleService$DelegateService$1.run(AbstractIdleService.java:62)
    at com.google.common.util.concurrent.Callables$4.run(Callables.java:119)
    at java.lang.Thread.run(Thread.java:750)

Execute o comando a seguir para verificar se o servidor de apresentação usa várias entradas SAN. Isso pode ser executado no certificado que o cliente está renovando ou substituindo e que tenha várias entradas de extensão de SAN.

[root@host1 /]# openssl x509 -noout -text -in <location_of_new_signed_cert> | grep -A1 -i 'Subject Alternative Name'
            X509v3 Subject Alternative Name:
                DNS:host1, DNS:host1.

 

 

Impacto

A falha ao carregar a interface do usuário da Web para o servidor de gerenciamento resulta na incapacidade de gerenciar o cluster do PowerFlex por meio da interface do usuário (IU). Isso compromete a facilidade de gerenciamento e operação do sistema PowerFlex. 

Cause

O problema ocorre quando a estrutura Jetty, especificamente a classe base org.eclipse.jetty.util.ssl.SslContextFactory tenta processar vários certificados em um keystore, uma operação que não foi projetada para manipular. Essencialmente, a versão afetada do servidor de apresentação não está equipada para gerenciar certificados que contêm mais de uma entrada de extensão de nome alternativo da entidade (SAN), o que leva a uma falha quando encontra esses certificados. 

Resolution

    1. Utilize um certificado que contenha apenas uma única entrada de extensão de nome alternativo da entidade (SAN). Isso se alinha às limitações atuais do servidor de gerenciamento e deve permitir a operação normal.
    2. Faça upgrade do servidor mgmt para a versão 3.6.1. Essa versão inclui suporte aprimorado para várias entradas de extensão de SAN, aliviando a necessidade de ajustar seus certificados.

     

    Versões afetadas

    PowerFlex 3.5.x

    PowerFlex 3.6.0.x

    Correção feita na versão

    PowerFlex 3.6.1

    Article Properties
    Article Number: 000215758
    Article Type: Solution
    Last Modified: 10 Dec 2025
    Version:  5
    Find answers to your questions from other Dell users
    Support Services
    Check if your device is covered by Support Services.