ECS: Isäntäotsikon lisäämisen estäminen ECS 3.8.0:ssa ja uudemmissa Management API 403 -virheiden ja Grafana-käyttöliittymän käyttöiän ylittämisen välttämiseksi
Summary: ECS 3.8.0.x:stä alkaen on korjattu tietoturvaongelma, joka liittyy isäntäotsikon lisäämiseen (katso STORAGE-27164:n julkaisutiedot).
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.
Instructions
Mikä on isäntäotsikon injektio?
- Sovellus luottaa käyttäjän antamaan HTTP-isäntäotsikkoon ja käyttää käyttäjän antamaa isäntäotsikkoa ohjatakseen toiselle sivulle.
- Hyökkääjä voi hyödyntää sitä muuttamalla HTTP-isäntäotsikon haitalliseksi isäntänimeksi ja ohjaamalla käyttäjän haitalliselle verkkosivulle.
Huomautus: Tämä vaikuttaa vain hallinnan ohjelmointirajapintakutsuihin välityspalvelimen tai kuormituksentasauksen kautta. Se ei vaikuta tietotoimintoihin.
Mitä muutoksia ECS 3.8.0.x -versiosta alkaen on tehtävä?
Osana korjausta toteutetaan uusi joukko sovellusliittymiä, joiden avulla sallittujen palvelinnimien luettelo voidaan asettaa tai poistaa. Saapuvien pyyntöjen isäntäotsikon arvo tarkistetaan kyseistä luetteloa vasten. Pyyntö hylätään, jos luettelossa ei ole isäntäotsikon arvoa.
Alla on joukko uusia REST-ohjelmointirajapintoja, jotka on otettu käyttöön hyväksyttyjen palvelinten rekisteröinnin ja luettelon hallinnan kannalta.
| Resurssin nimi | Kuvaus |
|---|---|
GET /acceptedservernames/ |
Hakee luettelon hyväksytyistä hallintapalvelinten nimistä |
POST /acceptedservernames/ |
Luo tai korvaa hyväksyttyjen hallintapalvelinten nimiluettelon |
PUT /acceptedservernames/ |
Päivitä hyväksyttyjen hallintapalvelinten nimiluettelo. |
DELETE /acceptedservernames/ |
Poistaa hyväksyttyjen hallintapalvelinten nimiluettelon |
Missä olosuhteissa tämä vaikuttaa sinuun?
Käyttötapaukset ECS:ssä hyväksyttyjen palvelinten luettelon määrittämisratkaisun toteuttamiseksi:
| Päivittäminen alk. | Päivittäminen tai asentaminen | Korjaus |
|---|---|---|
| ECS 3.7 ja aiemmat versiot | ECS 3.8.0.x |
|
| ECS 3.7 ja aiemmat versiot | ECS 3.8.1.x tai uudempi |
|
| ECS 3.8.0.x | ECS 3.8.1.x tai uudempi |
|
Mikä osoittaa, että olet kohdannut ongelman?
- Kaikki hallintakirjautumisen ohjelmointirajapinnat epäonnistuvat 403-esto-tilassa, kun uusi asennus on tehty tai päivitys 3.8.0.x-versioon aiemmista 3.8-versioista.
- Grafana-kojelauta ei ehkä myöskään ole käytettävissä.
Mitä virheitä lokeissa näkyy ECS:ssä?
"GET /login HTTP/1.1" 403 error is seen in /opt/storageos/logs/nginx/access.log and /opt/storageos/logs/objcontrolsvc.log on nodes API calls are made against.
Ongelman yhteenveto (3.8.0.x-päivityksen tai uudemman päivityksen jälkeen)
- Päivitä ECS xDoctor -ohjelmisto uusimpaan versioon.
- Lisää ulkoisten IP-osoitteiden luettelo.
- Ulkoisia palvelimia ei tarvitse rekisteröidä tekemällä Management API -kutsuja suoraan ECS-solmuihin tai käyttämällä ECS-solmujen IP-osoitteita, koska yhteys olisi jo onnistunut. Alla olevat ohjeet vaaditaan vain, jos yhteys kulkee välityspalvelimen tai kuormituksentasauksen kautta. Siksi kaikki välityspalvelimet ja/tai kuormituksentasaukset on lisättävä hallintapalvelinten nimien hyväksymisluetteloon.
1 x lääkärin päivitys
- Päivitä ECS xDoctor -ohjelmisto uusimpaan saatavilla olevaan versioon.
- Tarkista järjestelmässä käynnissä oleva xDoctor-versio. Jos versio on 4.8–87.0 tai uudempi, siirry vaiheeseen "Lisää ulkoisten IP-osoitteiden luettelo". Jos ei ole, toimi seuraavien ohjeiden mukaisesti.
Komento:
# sudo xdoctor --version
Esimerkki:
admin@node1:~> sudo xdoctor --version 4.8-87.0
- Kirjaudu Dellin tukisivustoon, muodosta yhteys suoraan tähän ladattavaan ECS-lataussijaintiin, etsi xDoctor avainsanalla hakupalkki ja lataa linkki napsauttamalla xDoctor 4.8-87.0 RPM. Voit tarkastella julkaisutietoja muodostamalla yhteyden suoraan ECS-tuotesivulle ja valitsemalla sivupalkista Käyttöoppaat ja asiakirjat, josta niiden pitäisi olla ladattavissa.
- Kun RPM on ladattu, lataa tiedosto millä tahansa SCP-etäohjelmalla ensimmäisen ECS-solmun hakemistoon /home/admin.
- Kun lataus on valmis, muodosta SSH-yhteys ECS-järjestelmän ensimmäiseen solmuun admin-käyttäjänä.
- Päivitä kaikkien solmujen xDoctor uuteen versioon.
Komento:
# sudo xdoctor --upgrade --local=/home/admin/xDoctor4ECS-4.8-87.0.noarch.rpmEsimerkki:
admin@ecs-n1:~> sudo xdoctor --upgrade --local=/home/admin/xDoctor4ECS-4.8-87.0.noarch.rpm 2022-07-04 07:41:49,209: xDoctor_4.8-83.0 - INFO : xDoctor Upgrader Instance (1:SFTP_ONLY) 2022-07-04 07:41:49,210: xDoctor_4.8-83.0 - INFO : Local Upgrade (/home/admin/xDoctor4ECS-4.8-84.0.noarch.rpm) 2022-07-04 07:41:49,226: xDoctor_4.8-83.0 - INFO : Current Installed xDoctor version is 4.8-86.0 2022-07-04 07:41:49,242: xDoctor_4.8-86.0 - INFO : Requested package version is 4.8-84.0 2022-07-04 07:41:49,242: xDoctor_4.8-86.0 - INFO : Updating xDoctor RPM Package (RPM) 2022-07-04 07:41:49,293: xDoctor_4.8-86.0 - INFO : - Distribute package 2022-07-04 07:41:50,759: xDoctor_4.8-86.0 - INFO : - Install new rpm package 2022-07-04 07:42:04,401: xDoctor_4.8-86.0 - INFO : xDoctor successfully updated to version 4.8-87.0
- Jos ympäristö on usean kehikon VDC, uusi xDoctor-paketti on asennettava kunkin kehikon ensimmäiseen solmuun. Tarkista kehikkojen ensimmäiset solmut seuraavalla komennolla. Tässä tapauksessa neljä telinettä ja neljä telineen ensisijaista asemaa on korostettu
- Etsi kehikkojen ensisijaiset solmut (korostettu lihavoitu alla).
Komento:
# svc_exec -m "ip address show private.4 |grep -w inet"Esimerkki:
admin@ecsnode1~> svc_exec -m "ip address show private.4 |grep -w inet" svc_exec v1.0.2 (svc_tools v2.1.0) Started 2021-12-20 14:03:33 Output from node: r1n1 retval: 0 inet 169.254.1.1/16 brd 169.254.255.255 scope global private.4 Output from node: r2n1 retval: 0 inet 169.254.2.1/16 brd 169.254.255.255 scope global private.4 Output from node: r3n1 retval: 0 inet 169.254.3.1/16 brd 169.254.255.255 scope global private.4 Output from node: r4n1 retval: 0 inet 169.254.4.1/16 brd 169.254.255.255 scope global private.4
- Kopioi paketti järjestelmän ensimmäisestä solmusta (R1N1) muiden kehikkojen ensisijaisiin solmuihin kuten alla:
Esimerkki:
admin@ecs-n1: scp xDoctor4ECS-4.8-87.0.noarch.rpm 169.254.2.1:/home/admin/ xDoctor4ECS-4.8-84.0.noarch.rpm 100% 32MB 31.9MB/s 00:00 admin@ecsnode1~> scp xDoctor4ECS-4.8-87.0.noarch.rpm 169.254.3.1:/home/admin/ xDoctor4ECS-4.8-84.0.noarch.rpm 100% 32MB 31.9MB/s 00:00 admin@ecsnode1~> scp xDoctor4ECS-4.8-87.0.noarch.rpm 169.254.4.1:/home/admin/ xDoctor4ECS-4.8-87.0.noarch.rpm 100% 32MB 31.9MB/s 00:00 admin@ecsnode1~>
- Suorita edellä olevan vaiheen 1 mukaisesti sama xDoctor-asennuskomento jokaisessa aiemmin tunnistetussa kehikon ensisijaisessa solmussa.
Komento:
# sudo xdoctor --upgrade --local=/home/admin/xDoctor4ECS-4.8-87.0.noarch.rpm
2-A Lisää ulkoisten IP-osoitteiden luettelo.
- Hallintakäyttäjän on suoritettava tämä toiminto suojauksen järjestelmänvalvojan roolissa. Alla olevassa esimerkissä käytetään pääkäyttäjää , koska sillä on myös suojauksen hallintaominaisuus.
- Se voidaan tehdä missä tahansa ECS VDC:n solmussa.
- Liitossa, jossa on useita VDC:itä, se on suoritettava, kun kaikki liitoksen VDC:t on päivitetty. Menettelyä voidaan sitten soveltaa kuhunkin VDC: hen.
-
HUOMAUTUS: Sallittujen luettelo replikoidaan organisaation ulkopuolisiin virtuaalikoneisiin, joten sallittujen luettelon merkintöjen lisääminen yhteen klusteriin replikoi merkinnät toiseen klusteriin ja korvaa toiseen klusteriin jo lisätyt tiedot
- Työkalu heittää "401 - Valtuuttamaton" -poikkeuksen, jos käyttäjä ei ole suojauksen järjestelmänvalvoja tai jos käytetään vääriä tunnistetietoja.
- Valmistele luottamusluetteloon lisättävien palvelinten nimien (IP, isäntänimi ja FQDN) luettelo. Yhdistä luettelo tiedostoksi, jonka jokaisella rivillä on yksi palvelimen nimi. Jos hallintaverkko on erotettu toisistaan, myös hallintasolmujen täydellinen toimialuenimi on lisättävä luottamusluetteloon. Monet asiakkaat saattavat joutua lisäämään solmujen nimet. Molemmat käyttävät lyhyesti svc_exec isäntänimeä -s ja pitkät käyttävät isäntänimeä svc_exec
Voit tarkistaa verkon erottamisen hallintaa varten suorittamalla alla olevan haun ja etsimällä "mgmt" korostettuna.
Komento:
# getrackinfo -n
Esimerkki:
#getrackinfo -n Named networks ============== Node ID Network Ip Address Netmask Gateway VLAN Interface 1 mgmt 1xx.xxx.xx.xxx 255.25x.xxx.x 19x.xxx.xx.x xxx public 1 mgmt 1xx.xxx.xx.xxx 255.25x.xxx.x 19x.xxx.xx.x xxx public 1 mgmt 1xx.xxx.xx.xxx 255.25x.xxx.x 19x.xxx.xx.x xxx public 1 mgmt 1xx.xxx.xx.xxx 255.25x.xxx.x 19x.xxx.xx.x xxx public 1 mgmt 1xx.xxx.xx.xxx 255.25x.xxx.x 19x.xxx.xx.x xxx public 1 mgmt 1xx.xxx.xx.xxx 255.25x.xxx.x 19x.xxx.xx.x xxx public
Alla oleva esimerkki, jossa on palvelinten nimiluettelo (korvaa todellisilla).
# cat trust.server.list ecs1-n1 ecs1-n1.dell.com ecs1-n2 ecs1-n2.dell.com ecs1-n3 ecs1-n3.dell.comecs1-n4 ecs1-n4.dell.comecs1-n5 ecs1-n5.dell.comLoad_balancer1_IPLoad_balancer1_HostnameLoad_balancer1_FQDNLoad_balancer2_IPLoad_balancer2_HostnameLoad_balancer2_FQDN
- Tarkista lokeista palvelimen nimi mahdollisten 403-virheiden varalta:
Komento:
svc_log -f 'ERROR HostHeaderAcceptListFilter.java' -sr objcontrolsvc -start '2 hours ago'
Esimerkki:
# svc_log -f 'ERROR HostHeaderAcceptListFilter.java' -sr objcontrolsvc -start '2 hours ago'
svc_log v1.0.31 (svc_tools v2.13.1) Started 2023-10-10 18:00:11
Running on nodes: <All nodes>
Time range: 2023-10-13 17:00:00 - 2023-10-13 18:11:47
Filter string(s): 'ERROR HostHeaderAcceptListFilter.java'
Show filename(s): True
Show nodename(s): True
Search reclaim logs (if any): False
169.254.1.1 objcontrolsvc.log 2023-10-10T17:00:07,188 [qtp47151359-4412] ERROR HostHeaderAcceptListFilter.java (line 81) The host header server name didn't match the accepted list ecsdev1-m1
169.254.1.1 objcontrolsvc.log 2023-10-10T17:00:38,609 [qtp47151359-4386] ERROR HostHeaderAcceptListFilter.java (line 81) The host header server name didn't match the accepted list ecsdev1-m1
169.254.1.1 objcontrolsvc.log 2023-10-10T17:01:07,499 [qtp47151359-4310] ERROR HostHeaderAcceptListFilter.java (line 81) The host header server name didn't match the accepted list ecsdev1-m1
169.254.1.2 objcontrolsvc.log 2023-10-10T17:05:01,743 [qtp1754883736-3393] ERROR HostHeaderAcceptListFilter.java (line 81) The host header server name didn't match the accepted list ecsdev1-m2
169.254.1.2 objcontrolsvc.log 2023-10-10T17:05:01,756 [qtp1754883736-3397] ERROR HostHeaderAcceptListFilter.java (line 81) The host header server name didn't match the accepted list ecsdev1-m2
169.254.1.3 objcontrolsvc.log 2023-10-10T17:30:01,533 [qtp1289718177-2883] ERROR HostHeaderAcceptListFilter.java (line 81) The host header server name didn't match the accepted list ecsdev1-m3
169.254.1.3 objcontrolsvc.log 2023-10-10T17:30:01,546 [qtp1289718177-2944] ERROR HostHeaderAcceptListFilter.java (line 81) The host header server name didn't match the accepted list ecsdev1-m3
Alla oleva esimerkki, jossa on palvelinten nimiluettelo (korvaa todellisilla).
# cat trust.server.list ecs1-n1 ecs1-n1.dell.com ecs1-n2 ecs1-n2.dell.com ecs1-n3 ecs1-n3.dell.comecs1-n4 ecs1-n4.dell.comecs1-n5 ecs1-n5.dell.com ecsdev1-m1 ecsdev1-m2 ecsdev1-m3Load_balancer1_IP Load_balancer1_HostnameLoad_balancer1_FQDNLoad_balancer2_IPLoad_balancer2_HostnameLoad_balancer2_FQDN
Lisää luotettuja palvelimia mgmt_user> mukana toimitetun <luettelon avulla. Käyttäjää pyydetään antamaan mgmt_user salasana, antamaan salasana ja jatkamaan painamalla Enter-näppäintä.
Komento:
svc_param asn add -u <mgmt_user> -p -f <server.list>
Esimerkki:
# svc_param asn add -u root -p -f trust.server.list Password: svc_param v1.1.3 (svc_tools v2.7.0) Started 2022-11-08 19:27:16 add trusted servers successfully!
- Hae luotettujen palvelinten luettelo. Luettelo voidaan joko a) tulostaa näytölle, jotta se voidaan tarkistaa nopeasti, onko se lyhyt, tai b) tallentaa tiedostoon varmuuskopiointia tai tarkastusta varten.
- Tulosta tulos näytölle. Saat kehotteen antaa salasana. Jatka painamalla Enter-näppäintä.
Komento:
svc_param asn list -u <mgmt_user> -p
Esimerkki:
# svc_param asn list -u root -p
Password:
svc_param v1.1.3 (svc_tools v2.7.0) Started 2023-10-10 19:32:58
Found 19 trusted servers:
Load_balancer1_FQDN
Load_balancer1_Hostname
Load_balancer1_IP
Load_balancer2_FQDN
Load_balancer2_Hostname
Load_balancer2_IP
ecs-n1
ecs-n1.nas2008.com
ecs-n2
ecs-n2.nas2008.com
ecs-n3
ecs-n3.nas2008.com
ecs-n4
ecs-n4.nas2008.com
ecs-n5
ecs-n5.nas2008.com
ecsdev1-m1
ecsdev1-m2
ecsdev1-m3
- Tallenna tulos tiedostoon. Saat kehotteen antaa salasana. Jatka painamalla Enter-näppäintä.
Komento:
svc_param asn list -u <mgmt_user> -p -o <output file>
Esimerkki:
# svc_param asn list -u root -p -o server.list.backup Password: svc_param v1.1.3 (svc_tools v2.7.0) Started 2022-10-10 19:38:05 Found 19 trusted servers: Please find the result in /home/admin/server.list.backup # cat /home/admin/server.list.backup Load_balancer1_FQDN Load_balancer1_Hostname Load_balancer1_IP Load_balancer2_FQDN Load_balancer2_Hostname Load_balancer2_IP ecs-n1 ecs-n1.nas2008.com ecs-n2 ecs-n2.nas2008.com ecs-n3 ecs-n3.nas2008.com ecs-n4 ecs-n4.nas2008.com ecs-n5 ecs-n5.nas2008.com ecsdev1-m1 ecsdev1-m2 ecsdev1-m3
Huomautus: Siinä tapauksessa, että kuormituksen tasausta EI käytetä ja silti se saa saman
nginx 403 Forbidden virhe ECS-käyttöliittymässä, tarkista, käyttääköasiakas VLAN-verkkoa. Erottaminen käyttämällä getrackinfo -n Komento vaihetta kohden 1. Jos näin on, lisää asiakasverkon DNS-hallintanimet ja hallinnan IP-osoitteet kaikkien solmujen Trust Server -luetteloon.
(Kuten alla)
Esimerkki:
# cat trust.server.list 10.x.x.1 10.x.x.2 10.x.x.3 10.x.x.4 10.x.x.5 10.x.x.6 test-n1.domain.example test-n2.domain.example test-n3.domain.example test-n4.domain.example test-n5.domain.example test-n5.domain.example
2-B Poista ulkoisten IP-osoitteiden luettelo.
Jos sinun on poistettava merkintöjä luotetusta luettelosta, sinua pyydetään antamaan salasana ja jatka painamalla Enter-näppäintä. A server.to.remove.list pitäisi luoda.
Esimerkki:
# cat server.list.to.remove Load_balancer1_Hostname Load_balancer2_IPPoistokomento:
svc_param asn remove -u <mgmt_user> -p -f <server.to.remove.list>(Sinua pyydetään antamaan salasana, jatka painamalla Enter.)
Esimerkki:
# svc_param asn remove -u root -p -f server.list.to.remove Password: svc_param v1.1.3 (svc_tools v2.7.0) Started 2022-11-08 19:42:00 remove trusted servers successfully!
Näytä merkinnät uudelleen vahvistaaksesi merkintöjen poistamisen.
svc_param asn list -u root -p(Sinua pyydetään antamaan salasana, jatka painamalla Enter.)
Esimerkki:
# svc_param asn list -u root -p
Password:
svc_param v1.1.3 (svc_tools v2.7.0) Started 2022-11-08 19:43:19
Found 4 trusted servers:
Load_balancer1_FQDN
Load_balancer1_IP
Load_balancer2_FQDN
Load_balancer2_Hostname
Additional Information
Lisätietoja tästä muutoksesta on seuraavissa Dellin tukisivustossa olevissa asiakirjoissa:
- ECS 3.8.0:n tai ECS 3.8.1:n julkaisutiedot
- ECS 3.8.0:n tai ECS 3.8.1:n hallintaopas
- ECS 3.8.0:n tai ECS 3.8.1:n suojausopas
Affected Products
ECS, ECS Appliance, Elastic Cloud StorageArticle Properties
Article Number: 000205031
Article Type: How To
Last Modified: 14 Nov 2024
Version: 30
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.