Se la connessione Internet non è configurata in NSX, è possibile utilizzare le API per scaricare manualmente il file del bundle di firme del rilevamento delle intrusioni (.zip) di NSX e quindi caricare il bundle delle firme in NSX Manager. Esegui i seguenti passaggi per scaricare le firme in modalità offline e caricarle su NSX.

Passaggio 1: registrare NSX nel servizio cloud

Utilizzare la seguente API per registrare NSX nel servizio cloud. Prima di avviare qualsiasi comunicazione con il servizio cloud, è necessario utilizzare questa API per registrarsi al servizio cloud. Inviare tutte le licenze e verrà fornita l'autorizzazione necessaria. Se la chiave di licenza è valida, l'API genera e restituisce client_id e client_secret. Le informazioni sulla licenza vengono archiviate nel cloud. Client_secret viene utilizzato come richiesta per l'API di autenticazione. Se il client è stato precedentemente registrato, ma non dispone dell'accesso a client_id e a client_secret, deve ripetere la registrazione utilizzando la stessa API.

Percorso URI:

POST https://api.nsx-sec-prod.com/1.0/auth/register
Corpo:
{
"license_keys":["XXXXX-XXXXX-XXXXX-XXXXX"],
"device_type":"NSX-Idps-Offline-Download",
"client_id": "client_username"
}
Risposta:
{"client_id":"client_username", 
"client_secret": "Y54+V/rCpEm50x5HAUIzH6aXtTq7s97wCA2QqZ8VyrtFQjrJih7h0alItdQn02T46EJVnSMZWTseragTFScrtIwsiPSX7APQIC7MxAYZ0BoAWvW2akMxyZKyzbYZjeROb/C2QchehC8GFiFNpwqiAcQjrQHwHGdttX4zTQ="
}

Passaggio 2: eseguire l'autenticazione di NSX nel servizio cloud

Utilizzare l'API seguente per eseguire l'autenticazione di NSX nel servizio cloud. Questa chiamata API esegue l'autenticazione del client utilizzando client_id e client_secret. L'API genera access_token da utilizzare nelle intestazioni delle richieste alle API di firme IDS. Il token è valido per 60 minuti. Se il token scade, il client deve eseguire nuovamente l'autenticazione utilizzando client_id e client_secret.

Percorso URI:

POST https://api.nsx-sec-prod.com/1.0/auth/authenticate
Corpo:
{"client_id":"client_username", 
"client_secret": "Y54+V/rCpEm50x5HAUIzH6aXtTq7s97wCA2QqZ8VyrtFQjrJih7h0alItdQn02T46EJVnSMZWTseragTFScrtIwsiPSX7APQIC7MxAYZ0BoAWvW2akMxyZKyzbYZjeROb/C2QchehC8GFiFNpwqiAcQjrQHwHGdttX4zTQ="
}

Risposta:

{
    "access_token": "eyJhbGciOiJIUzUxMiJ9.eyJqdGkiOiI3ZjMwN2VhMmQwN2IyZjJjYzM5ZmU5NjJjNmZhNDFhMGZlMTk4YjMyMzU4OGU5NGU5NzE3NmNmNzk0YWU1YjdjLTJkYWY2MmE3LTYxMzctNGJiNS05NzJlLTE0NjZhMGNkYmU3MCIsInN1YiI6IjdmMzA3ZWEyZDA3YjJmMmNjMzlmZTk2MmM2ZmE0MWEwZmUxOThiMzIzNTg4ZTk0ZTk3MTc2Y2Y3OTRhZTViN2MtMmRhZjYyYTctNjEzNy00YmI1LTk3MmUtMTQ2NmEwY2RiZTcwIiwiZXhwIjoxNTU1NTUyMjk0LCJpYXQiOjE1NTU1NDg2OTR9.x4U75GShDLMhyiyUO2B9HIi1Adonzx3Smo01qRhvXuErQSpE_Kxq3rzg1_IIyvoy3SJwwDhSh8KECtGW50eCPg",
    "token_type": "bearer",
    "expires_in": 3600,
    "scope": "[idps_scope]"
}

Passaggio 3: recuperare il collegamento del file ZIP del bundle delle firme

Utilizzare la seguente API per recuperare il collegamento del file del bundle delle firme. NSX Cloud scarica le firme più recenti ogni 24 ore e le salva in un file ZIP. Questa API restituisce un collegamento al file ZIP nella risposta. Copiare e incollare il collegamento nel browser e scaricare il file ZIP.

Percorso URI:

GET https://api.prod.nsxti.vmware.com/2.0/intrusion-services/signatures  

Nella scheda Intestazioni la chiave di autorizzazione ha il valore access_token dalla risposta dell'API di autenticazione.

