PowerFlex 3.X: Nie można załadować internetowego interfejsu użytkownika serwera prezentacji

摘要: Nie można załadować internetowego interfejsu użytkownika serwera prezentacji z powodu wielu rozszerzeń alternatywnych nazw podmiotów (SAN) obecnych w certyfikacie.

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

症状

Usługa serwera prezentacji uruchamia się, ale strona internetowa nie ładuje początkowego ekranu logowania.

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

Dziennik serwera prezentacji zawiera następujące błędy:

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

Uruchom następujące polecenie, aby sprawdzić, czy serwer prezentacji używa wielu wpisów sieci SAN. Można to uruchomić dla certyfikatu, który klient odnawia lub zastępuje, a który ma wiele wpisów rozszerzenia sieci 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.

 

 

Wpływ

Niezaładowanie sieciowego interfejsu użytkownika serwera mgmt uniemożliwia zarządzanie klastrem PowerFlex za pośrednictwem interfejsu użytkownika (UI). Obniża to łatwość zarządzania i obsługi systemu PowerFlex. 

原因

Problem występuje, gdy struktura Jetty, w szczególności klasa bazowa org.eclipse.jetty.util.ssl.SslContextFactory próbuje przetworzyć wiele certyfikatów w magazynie kluczy, operacji, do której nie jest przeznaczony do obsługi. Zasadniczo wersja serwera prezentacji, której dotyczy problem, nie jest przystosowana do zarządzania certyfikatami zawierającymi więcej niż jeden wpis rozszerzenia alternatywnej nazwy podmiotu (SAN), co prowadzi do niepowodzenia w przypadku napotkania takich certyfikatów. 

解决方案

    1. Korzystaj z certyfikatu, który zawiera tylko jeden wpis rozszerzenia nazwy alternatywnej podmiotu (SAN). Jest to zgodne z obecnymi ograniczeniami serwera zarządzającego i powinno umożliwić normalne działanie.
    2. Uaktualnij serwer zarządzania do wersji 3.6.1. Ta wersja zawiera ulepszoną obsługę wielu wpisów rozszerzeń SAN, co eliminuje konieczność dostosowywania certyfikatów.

     

    Wersje, których dotyczy problem

    PowerFlex 3.5.x

    PowerFlex 3.6.0.x

    Naprawiono w wersji

    PowerFlex 3.6.1

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