ECS:ECSでLDAPS経由で証明書を設定して受け入れる方法

Summary: ECSでLightweight Directory Access Protocol Secure (LDAPS)を介して証明書をセットアップして受け入れる方法。

Αυτό το άρθρο ισχύει για Αυτό το άρθρο δεν ισχύει για Αυτό το άρθρο δεν συνδέεται με κάποιο συγκεκριμένο προϊόν. Δεν προσδιορίζονται όλες οι εκδόσεις προϊόντων σε αυτό το άρθρο.

Instructions

LDAPSは、Lightweight Directory Access Protocol (LDAP) over Secure Socket Layer (SSL)またはTransport Layer Security (TLS)とも呼ばれ、Active Directory (AD)またはLDAPサーバーのLDAP使用の暗号化トラフィック形式です

LDAPSは、正常に動作しているLDAP接続に依存しています。『ECS管理ガイド』とナレッジベース記事「 ECS: UIでADまたはLDAPサーバー接続を設定する方法

SSLまたはTLS通信の重要なコンポーネントは証明書です。使用されている証明書の有効期限が切れていないこと、無効であることを確認します。これは、完全な証明書チェーン内のすべての証明書が正しいために重要です。
この点については、ネットワーク チームに確認してください

LDAPS証明書チェーンをアップロードしてLDAPSを有効にするには、次の手順に注意してください
1.LDAPS証明書チェーンをアップロードするには、ノード管理IPアドレスが必須です。
2.UIルート ユーザーは、LDAPS証明書チェーンをノード管理CLIインターフェイスにアップロードする必要があります。
図3Aです。XMLペイロードのLDAPS証明書チェーンからノード管理IPアドレス
3Bへ。LDAPS有効化パラメーターは、ノード管理IPアドレス
4に対するXMLペイロードの設定です。IPアドレスの代わりに完全修飾ドメイン名(FQDN)を使用して、ECS認証プロバイダー ページでLDAPSを使用します
5.ドメイン ユーザーのログインをテストします。

ステップ3
では、次のようにIPアドレスの代わりにFQDNが必要です。
SSL証明書では、証明書には、接続先の接続と一致するサブジェクト代替名(SAN)が含まれている必要があります。SANには、ECSの構成に一致するDNS名のみが提示されます。"

そのため、ECS認証プロバイダー ページのサーバーURLダイアログ ボックスで、IPアドレスではなくFQDNが使用されていることを確認してください
例: ldaps://ad-or-ldap-fqdn-domain.com

上記の手順は次のとおりです。

  1. LDAPS証明書チェーンをアップロードするには、ノード管理IPアドレスが必須です。

LDAPS証明書の設定に関してECSの設定を確認するには、まず使用するノード管理IPを取得します
UI管理でネットワークが分離されている場合、「getrackinfo -n」を実行すると「MGMT」の値が表示されます。

ノードのMGMT IPアドレスを使用します。レプリケーションとデータ ネットワークの分離は、次の手順には関連していません。       

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


VDCにネットワーク管理の分離がない場合は、代わりにノードのパブリックIPアドレスを使用します。 
 

メモ: 管理ネットワークが存在する場合は、ネットワーク分離が優先されます。

次の例では、MGMTはに存在しません。 "getrackinfo -n";そのため、パブリックIPアドレスを getrackinfo を、次の手順で管理IPアドレスとして使用します。

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.LDAPS証明書チェーンをノード管理CLIインターフェイスにアップロードするには、UIルート ユーザーが必要です。

取得した管理IPアドレスを使用して、rootユーザー トークンを取得します。rootユーザーのパスワードが必要です(またはUI管理者権限を持つUIユーザー)。

curl -s -k -v -u <user> https://<NodeManagementIP>:4443/login 2>&1
Example:
# 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>


出力が「HTTP/1.1 200 OK」でない場合は、「getrackinfo -n.」コマンドからUI管理ネットワーク分離が存在する場合は、パスワードとIPアドレスを確認します。

rootユーザー トークンを使用して、トークン変数を作成します。 

メモ: 新しいCLIセッションでは、有効なトークンのアップデートが必要になる場合があります。

# export TOKEN='X-SDS-AUTH-TOKEN: BAAcdWhGbnVRVjd1WlpmR0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxAgAC0A8='
トークン値をテストするには、 curl 容量を確認するコマンド: 

# 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>

図3Aです。ノード管理IPアドレス

3BへのXMLペイロードのLDAPS証明書チェーン。LDAPS有効化パラメーターの設定。XMLペイロードのLDAPSパラメーターをノード管理IPアドレスに受け入れます。

