ECS: Certificaten via LDAPS instellen en accepteren op ECS

Summary: Certificaten instellen en accepteren via LDAPS (Lightweight Directory Access Protocol Secure) op ECS.

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

LDAPS, ook bekend als Lightweight Directory Access Protocol (LDAP) over Secure Socket Layer (SSL) of Transport Layer Security (TLS), is een versleutelde verkeersvorm van LDAP-gebruik voor een Active Directory (AD)- of LDAP-server.

LDAPS is afhankelijk van een werkende LDAP-verbinding. Raadpleeg de ECS beheerhandleiding en dit kennisartikel ECS: Een AD- of LDAP-serververbinding instellen in de gebruikersinterface

Een essentieel onderdeel bij SSL- of TLS-communicatie zijn de certificaten. Zorg ervoor dat de gebruikte certificaten niet verlopen en ongeldig zijn. Dit is belangrijk om alle certificaten in de volledige certificaatketen correct te laten zijn.
Neem hierover contact op met uw netwerkteam.

Volg de volgende stappen om de LDAPS-certificaatketen te uploaden en LDAPS in te schakelen.
1. Een IP-adres voor knooppuntbeheer is een must om de LDAPS-certificaatketen te uploaden.
2. De hoofdgebruiker van de gebruikersinterface moet de LDAPS-certificaatketen uploaden naar de CLI-interface voor knooppuntbeheer.
3 bis. De LDAPS-certificaatketen in een XML-payload naar het IP-adres
voor knooppuntbeheer 3B. De LDAPS schakelt parameterinstelling in een XML-payload in naar het IP-adres
voor knooppuntbeheer 4. Gebruik LDAPS op de pagina ECS-authenticatieprovider, met een volledig gekwalificeerde domeinnaam (FQDN) in plaats van een IP-adres.
5. Test de aanmelding bij de domeingebruiker.

Voor stap 3
is een FQDN nodig in plaats van een IP-adres als:
"Met SSL-certificaten moet het certificaat een Subject Alternate Name (SAN) in het certificaat hebben om overeen te komen met de verbinding waarmee verbinding wordt gemaakt, het SAN krijgt alleen een DNS-naam te zien die overeenkomt met de configuratie op het ECS."

Controleer daarom of de pagina van de ECS-authenticatieprovider, het dialoogvenster URL van de server, een FQDN gebruikt in plaats van een IP-adres.
Voorbeeld: ldaps://ad-or-ldap-fqdn-domain.com

De bovenstaande stappen:

  1. Een IP-adres voor knooppuntbeheer is een must om de LDAPS-certificaatketen te uploaden.

Als u de ECS-instellingen met betrekking tot de LDAPS-certificaatinstellingen wilt onderzoeken, moet u eerst een IP-adres voor knooppuntbeheer aanschaffen om te gebruiken.
Als er een netwerkscheiding is voor het UI-beheer, geeft de "getrackinfo -n" de waarden "MGMT" weer. 

Gebruik het MGMT-IP-adres van de knooppunten. De scheiding van de replicatie en het datanetwerk is niet gerelateerd aan deze stappen:       

admin@node1:~> getrackinfo -n
Named networks
==============
Node ID       Network          Ip Address        Netmask            Gateway            VLAN               Interface
1            repl              10.xxx.xxx.11     255.255.254.0      xxx.xxx.xxx.xxx    14                 public
1            mgmt              10.xxx.xxx.21     255.255.254.0      xxx.xxx.xxx.xxx    13                 public
1            data              10.xxx.xxx.31     255.255.254.0      xxx.xxx.xxx.xxx    15                 public
2            repl              10.xxx.xxx.12     255.255.254.0      xxx.xxx.xxx.xxx    14                 public
2            mgmt              10.xxx.xxx.22     255.255.254.0      xxx.xxx.xxx.xxx    13                 public
2            data              10.xxx.xxx.32     255.255.254.0      xxx.xxx.xxx.xxx    15                 public
3            repl              10.xxx.xxx.13     255.255.254.0      xxx.xxx.xxx.xxx    14                 public
3            mgmt              10.xxx.xxx.23     255.255.254.0      xxx.xxx.xxx.xxx    13                 public
3            data              10.xxx.xxx.33     255.255.254.0      xxx.xxx.xxx.xxx    15                 public
4            repl              10.xxx.xxx.14     255.255.254.0      xxx.xxx.xxx.xxx    14                 public
4            mgmt              10.xxx.xxx.24     255.255.254.0      xxx.xxx.xxx.xxx    13                 public
4            data              10.xxx.xxx.34     255.255.254.0      xxx.xxx.xxx.xxx    15                 public


