Sie können die API-Diensteigenschaften des NSX Manager-Clusters bearbeiten, z. B. die TLS-Protokollversion, Verschlüsselungs-Suites usw.

Ab Version 4.2 sind TLS 1.1-Verschlüsselungen standardmäßig deaktiviert, können aber vom Benutzer mit folgendem Verfahren aktiviert werden. Für TLS 1.1 unterstützte Verschlüsselungen:
  • TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
  • TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA
  • TLS_RSA_WITH_AES_128_CBC_SHA
  • TLS_RSA_WITH_AES_256_CBC_SHA
Für TLS 1.2 unterstützte Verschlüsselungen:
  • TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
  • TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
  • TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
  • TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA
  • TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
  • TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
  • TLS_RSA_WITH_AES_128_CBC_SHA
  • TLS_RSA_WITH_AES_128_CBC_SHA256
  • TLS_RSA_WITH_AES_128_GCM_SHA256
  • TLS_RSA_WITH_AES_256_CBC_SHA
  • TLS_RSA_WITH_AES_256_CBC_SHA256
  • TLS_RSA_WITH_AES_256_GCM_SHA384
  • TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
Für TLS 1.3 unterstützte Verschlüsselungen:
  • TLS_AES_128_GCM_SHA256
  • TLS_AES_256_GCM_SHA384
  • TLS_CHACHA20_POLY1305_SHA256
  • Ab NSX 4.2: TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384

Das folgende Verfahren erläutert den Workflow zum Ausführen von NSX API-Dienstaufrufen zum Aktivieren des TLS 1.1-Protokolls und zum Aktivieren oder Deaktivieren der Verschlüsselungs-Suites in der API-Dienstkonfiguration. TLS 1.1 ist standardmäßig deaktiviert. Sie können mit diesem Verfahren bei Bedarf auch andere TLS-Versionen deaktivieren. Beachten Sie, dass NSX eine minimale und eine maximale Version unterstützt. Daher werden TLS 1.1 und TLS 1.3 unterstützt, TLS 1.2 jedoch nicht. Beispiel: TLS 1.1 und TLS 1.2 oder TLS 1.2 und TLS 1.3 können unterstützt werden.

Detaillierte Informationen zum API-Schema, eine Beispielanforderung, eine Beispielantwort und Fehlermeldungen des NSX API-Dienstes finden Sie im Handbuch zu NSX-API.

Prozedur

  1. Führen Sie die folgende GET API-Anforderung aus, um die Konfiguration des NSX API-Dienstes zu lesen:
    GET https://<NSX-Manager-IP>/api/v1/cluster/api-service
    Die API-Antwort enthält die Liste der Verschlüsselungs-Suites und TLS-Protokolle. Beachten Sie, dass die Unterstützung von TLS 1.0 nicht aufgeführt ist.
    curl -u admin:${PASSWORD} -i -k https://$IP/api/v1/cluster/api-service  "protocol_versions" : [ {
        "name" : "TLSv1.1",
        "enabled" : false
      }, {
        "name" : "TLSv1.2",
        "enabled" : true
      }, {
        "name" : "TLSv1.3",
        "enabled" : true
      } ],

  2. curl -u admin:${PASSWORD} -i -k https://$IP/api/v1/cluster/api-service
    {
      "global_api_concurrency_limit": 199,
      "client_api_rate_limit": 100,
      "client_api_concurrency_limit": 40,
      "connection_timeout": 30,
      "redirect_host": "",
      "cipher_suites": [
        {"enabled": true, "name": "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384"},
        {"enabled": true, "name": "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384"},
        {"enabled": true, "name": "TLS_RSA_WITH_AES_256_GCM_SHA384"},
        {"enabled": true, "name": "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256"},
        {"enabled": true, "name": "TLS_RSA_WITH_AES_128_GCM_SHA256"}
        {"enabled": true, "name": "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384}",
        {"enabled": true, "name": "TLS_RSA_WITH_AES_256_CBC_SHA256"},
        {"enabled": true, "name": "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA"},
        {"enabled": true, "name": "TLS_RSA_WITH_AES_256_CBC_SHA"},
        {"enabled": true, "name": "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256"},
        {"enabled": true, "name": "TLS_RSA_WITH_AES_128_CBC_SHA256"},
        {"enabled": false, "name": "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA"},
        {"enabled": false, "name": "TLS_RSA_WITH_AES_128_CBC_SHA"}
        {"enabled": false, "name": "TLS_RSA_WITH_AES_128_CBC_SHA"}         
      ],
      "protocol_versions": [
        {"enabled": false, "name": "TLSv1.1"},
        {"enabled": true, "name": "TLSv1.2"}
        {"enabled": true, "name": "TLSv1.3"}]
    }
  3. Aktivieren oder deaktivieren Sie das TLS 1.1-Protokoll.
    1. Legen Sie TLSv1.1 z. B. auf enabled = true fest, um eine TLS-Version zu aktivieren. Legen Sie Ihre TLS-Version auf enabled = false fest, um eine TLS-Version zu deaktivieren.
    2. Führen Sie die folgende PUT API-Anforderung aus, um die Änderungen an den NSX API-Server zu senden:
      PUT https://<NSX-Manager-IP>/api/v1/cluster/api-service
  4. Aktivieren oder deaktivieren Sie die Verschlüsselungs-Suites.
    1. Legen Sie, gemäß Ihren Anforderungen, für einen oder mehrere Verschlüsselungen enabled = true oder enabled = false fest.
    2. Führen Sie die folgende PUT API-Anforderung aus, um die Änderungen an den NSX API-Server zu senden:
      PUT https://<NSX-Manager-IP>/api/v1/cluster/api-service
  5. Stellen Sie sicher, dass die Aktivierung abgeschlossen ist.

Ergebnisse

Der API-Dienst auf den einzelnen NSX Manager-Knoten wird neu gestartet, nachdem er über die API aktualisiert wurde. Vom Abschluss des API-Aufrufs bis zum Inkrafttreten der neuen Konfiguration kann bis zu einer Minute vergehen. Die Änderungen der API-Dienstkonfiguration werden auf alle Knoten im NSX Manager-Cluster angewendet.