上記では、rootユーザー トークンを使用して、LDAPS証明書をアップロードできるECS UIトラストストアへのcurlアクセスを取得します。
「カスタムLDAP証明書の追加」の詳細については、『ECS管理者ガイド』を参照してください

を使用してトラストストア設定を取得します。 curl GET コマンドを使用して実行できます。

curl -s -k -X GET -H Content-Type:application/xml -H "$TOKEN" -H ACCEPT:application/xml https://<NodeManagementIP>:4443/vdc/truststore/settings | xmllint --format -
Example: 
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>

上記の例では、トラストストア "accept_all_certificates" は false に設定されています。これは、LDAPS証明書が信頼されていないことを意味します

"accept_all_certificates" 用語は曖昧かもしれませんが、LDAPS証明書を使用するかどうかを判断するためにECSで引き続き使用されるフラグです
ユーザーは、必要に応じて、これをtrueまたはfalseに設定することができます。LDAPS接続をテストするには、trueに設定してユーザーのログインをテストすることで、LDAPS接続を検証できます。
 

メモ: LDAPS証明書がトラストストアからアップロードまたは削除されるたびに、 "accept_all_certificates" は false に戻ります。そのため、トラストストアを編集する場合は、 "accept_all_certificates" その後、trueに戻ります


xmlファイルを作成し、xmlペイロードでcurlコマンドを使用してトラストストアの設定を変更します。

# 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>

accept_all_certificatesをfalseに設定するには、ペイロード ファイルをtrueではなくfalseに編集し、ペイロード ファイルを使用してPUTコマンドを実行します

curl PUTコマンドを使用して、ペイロードとしてxmlファイルを指定してcurlコマンドを実行します。

# 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


「accept_all_certificates」がアップデートされたことを確認するには、curl GETコマンドを実行します。

# 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>


トラストストアの設定だけでなく、トラストストアを調べるには、次のようにします。

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


空のLDAP証明書トラストストアの例は次のとおりです。

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


ECSには証明書チェーン全体、ルート証明書、CA証明書、ホスト証明書などが必要なため、複数の証明書が必要になる場合があります
トラストストアに証明書を追加するには、ユーザーが持っている証明書のxmlファイルを作成します。証明書には、.pem、.crt、.cerなどのファイル タイプがあります

証明書をECSにアップロードするには、xmlペイロードとして機能するxml形式である必要があります

証明書の非xml形式ファイル:

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


curl addコマンドのxml形式は次のとおりです。

# 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>


証明書ペイロードのxml形式をアップロードします。 

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


証明書がアップロードされたことを確認するには、GETコマンドを実行します。ECSトラストストアの終了行文字は「.」です。

# 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>


LDAPS設定が元に戻っていないことを確認するには、curl GETコマンドを実行します。

# 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>


falseに戻った場合はtrueに戻します
トラストストアに変更があった場合と同様に、設定自体が「false」に設定される場合があります

curl PUTコマンドを使用して、ペイロードとしてxmlファイルを指定してcurlコマンドを実行します。

# 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


LDAPS設定を確認するには、次の手順を実行します。

# 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>

 

メモ: トラストストアに複数の証明書が存在する場合があります。証明書チェーン全体が必要になる場合があることに注意してください。
 

4.ECS認証プロバイダー ページで、IPアドレスの代わりにFQDNでLDAPSを使用します

LDAPS証明書チェーンをECSトラストストアにアップロードし、 accept_all_certificates フラグをtrueに設定した場合は、ECS UI認証プロバイダー ページに移動して、サーバーのURLを.
に変更します。ldap://<ドメイン コントローラーIPまたは>
To
ldaps://<Domain controller FQDN>


つまり、LDAPSプロトコルを使用する
ECS UI認証プロバイダー ページ
FQDN
ECS UI認証プロバイダー ページとldapsプロトコルを使用したサーバーURLのFQDNの変更

LDAPSを使用する場合はFQDNである必要があります。

IPアドレスの代わりにFQDNが必要です。
SSL証明書では、証明書には、接続先の接続と一致するサブジェクト代替名(SAN)が証明書に含まれている必要があります。SANには、ECSの構成に一致するDNS名のみが提示されます

したがって、ECS認証プロバイダー ページのサーバーURLダイアログ ボックスで、IPアドレスではなくFQDNが使用されていることを確認してください
つまり、
ldaps://fqdn-domain-of-the-ad-or-ldap-server.com

メモ: デフォルト ポートを使用する場合は、ポートを省略できます。
 
ポート:
LDAPのデフォルト ポートは389です。
LDAPSのデフォルト ポートは636.