Als er geen netwerk-MGMT-scheiding op de VDC is, gebruikt u in plaats daarvan het openbare IP-adres van het knooppunt. 
 

OPMERKING: Netwerkscheiding heeft voorrang als het beheernetwerk bestaat.

In het volgende voorbeeld bestaat er geen MGMT in "getrackinfo -n"; Gebruik daarom het openbare IP-adres in getrackinfo als het IP-adres van het beheer voor de volgende stappen.

admin@node1:~> getrackinfo -n 
Named networks 
============== 
Node ID       Network          Ip Address        Netmask            Gateway            VLAN               Interface admin@node1:~>


admin@node1:~> getrackinfo
Node private      Node              Public                                  BMC
Ip Address        Id       Status   Mac                 Ip Address          Mac                 Ip Address          Node Name
===============   ======   ======   =================   =================   =================   =================   =========
192.1XX.2XX.1     1        MA       a4:bf:xx:xx:xx:74   10.xx.xx.1          a4:bf:xx:xx:xx      192.1XX.2XX.101     provo-red
192.1XX.2XX.2     2        SA       a4:bf:xx:xx:xx:c8   10.xx.xx.2          a4:bf:xx:xx:xx      192.1XX.2XX.102     sandy-red
192.1XX.2XX.3     3        SA       a4:bf:xx:xx:xx:e0   10.xx.xx.3          a4:bf:xx:xx:xx      192.1XX.2XX.103     orem-red
192.1XX.2XX.4     4        SA       a4:bf:xx:xx:xx:56   10.xx.xx.4          a4:bf:xx:xx:xx      192.168.219.104     ogden-red

2. De hoofdgebruiker van de gebruikersinterface moet de LDAPS-certificaatketen uploaden naar de CLI-interface voor knooppuntbeheer.

Gebruik het beheer-IP-adres dat is verkregen om het root-gebruikerstoken op te halen. Het rootgebruikerswachtwoord is vereist (of een UI-gebruiker met UI-administratorbevoegdheden):

curl -s -k -v -u <user> https://<NodeManagementIP>:4443/login 2>&1
Voorbeeld:
# curl -s -k -v -u root https://10.xxx.xxx.21:4443/login 2>&1
Enter host password for user 'root':
......

< HTTP/1.1 200 OK
< Date: Thu, 14 Jan 2021 13:51:24 GMT
< Content-Type: application/xml
< Content-Length: 93
< Connection: keep-alive
< X-SDS-AUTH-TOKEN: BAAcdWhGbnVRVjd1WlpmR0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxAgAC0A8=
< X-SDS-AUTH-USERNAME: root
< X-SDS-AUTH-MAX-AGE: 28800
<
* Connection #0 to host 10.xxx.xxx.21 left intact
<?xml version="1.0" encoding="UTF-8" standalone="yes"?><loggedIn><user>root</user></loggedIn>


Als de uitvoer niet "HTTP/1.1 200 OK" is, controleert u het wachtwoord en het IP-adres, dat wil zeggen als er een UI-beheernetwerkscheiding bestaat van de opdracht "getrackinfo -n.".

Maak met het root-gebruikerstoken een tokenvariabele. 

OPMERKING: Een geldig token moet mogelijk worden bijgewerkt als in een nieuwe CLI-sessie:

# export TOKEN='X-SDS-AUTH-TOKEN: BAAcdWhGbnVRVjd1WlpmR0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxAgAC0A8='
Als u de tokenwaarde wilt testen, voert u een curl Opdracht om de capaciteit te controleren: 

# curl -k -X GET -H "$TOKEN" https://10.xxx.xxx.21:4443/object/capacity | xmllint --format -        
% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                               Dload  Upload   Total   Spent    Left  Speed
100   176  100   176    0     0    249      0 --:--:-- --:--:-- --:--:--   250

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<cluster_capacity>
  <totalFree_gb>100657</totalFree_gb>
  <totalProvisioned_gb>447005</totalProvisioned_gb>
</cluster_capacity>