Authorization: eyJhbGciOiJIUzUxMiJ9.eyJqdGkiOiI3ZjMwN2VhMmQwN2IyZjJjYzM5ZmU5NjJjNmZhNDFhMGZlMTk4YjMyMzU4OGU5NGU5NzE3NmNmNzk0YWU1YjdjLTJkYWY2MmE3LTYxMzctNGJiNS05NzJlLTE0NjZhMGNkYmU3MCIsInN1YiI6IjdmMzA3ZWEyZDA3YjJmMmNjMzlmZTk2MmM2ZmE0MWEwZmUxOThiMzIzNTg4ZTk0ZTk3MTc2Y2Y3OTRhZTViN2MtMmRhZjYyYTctNjEzNy00YmI1LTk3MmUtMTQ2NmEwY2RiZTcwIiwiZXhwIjoxNTU1NTUyMjk0LCJpYXQiOjE1NTU1NDg2OTR9.x4U75GShDLMhyiyUO2B9HIi1Adonzx3Smo01qRhvXuErQSpE_Kxq3rzg1_IIyvoy3SJwwDhSh8KECtGW50eCPg
Risposta:
{
    "signatures_url": "https://ncs-idps-us-west-2-prod-signatures.s3.us-west-2.amazonaws.com/a07fe284ff70dc67194f2e7cf1a8
                       178d69570528.zip?X-Amz-Security-Token=IQoJb3JpZ2luX2VjENf%2F%2F%2F%2F%2F%2F%2F%2F%2F%2FwEaCXVzLXd
                       lc3QtMSJHMEUCIG1UYbzfBxOsm1lvdj1k36LPyoPota0L4CSOBMXgKGhmAiEA%2BQC1K4Gr7VCRiBM4ZTH2WbP2rvIp0qfHfG
                       lOx0ChGc4q6wEIHxABGgw1MTAwMTM3MTE1NTMiDA4H4ir7eJl779wWWirIAdLIx1uAukLwnhmlgLmydZhW7ZExe%2BamDkRU7K
                       T46ZS93mC1CQeL00D2rjBYbCBiG1mzNILPuQ2EyxmqxhEOzFYimXDDBER4pmv8%2BbKnDWPg08RNTqpD%2BAMicYNP7WlpxeZw
                       YxeoBFruCDA2l3eXS6XNv3Ot6T2a%2Bk4rMKHtZyFkzZREIIcQlPg7Ej5q62EvvMFQdo8TyZxFpMJBc4IeG0h1k6QZU1Jlkrq
                       2RYKit5WwLD%2BQKJrEdf4A0YctLbMCDbNbprrUcCADMKyclu8FOuABuK90a%2BvnA%2FJFYiJ32eJl%2Bdt0YRbTnRyvlMuS
                       UHxjNAdyrFxnkPyF80%2FQLYLVDRWUDatyAo10s3C0pzYN%2FvMKsumExy6FIcv%2FOLoO8Y9RaMOTnUfeugpr6YsqMCH0pUR
                       4dIVDYOi1hldNCf1XD74xMJSdnviaxY4vXD4bBDKPnRFFhOxLTRFAWVlMNDYggLh3pV3rXdPnIwgFTrF7CmZGJAQBBKqaxzP
                       MVZ2TQBABmjxoRqCBip8Y662Tbjth7iM2V522LMVonM6Tysf16ls6QU9IC6WqjdOdei5yazK%2Fr9g%3D&X-Amz-Algorithm
                       =AWS4-HMAC-SHA256&X-Amz-Date=20191202T222034Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3599&X-Amz- 
                       Credential=ASIAXNPZPUTA6A7V7P4X%2F20191202%2Fus-west-1%2Fs3%2Faws4_request&X-Amz- 
                       Signature=d85ca4aef6abe22062e2693acacf823f0a4fc51d1dc07cda8dec93d619050f5e",
    "signature_version": "3",
    "sha256_checksum":"d0b7a20eb9b57c9abd90f95c6a29af5f2056fea4a01eb9c8a30a87e0d0fd43a5",
    "last_updated": "2020-03-01T23:59:59Z",
    "version_name": "IDS/IPSSignature.3.2020-03-01T23:59:59Z"
   }

Passaggio 4: caricare il bundle delle firme in NSX Manager

  • Metodo 1: caricamento tramite l'utilizzo dell'interfaccia utente di NSX Manager

    Per caricare il file dall'interfaccia utente di NSX Manager, passare a Sicurezza > IDS/IPS e prevenzione malware > Impostazioni > IDS/IPS e fare clic su Carica firme IDS/IPS. Passare al file ZIP delle firme salvato e caricarlo.

  • Metodo 2: caricamento tramite l'utilizzo di un'API NSX

    Per caricare il file utilizzando l'API di NSX, utilizzare la seguente API.

    POST https://<mgr-ip>/policy/api/v1/infra/settings/firewall/security/intrusion-services/signatures?action=upload_signatures

Gestione dei codici di errore per l'API di autenticazione

Questo è un esempio di risposta all'errore dell'API di autenticazione:

{
"error_code":100101,
"error_message":"XXXXX"
}
  • Se si riceve un codice di errore da 100101-100150, registrarsi nuovamente con lo stesso ID client.
  • Se si riceve un codice di errore da 100151-100200, registrarsi nuovamente con un ID client differente.