PowerFlex-esityspalvelimen verkkokäyttöliittymä ei lataudu
Summary: Esityspalvelimen verkkokäyttöliittymä ei lataudu, koska varmenteessa on useita SUBJECT Alternative Name (SAN) -laajennuksia.
Symptoms
Versiot, joita ongelma koskee
- PowerFlex 3.5.x
- PowerFlex 3.6.0.x
Esityspalvelinpalvelu käynnistyy, mutta verkkosivu ei lataa alkuperäistä kirjautumisnäyttöä.
[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)
Esityspalvelimessa /opt/emc/scaleio/mgmt-server/logs/scaleio.log näkyy seuraavat virheet:
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)
Tarkista seuraavalla komennolla, käyttääkö esityspalvelin useita SAN-merkintöjä. Se voidaan suorittaa sen varmenteen mukaan, jota asiakas uusii tai jolla on useita SAN-laajennusmerkintöjä.
[root@host1 /]# openssl x509 -noout -text -in | grep -A1 -i 'Subject Alternative Name'
X509v3 Subject Alternative Name:
DNS:host1, DNS:host1.cn
Cause
Vaikutus
Jos verkkokäyttöliittymää ei ladata mgmt-serveriä varten, PowerFlex-klusteria ei voi hallita käyttöliittymässä. Tämä vaikeuttaa PowerFlex-järjestelmän hallintaa.
Syy
Ongelma ilmenee, kun Levyty-kehys eli base class org.org.orgty.util.ssl.SslContextFactory yrittää käsitellä useita varmenteita KeyStoressa. Tätä toimintoa ei ole suunniteltu käsittelemään.
Esityspalvelimen versiolla, jota ongelma koskee, ei ole sertifikaatteja, joissa on useampi kuin yksi Subject Alternative Name (SAN) -laajennusmerkintä.
Tämä aiheuttaa virheen, kun se havaitsee tällaisia varmenteita.
Resolution
Ongelma on korjattu PowerFlex 3.6.1 -versiossa ja uudemmissa versioissa.
Kiertotapa
- Käytä varmennetta, joka sisältää yhden Subject Alternative Name (SAN) -tunnistemerkinnän. Tämä vastaa mgmt-palvelimen nykyisiä rajoituksia. Sen pitäisi sallia normaali toiminta.
- Päivitä mgmt-server versioon 3.6.1. Tämä versio sisältää parannetun tuen useille SAN-laajennusmerkinnöille, eikä varmenteita tarvitse muuttaa.