3 bis. De LDAPS-certificaatketen in een XML-payload naar het IP-adres

voor knooppuntbeheer 3B. De LDAPS maken parameterinstelling mogelijk. Accepteer de LDAPS-parameter in een XML-payload naar het IP-adres voor knooppuntbeheer.

Bij het bovenstaande wordt het root-gebruikerstoken gebruikt om curl-toegang te krijgen tot de ECS UI truststore waar het LDAPS-certificaat kan worden geüpload.
Raadpleeg de ECS beheerdershandleiding voor meer informatie over Add custom LDAP certificate.

Verkrijg de truststore-instellingen met een curl GET bevelen:

curl -s -k -X GET -H Content-Type:application/xml -H "$TOKEN" -H ACCEPT:application/xml https://<NodeManagementIP>:4443/vdc/truststore/settings | xmllint --format -
Voorbeeld: 
curl -s -k -X GET -H Content-Type:application/xml -H "$TOKEN" -H ACCEPT:application/xml https://10.xxx.xxx.21:4443/vdc/truststore/settings | xmllint --format -
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<truststore_settings>
  <accept_all_certificates>false</accept_all_certificates>
</truststore_settings>

In het bovenstaande voorbeeld is de truststore "accept_all_certificates" is ingesteld op false. Dit betekent dat er geen LDAPS-certificaten worden vertrouwd.

De "accept_all_certificates" term misschien dubbelzinnig, maar het is een vlag die nog steeds wordt gebruikt voor ECS om te bepalen of LDAPS-certificaten moeten worden gebruikt.
Een gebruiker wil dit mogelijk instellen op waar of onwaar, afhankelijk van zijn behoeften. De LDAPS-verbinding testen door deze in te stellen op true en de aanmelding van de gebruiker te testen kan de LDAPS-verbinding valideren.
 

OPMERKING: Elke keer dat een LDAPS-certificaat wordt geüpload of verwijderd uit de truststore, wordt het "accept_all_certificates" keert terug naar onwaar. Dus als je de truststore bewerkt, moet je de "accept_all_certificates" Achteraf terug naar de waarheid.


Maak een xml-bestand aan om de truststore-instellingen te wijzigen met behulp van een curl-opdracht met een xml-payload:

# sudo vi truststoresettings.xml
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<truststore_settings_changes>
<accept_all_certificates>true</accept_all_certificates>
</truststore_settings_changes>


# cat truststoresettings.xml | xmllint --format -
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<truststore_settings_changes>
  <accept_all_certificates>true</accept_all_certificates>
</truststore_settings_changes>

Als u accept_all_certificates wilt instellen op false, wijzigt u het payload-bestand in false in plaats van true en voert u de PUT-opdracht uit met behulp van het payload-bestand.

Voer een curl-opdracht uit met een xml-bestand als de payload met een curl PUT-opdracht:

# curl -s -k -X PUT -H Content-Type:application/xml -H "$TOKEN" -H ACCEPT:application/xml https://<NodeManagementIP>:4443/vdc/truststore/settings --data-binary @truststoresettings.xml


Om te controleren of "accept_all_certificates" is bijgewerkt, voert u de opdracht curl GET uit:

# curl -s -k -X GET -H Content-Type:application/xml -H "$TOKEN" -H ACCEPT:application/xml https://10.xxx.xxx.21:4443/vdc/truststore/settings  | xmllint --format -
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<truststore_settings_changes>
  <accept_all_certificates>true</accept_all_certificates>
</truststore_settings_changes>


Om de truststore te onderzoeken, niet alleen de truststore-instelling:

# curl -s -k -X GET -H Content-Type:application/xml -H "$TOKEN" -H ACCEPT:application/xml https://<NodeManagementIP>:4443/vdc/truststore | xmllint --format -


Een voorbeeld van een lege LDAP-certificaattruststore:

# curl -s -k -X GET -H Content-Type:application/xml -H "$TOKEN" -H ACCEPT:application/xml https://<NodeManagementIP>:4443/vdc/truststore | xmllint --format -
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<trusted_certificates/>


Er kunnen meerdere certificaten nodig zijn, omdat ECS de hele certificaatketen, het basiscertificaat, het CA-certificaat, het hostcertificaat, enzovoort vereist.
Om een certificaat toe te voegen aan de truststore, maak je een xml-bestand van het certificaat dat de gebruiker heeft. Een certificaat kan bestandstypen .pem, .crt, .cer, enzovoort zijn.

