PowerFlex 3.X: Die Web-UI des Präsentationsservers kann nicht geladen werden

摘要: Die Web-UI des Präsentationsservers kann aufgrund mehrerer SAN-Erweiterungen (Subject Alternative Name) nicht geladen werden, die im Zertifikat vorhanden sind.

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

症状

Der Präsentationsserver-Service wird gestartet, aber die Webseite kann den ersten Anmeldebildschirm nicht laden.

[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)

Das Präsentationsserver-Protokoll zeigt die folgenden Fehler an:

/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)

Führen Sie den folgenden Befehl aus, um zu überprüfen, ob der Präsentationsserver mehrere SAN-Einträge verwendet. Dies kann für das Zertifikat ausgeführt werden, das der Kunde erneuert oder ersetzt und das mehrere SAN-Erweiterungseinträge enthält.

[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.

 

 

Auswirkungen

Wenn die Webnutzeroberfläche für den Managementserver nicht geladen werden kann, kann der PowerFlex-Cluster nicht über die Benutzeroberfläche (UI) gemanagt werden. Dies beeinträchtigt die Einfachheit des Managements und des Betriebs des PowerFlex-Systems. 

原因

Das Problem tritt auf, wenn das Jetty-Framework, insbesondere die Basisklasse, org.eclipse.jetty.util.ssl.SslContextFactory Versucht, mehrere Zertifikate in einem KeyStore zu verarbeiten, ein Vorgang, für den er nicht ausgelegt ist. Im Wesentlichen ist die betroffene Präsentationsserverversion nicht in der Lage, Zertifikate zu verwalten, die mehr als einen SAN-Erweiterungseintrag (Subject Alternative Name) enthalten, was zu einem Fehler führt, wenn sie auf solche Zertifikate trifft. 

解决方案

    1. Verwenden Sie ein Zertifikat, das nur einen einzigen Eintrag für die SAN-Erweiterung (Subject Alternative Name) enthält. Dies entspricht den aktuellen Einschränkungen des Managementservers und sollte einen normalen Betrieb ermöglichen.
    2. Aktualisieren Sie den mgmt-server auf Version 3.6.1. Diese Version bietet eine verbesserte Unterstützung für mehrere SAN-Erweiterungseinträge, sodass Sie Ihre Zertifikate nicht mehr anpassen müssen.

     

    Betroffene Versionen

    PowerFlex 3.5.x

    PowerFlex 3.6.0.x

    Behoben in Version

    PowerFlex 3.6.1

    文章属性
    文章编号: 000215758
    文章类型: Solution
    上次修改时间: 10 12月 2025
    版本:  5
    从其他戴尔用户那里查找问题的答案
    支持服务
    检查您的设备是否在支持服务涵盖的范围内。