ですデフォルト以外のポートの場合のURL形式:
ldap://<ドメイン コントローラーIPまたはFQDN>:<port>または ldaps://<ドメイン コントローラーFQDN>:<port>

5。ドメイン ユーザーのログインをテストします。

次に、ドメイン ユーザーがLDAPSによって正常にログインできる場合は、LDAPSプロトコルでドメイン ユーザー ログインをテストします

したがって、ECS-LDAPSプロトコル接続は機能しています


その他の情報:

必要な場合: 
トラストストアから証明書を削除するには、削除する証明書と一致するが "add" ペイロードとして、 "remove"が使用するJava Runtime Environmentへのパスを定義します。
# 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>


ペイロード ファイル(追加または削除)を使用するには、次のコマンドを使用します。

# 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

ペイロードが成功したかどうかを確認するには、GETコマンドを実行します。

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


LDAPSサーバーが指定された証明書と一致していないことが不明な場合は、次のコマンドを実行して、一致する証明書に対するLDAPSサーバー リクエストからの予想される応答を確認します。 

メモ: それはチェーン全体を要求します "verify error:num=21:unable to verify the first certificate"の詳細を確認してください。


この例では、LDAPSサーバーはサード パーティー証明書ではなく自己署名証明書であるため、自己署名されていることを示す追加の警告が生成される場合があります。

# 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


LDAPSサーバーに接続している証明書ファイルを確認し、使用する一致する証明書があるかどうかを確認します。つまり、リターン コードを確認します。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)
---


 

メモ: 証明書は期限切れになる場合があり、更新されていない場合は接続に影響する可能性があります。

これを確認するには、次のコマンドを使用します。

# 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



コマンドのJSONバージョンの例.
上記のXMLコマンドを使用しない場合(XMLが推奨されます)。

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

 

Example: 
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}


JSONファイルを作成し、JSONペイロードでcurlコマンドを使用してトラストストアの設定を変更するには、次の手順を実行します。

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


Python の json.tool モジュールでは、JSON ファイル形式を検証できます。エラーが発生した場合は、ファイルがJSONファイルではない可能性があります。この例では、エラーはなく、ファイルが出力されるため、フォーマットされたJSONファイルになります。     

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


curl PUTコマンドを使用して、ペイロードとしてJSONファイルを使用してcurlコマンドを実行します。

# 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
メモ:
XML ペイロード PUT は curl コマンドで --data-binary を使用し、JSON ペイロード PUT は -d curlコマンドでは、次の手順を実行します。
--data-binary


(HTTPの)これにより、追加の処理を行わずに、指定されたとおりにデータが転記されます。
--data-ascii aka -d
(HTTPの)これは -d--data.

アップデートされていることを確認するには、curl GETコマンドを実行します。

# 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}

LDAPS証明書が許可されている状態で、ECS UIでドメイン ユーザーのログインをテストします。

トラストストアを調べるには、次の手順を実行します。

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


空のLDAP証明書トラストストアの例:

# 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":[]}


curl addコマンドのJSON形式。改行文字を\nと\r\nに置き換えた単一行ファイルです。

Example: {"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-----"]}


ECS管理ガイドの「Add custom LDAP certificate」を参照してください。次のコマンドを使用して、以下を追加または削除します。

# 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


アップロードを確認するには、次のコマンドを実行します。

# 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-----"]}


LDAPS設定が元に戻っていないことを確認するには、curl GETコマンドを実行します。

# 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}

false に戻った場合は、true に戻します。トラストストアに変更があった場合、設定自体が「false」に設定されることがあります

curl PUTコマンドを使用して、ペイロードとしてJSONファイルを使用してcurlコマンドを実行します。   

# 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

LDAPS設定を確認するには、次の手順を実行します。

# 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}

 

メモ: トラストストアに複数の証明書が存在する場合があります。証明書チェーン全体が必要になる場合があることに注意してください。


トラストストアから証明書を削除するには、削除する証明書と一致するJSONファイルを作成しますが、ペイロードとして「追加」するのではなく、 "remove"が使用するJava Runtime Environmentへのパスを定義します。

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

追加または削除するには、次のコマンドを使用します。

# 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

アップロードを確認するには、次のコマンドを実行します。

# 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":[]}

Επηρεαζόμενα προϊόντα

ECS Appliance
Ιδιότητες άρθρου
Article Number: 000183654
Article Type: How To
Τελευταία τροποποίηση: 04 Νοε 2025
Version:  11
Βρείτε απαντήσεις στις ερωτήσεις σας από άλλους χρήστες της Dell
Υπηρεσίες υποστήριξης
Ελέγξτε αν η συσκευή σας καλύπτεται από τις Υπηρεσίες υποστήριξης.