Als u de certificaten wilt uploaden naar ECS, moeten ze een xml-indeling hebben om als xml-payload te kunnen fungeren.

Non xml format bestand van het certificaat:

# cat cert.crt
-----BEGIN CERTIFICATE-----
MIIF1DCCA7ygAwIBAgIUdK2Ao2/45jYdQP0q6Dr1/ULmnc8wDQYJKoZIhvcNAQEL
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
HhrV5ezjYHY=
-----END CERTIFICATE-----


Het xml-formaat voor een curl add-opdracht:

# cat cert.xml | xmllint --format -
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<trusted_certificate_changes>
  <add>
    <certificate>-----BEGIN CERTIFICATE-----
MIIG2TCCBMGgAwIBAgITMQAAAATxxxxxxxxxxxxxxxxxxxxxxxxxhkiG9w0BAQsF
ADBbMRIwEAYKCZImiZPyLGQBGRYxxxxxxxxxxxxxxxxxxxxxxxxxFgR2aXRjMRMw
.......................
pkHgxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxzxhlGh2TaTC
xqz4T/sO4ggWs0Yz5nBmCZMDn6nxxxxxxrjX+ahXI=
-----END CERTIFICATE-----</certificate>
  <certificate>-----BEGIN CERTIFICATE-----
MIIG2TCCBMGgAwIBAgxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxqhkiG9w0BAQsF
ADBbMRIwEAYKCZImiZxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxZFgR2aXRjMRMw
EQYKCZImiZPyLGQBGRxxxxxxxxxxxxxxxxxxxxxxxxxxRW50ZXJwcmlzZS1DQTAe
Fw0yMDA2MDgwNzQwxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxIiMA0GCSqGSIb3DQEB
..........................
8wYIKWr2AqSKKxcBHxxxxxxxxxxxxxxxxxxxxxxxxxxxxx3ykeRMZJk7VpQDQDLN
feFI4rHZ4JOqDWttiHxxxxxxxxxxxxxxxxxxxxxxxxxxxhpXsxyjQIRvrtaCZVXz
GR7Na7Ah1o+9MWenMExxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxGQlsQ47nZE2YgV
-----END CERTIFICATE-----</certificate>
  </add>
</trusted_certificate_changes>


Upload de xml-indeling van de cert payload: 

curl -i -s -k -X PUT -H Content-Type:application/xml -H "$TOKEN" -H ACCEPT:application/xml https://10.xxx.xxx.21:4443/vdc/truststore --data-binary @cert.xml


Om te controleren of het certificaat is geüpload, voert u de GET-opdracht uit. Het eindregelteken in de ECS truststore is " .".

# curl -s -k -X GET -H Content-Type:application/xml -H "$TOKEN" -H ACCEPT:application/xml https://10.xxx.xxx.21:4443/vdc/truststore | xmllint --format -
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<trusted_certificates>
  <certificate>-----BEGIN CERTIFICATE-----
MIIG2TCCBMGgAwIBAgITMQAAAATxxxxxxxxxxxxxxxxxxxxxxxxxhkiG9w0BAQsF
ADBbMRIwEAYKCZImiZPyLGQBGRYxxxxxxxxxxxxxxxxxxxxxxxxxFgR2aXRjMRMw
.......................
pkHgxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxzxhlGh2TaTC
xqz4T/sO4ggWs0Yz5nBmCZMDn6nxxxxxxrjX+ahXI=
-----END CERTIFICATE-----</certificate>
  <certificate>-----BEGIN CERTIFICATE-----
MIIG2TCCBMGgAwIBAgxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxqhkiG9w0BAQsF
ADBbMRIwEAYKCZImiZxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxZFgR2aXRjMRMw
EQYKCZImiZPyLGQBGRxxxxxxxxxxxxxxxxxxxxxxxxxxRW50ZXJwcmlzZS1DQTAe
Fw0yMDA2MDgwNzQwxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxIiMA0GCSqGSIb3DQEB
..........................
8wYIKWr2AqSKKxcBHxxxxxxxxxxxxxxxxxxxxxxxxxxxxx3ykeRMZJk7VpQDQDLN
feFI4rHZ4JOqDWttiHxxxxxxxxxxxxxxxxxxxxxxxxxxxhpXsxyjQIRvrtaCZVXz
GR7Na7Ah1o+9MWenMExxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxGQlsQ47nZE2YgV
-----END CERTIFICATE-----</certificate>
</trusted_certificates>


