Impossibile caricare l'interfaccia utente web del server di presentazione PowerFlex

摘要: L'interfaccia utente web di Presentation Server non si carica a causa di più estensioni SAN (Subject Alternative Name) presenti nel certificato.

本文适用于 本文不适用于 本文并非针对某种特定的产品。 本文并非包含所有产品版本。

症状

Versioni interessate

  • PowerFlex 3.5.x
  • PowerFlex 3.6.0.x

Viene avviato il servizio del server delle presentazioni, ma la pagina web non carica la schermata di accesso iniziale.
[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)


Il server di presentazione /opt/emc/scaleio/mgmt-server/logs/scaleio.log mostra i seguenti errori:

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)


Eseguire il comando seguente per verificare se il server delle presentazioni utilizza più voci SAN. Questa operazione può essere eseguita a fronte del certificato che il cliente sta rinnovando o sostituendo con più voci di estensione SAN.

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

 

原因

Il server di presentazione, noto anche come mgmt-server, non supporta la gestione di più voci di estensione SAN (Subject Alternative Name). Questo problema può verificarsi quando i certificati del server di gestione, con diverse voci di estensione SAN, vengono rinnovati o sostituiti nella versione interessata.
 

Impatto
Il mancato caricamento dell'interfaccia utente web per il server di gestione comporta l'impossibilità di gestire il cluster PowerFlex tramite l'interfaccia utente. Ciò rende difficile la gestione del sistema PowerFlex. 

 

Root cause
Il problema si verifica quando il framework Jetty, la classe base org.eclipse.jetty.util.ssl.SslContextContext tenta di elaborare più certificati in un KeyStore. Si tratta di un'operazione che non è progettata per essere gestita.
La versione del server delle presentazioni interessata non è in grado di gestire i certificati che contengono più di una voce di estensione Subject Alternative Name (SAN).
In questo modo si verifica un errore quando rileva tali certificati. 

解决方案

    Questo comportamento è stato risolto in PowerFlex 3.6.1 e versioni successive.


    Soluzione alternativa

    1. Utilizzare un certificato che contiene una singola voce di estensione Subject Alternative Name (SAN). In questo modo si allinea alle limitazioni correnti del server di gestione. Dovrebbe consentire il normale funzionamento.
    2. Aggiornare il server di gestione alla versione 3.6.1. Questa versione include il supporto migliorato per più voci di estensione SAN e non è necessario regolare i certificati.
    文章属性
    文章编号: 000215758
    文章类型: Solution
    上次修改时间: 10 12月 2025
    版本:  5
    从其他戴尔用户那里查找问题的答案
    支持服务
    检查您的设备是否在支持服务涵盖的范围内。