Als u wilt controleren of de LDAPS-instellingen niet zijn teruggezet, voert u de curl GET-opdracht uit:

# curl -s -k -X GET -H Content-Type:application/xml -H "$TOKEN" -H ACCEPT:application/xml https://10.xxx.xxx.21:4443/vdc/truststore/settings | xmllint --format -
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<truststore_settings>
  <accept_all_certificates>false</accept_all_certificates>
</truststore_settings>


Als het is teruggekeerd naar false, zet het dan terug naar true,Zoals
wanneer er een wijziging is in de truststore, kan de instelling zichzelf instellen op 'false'.

Voer een curl-opdracht uit met een xml-bestand als de payload met een curl PUT-opdracht:

# curl -s -k -X PUT -H Content-Type:application/xml -H "$TOKEN" -H ACCEPT:application/xml https://<NodeManagementIP>:4443/vdc/truststore/settings --data-binary @truststoresettings.xml


De LDAPS-instellingen controleren:

# curl -s -k -X GET -H Content-Type:application/xml -H "$TOKEN" -H ACCEPT:application/xml https://10.xxx.xxx.21:4443/vdc/truststore/settings | xmllint --format -
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<truststore_settings>
  <accept_all_certificates>true</accept_all_certificates>
</truststore_settings>

 

OPMERKING: Mogelijk zijn er meerdere certificaten in de truststore. Houd er rekening mee dat de hele certificaatketen vereist kan zijn.
 

4. Gebruik LDAPS op de pagina ECS-authenticatieprovider, met FQDN in plaats van een IP-adres.

Met de LDAPS-certificaatketen geüpload naar ECS truststore en de accept_all_certificates De markering is ingesteld op true, gaat u naar de pagina ECS UI Authentication Provider en wijzigt u de server-URL vanaf.
< ldap://IP of FQDN>van domeincontrollernaarldaps:// Domeincontroller FQDN>Dat wil zeggen:FQDN met het LDAPS-protocol Het moet een FQDN zijn voor LDAPS-gebruik<.

ECS pagina voor UI-authenticatieprovider
ECS UI-authenticatieproviderpagina en wijzig de server-URL FQDN met ldaps-protocol






Er is een FQDN nodig in plaats van een IP-adres als:
"Met SSL-certificaten moet het certificaat een Subject Alternate Name (SAN) in het certificaat hebben dat overeenkomt met de verbinding waarmee verbinding wordt gemaakt, het SAN krijgt alleen een DNS-naam te zien die overeenkomt met de configuratie op het ECS."

Controleer daarom of de pagina van de ECS-authenticatieprovider, het dialoogvenster URL van de server, een FQDN gebruikt in plaats van een IP-adres.
Dat wil zeggen:
ldaps://fqdn-domain-of-the-ad-or-ldap-server.com

OPMERKING: De poort kan worden weggelaten als de standaardpoort wordt gebruikt.
 
Ports:
De standaardpoort voor LDAP is 389. 
De standaardpoort voor LDAPS is 636.

URL-indeling indien niet-standaardpoort:
< ldap://Domeincontroller IP of FQDN>:<poort> of ldaps://< Domeincontroller FQDN>:<poort>

5. Test de aanmelding bij de domeingebruiker.

Test vervolgens de aanmelding van de domeingebruiker tijdens het LDAPS-protocol als de domeingebruikers zich met LDAPS kunnen aanmelden.

De verbinding tussen het ECS-LDAPS-protocol werkt.


Overige informatie:

Indien nodig: 
Als u een certificaat uit de truststore wilt verwijderen, maakt u een xml-bestand dat overeenkomt met het certificaat dat u wilt verwijderen, maar in plaats van "add" Gebruik als payload "remove":
# cat cert_remove.xml | xmllint --format -
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<trusted_certificate_changes>
  <remove>
    <certificate>-----BEGIN CERTIFICATE-----
MIIG2TCCBMGgAwIBAgITMQAAAATxxxxxxxxxxxxxxxxxxxxxxxxxhkiG9w0BAQsF
ADBbMRIwEAYKCZImiZPyLGQBGRYxxxxxxxxxxxxxxxxxxxxxxxxxFgR2aXRjMRMw
.......................
pkHgxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxzxhlGh2TaTC
xqz4T/sO4ggWs0Yz5nBmCZMDn6nxxxxxxrjX+ahXI=
-----END CERTIFICATE-----</certificate>
  <certificate>-----BEGIN CERTIFICATE-----
MIIG2TCCBMGgAwIBAgxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxqhkiG9w0BAQsF
ADBbMRIwEAYKCZImiZxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxZFgR2aXRjMRMw
EQYKCZImiZPyLGQBGRxxxxxxxxxxxxxxxxxxxxxxxxxxRW50ZXJwcmlzZS1DQTAe
Fw0yMDA2MDgwNzQwxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxIiMA0GCSqGSIb3DQEB
..........................
8wYIKWr2AqSKKxcBHxxxxxxxxxxxxxxxxxxxxxxxxxxxxx3ykeRMZJk7VpQDQDLN
feFI4rHZ4JOqDWttiHxxxxxxxxxxxxxxxxxxxxxxxxxxxhpXsxyjQIRvrtaCZVXz
GR7Na7Ah1o+9MWenMExxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxGQlsQ47nZE2YgV
-----END CERTIFICATE-----</certificate>
  </remove>
</trusted_certificate_changes>


Als u het payload-bestand wilt gebruiken, dat wil zeggen toevoegen of verwijderen, gebruikt u deze opdracht:

# curl -s -k -X PUT -H Content-Type:application/xml-H "$TOKEN" -H ACCEPT:application/xml https://10.xxx.xxx.21:4443/vdc/truststore --data-binary @cert_remove.xml

Om te controleren of de payload is geslaagd, voert u de GET-opdracht uit:

# curl -s -k -X GET -H Content-Type:application/xml -H "$TOKEN" -H ACCEPT:application/xml https://10.xxx.xxx.21:4443/vdc/truststore | xmllint --format -
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<trusted_certificates/>


Als u niet zeker weet of de LDAPS-server niet overeenkomt met het opgegeven certificaat, voert u de volgende opdracht uit om het verwachte antwoord van de LDAPS-serveraanvraag voor een overeenkomend certificaat te controleren. 

OPMERKING: Het vraagt om de hele keten "verify error:num=21:unable to verify the first certificate".


In dit voorbeeld is de LDAPS-server een zelfondertekend certificaat in plaats van een certificaat van derden, dus deze kan een extra waarschuwing genereren dat deze zelfondertekend is:

# sudo openssl s_client -connect LDAPS_server_IP:636 < /dev/null
CONNECTED(00000003)
depth=0 CN = 
verify error:num=20:unable to get local issuer certificate
verify return:1
depth=0 CN = 
verify error:num=21:unable to verify the first certificate
verify return:1
---
Certificate chain
........
---
Server certificate
-----BEGIN CERTIFICATE-----
.......
A cert that it expects.
.......
-----END CERTIFICATE-----
No client certificate CA names sent
Client Certificate Types: RSA sign, DSA sign, ECDSA sign
Requested Signature Algorithms: RSA+SHA512:ECDSA+SHA512:RSA+SHA256:RSA+SHA384:RSA+SHA1:ECDSA+SHA256:ECDSA+SHA384:ECDSA+SHA1:DSA+SHA1
Shared Requested Signature Algorithms: RSA+SHA512:ECDSA+SHA512:RSA+SHA256:RSA+SHA384:RSA+SHA1:ECDSA+SHA256:ECDSA+SHA384:ECDSA+SHA1:DSA+SHA1
Peer signing digest: SHA1
Server Temp Key: ECDH, P-256, 256 bits
---
SSL handshake has read 2223 bytes and written 487 bytes
---
New, TLSv1/SSLv3, Cipher is ECDHE-RSA-AES256-SHA384
Server public key is 4096 bit
Secure Renegotiation IS supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
SSL-Session:
    Protocol  : TLSv1.2
.......................
    SRP username: None
    Start Time: 1610452553
    Timeout   : 300 (sec)
    Verify return code: 21 (unable to verify the first certificate)
---
DONE


Controleer het certificaatbestand dat verbinding maakt met de LDAPS-server en controleer of er een overeenkomend certificaat moet worden gebruikt, namelijk Verifieer de retourcode: 0 (OK):

# openssl s_client -connect LDAPS_server_IP:636 -CAfile /home/admin/cert_file_to_be_used.crt
CONNECTED(00000003)
.......
---
Server certificate
-----BEGIN CERTIFICATE-----
.....
.....
-----END CERTIFICATE-----
.......
---
No client certificate CA names sent
Client Certificate Types: RSA sign, DSA sign, ECDSA sign
Requested Signature Algorithms: RSA+SHA512:ECDSA+SHA512:RSA+SHA256:RSA+SHA384:RSA+SHA1:ECDSA+SHA256:ECDSA+SHA384:ECDSA+SHA1:DSA+SHA1
Shared Requested Signature Algorithms: RSA+SHA512:ECDSA+SHA512:RSA+SHA256:RSA+SHA384:RSA+SHA1:ECDSA+SHA256:ECDSA+SHA384:ECDSA+SHA1:DSA+SHA1
Peer signing digest: SHA1
Server Temp Key: ECDH, P-256, 256 bits
---
SSL handshake has read 2223 bytes and written 487 bytes
---
New, TLSv1/SSLv3, Cipher is ECDHE-RSA-AES256-SHA384
Server public key is 4096 bit
Secure Renegotiation IS supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
SSL-Session:
    Protocol  : TLSv1.2
 .........
    Verify return code: 0 (ok)
---


 

OPMERKING: Certificaten kunnen verlopen en de verbinding beïnvloeden als ze niet worden bijgewerkt.

Om dit te controleren gebruikt u deze opdracht:

# cat /home/admin/cert.crt | openssl x509 -dates -noout
notBefore=Jan 12 13:43:52 2021 GMT
notAfter=Jan 12 13:43:52 2022 GMT



Voorbeeld van JSON-versie van de opdrachten.
Als u de bovenstaande XML-opdrachten niet gebruikt (let op, XML heeft de voorkeur):

curl -s -k -X GET -H Content-Type:application/json -H "$TOKEN" -H ACCEPT:application/json https://<NodeManagementIP>:4443/vdc/truststore/settings

 

Voorbeeld: 
curl -s -k -X GET -H Content-Type:application/json -H "$TOKEN" -H ACCEPT:application/json https://10.xxx.xxx.21:4443/vdc/truststore/settings
{"accept_all_certificates":false}


Een JSON-bestand maken om de truststore-instellingen te wijzigen met behulp van een curl-opdracht met een JSON-payload:

# sudo vi truststoresettings.json
# sudo cat truststoresettings.json
{"accept_all_certificates": "true"}


De json.tool-module op python kan een JSON-bestandsindeling valideren. Als er een fout optreedt, is het bestand mogelijk geen JSON-bestand. In dit voorbeeld zijn er geen fouten en wordt het bestand uitgevoerd, dus het is een geformatteerd JSON-bestand:     

# python -m json.tool truststoresettings.json
{
    "accept_all_certificates": "true"
}


Voer een curl-opdracht uit met een JSON-bestand als de payload met een curl PUT-opdracht:

# curl -s -k -X PUT -H Content-Type:application/json -H "$TOKEN" -H ACCEPT:application/json https://<NodeManagementIP>:4443/vdc/truststore/settings -d @truststoresettings.json
NOTITIE:
XML-payload PUT gebruikt --data-binary in de curl-opdracht, terwijl de JSON-payload PUT gebruikmaakt van -d In de curl-opdracht:
--data-binary


(HTTP) Dit plaatst gegevens precies zoals opgegeven zonder extra verwerking:
--data-ascii aka -d
(HTTP) Dit is een alias voor -d, --data.

Om te controleren of het is bijgewerkt, voert u de opdracht curl GET uit:

# curl -s -k -X GET -H Content-Type:application/json -H "$TOKEN" -H ACCEPT:application/json https://10.xxx.xxx.21:4443/vdc/truststore/settings
{"accept_all_certificates":true}

Test de aanmelding van de domeingebruiker in de ECS-gebruikersinterface waarbij de LDAPS-certificaten nu zijn toegestaan.

Om de truststore te onderzoeken:

# curl -s -k -X GET -H Content-Type:application/json -H "$TOKEN" -H ACCEPT:application/json https://<NodeManagementIP>:4443/vdc/truststore


Voorbeeld van een lege LDAP-certificaattruststore:

# curl -s -k -X GET -H Content-Type:application/json -H "$TOKEN" -H ACCEPT:application/json https://10.xxx.xxx.xxx.21:4443/vdc/truststore
{"certificate":[]}


De JSON-indeling voor een curl add-opdracht, een bestand van één regel met nieuwe regeltekens vervangen door \n en \r\n:

Voorbeeld: {"add":["-----BEGIN CERTIFICATE-----\nxxxxx\r\n---END CERTIFICATE-----"]}
# cat cert.json
{"add":["-----BEGIN CERTIFICATE-----\nMIIF1DCCA7ygAwIBAgIUdK2Ao2/45jYdQP0q6Dr1/ULmnc8wDQYJKoZIhvcNAQEL\r\nxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\r\nxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\r\nxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\r\nxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\r\nHhrV5ezjYHY=\r\n---END CERTIFICATE-----"]}


Raadpleeg de ECS beheerdershandleiding "Add custom LDAP certificate". Gebruik deze opdracht om het volgende toe te voegen of te verwijderen:

# curl -s -k -X PUT -H Content-Type:application/json -H "$TOKEN" -H ACCEPT:application/json https://10.xxx.xxx.21:4443/vdc/truststore -d @cert.json


U kunt de upload als volgt controleren:

# curl -s -k -X GET -H Content-Type:application/json -H "$TOKEN" -H ACCEPT:application/json https://10.xxx.xxx.xxx.21:4443/vdc/truststore
{"certificate":["-----BEGIN CERTIFICATE-----\nMIIF1DCCA7ygAwIBAgIUdK2Ao2/45jYdQP0q6Dr1/ULmnc8wDQYJKoZIhvcNAQEL\r\nxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\r\nxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\r\nxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\r\nxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\r\nHhrV5ezjYHY=\r\n---END CERTIFICATE-----"]}


Als u wilt controleren of de LDAPS-instellingen niet zijn teruggezet, voert u de curl GET-opdracht uit:

# curl -s -k -X GET -H Content-Type:application/json -H "$TOKEN" -H ACCEPT:application/json https://10.xxx.xxx.21:4443/vdc/truststore/settings
{"accept_all_certificates":false}

Als het is teruggezet naar false, zet het dan terug naar true. Wanneer er een wijziging is in de truststore, kan de instelling zichzelf instellen op 'false'.

Voer een curl-opdracht uit met een JSON-bestand als de payload met een curl PUT-opdracht:   

# curl -s -k -X PUT -H Content-Type:application/json -H "$TOKEN" -H ACCEPT:application/json https://<NodeManagementIP>:4443/vdc/truststore/settings -d @truststoresettings.json

De LDAPS-instellingen controleren:

# curl -s -k -X GET -H Content-Type:application/json -H "$TOKEN" -H ACCEPT:application/json https://10.xxx.xxx.21:4443/vdc/truststore/settings
{"accept_all_certificates":true}

 

OPMERKING: Mogelijk zijn er meerdere certificaten in de truststore. Houd er rekening mee dat de hele certificaatketen vereist kan zijn.


Om een certificaat uit de truststore te verwijderen, maakt u een JSON-bestand dat overeenkomt met het certificaat dat u wilt verwijderen, maar in plaats van "add" als payload, gebruikt u "remove":

# cat cert.json
{"remove":["-----BEGIN CERTIFICATE-----\nMIIF1DCCA7ygAwIBAgIUdK2Ao2/45jYdQP0q6Dr1/ULmnc8wDQYJKoZIhvcNAQEL\r\nxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\r\nxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\r\nxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\r\nxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\r\nHhrV5ezjYHY=\r\n---END CERTIFICATE-----"]}

Om iets toe te voegen of te verwijderen, gebruikt u deze opdracht:

# curl -s -k -X PUT -H Content-Type:application/json -H "$TOKEN" -H ACCEPT:application/json https://10.xxx.xxx.21:4443/vdc/truststore -d @cert.json

U kunt de upload als volgt controleren:

# curl -s -k -X GET -H Content-Type:application/json -H "$TOKEN" -H ACCEPT:application/json https://10.xxx.xxx.xxx.21:4443/vdc/truststore
{"certificate":[]}

Affected Products

ECS Appliance
Article Properties
Article Number: 000183654
Article Type: How To
Last Modified: 04 Nov 2025
Version:  11
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.