Introduzione
Questo documento descrive come risolvere i problemi di integrazione del controller wireless serie 9800 con Umbrella.
Panoramica
Questo articolo è la continuazione degli switch Cisco Catalyst 9200 e Catalyst 9300 e serve da guida per la risoluzione dei problemi di registrazione e del flusso di lavoro tra 9800 e Cisco Umbrella.
Flusso di lavoro generale di Cisco Umbrella
4415377983508
-
La registrazione del controller wireless con il server Cisco Umbrella è un processo che viene eseguito una sola volta su un tunnel HTTPS sicuro.
-
Ottenere il token API per la registrazione del dispositivo (9800) da Cisco Umbrella Dashboard.
-
Applicare il Token su 9800. Il dispositivo viene registrato nell'account Cisco Umbrella. Quindi, creare Cisco Umbrella Profile/s su 9800. I profili vengono automaticamente inviati a Cisco Umbrella quando le identità e le policy vengono applicate in base alle singole identità.
-
Il traffico dei client wireless passa al server Cisco Umbrella.
-
Un client wireless invia una richiesta DNS a 9800.
-
9800 scarta il pacchetto DNS e lo contrassegna con un profilo Cisco Umbrella. Il profilo è l'identità del pacchetto che risiede anche su Cisco Umbrella.
-
Questo pacchetto EDNS viene reindirizzato al server cloud Cisco Umbrella per la risoluzione dei nomi.
-
Cisco Umbrella quindi applica una policy a seconda dell'identità e applica regole di filtro basate su categorie per garantire la conformità aziendale.
-
A seconda delle regole, restituisce una pagina bloccata o un indirizzo IP risolto al client per la richiesta DNS richiesta.
Per ulteriori informazioni sulla configurazione di 9800, consultare la Guida alla configurazione della protezione.
Registrazione e importazione certificati
- Ottenere il token API da Umbrella Dashboard: Admin > Chiavi API > (crea) Dispositivi di rete legacy.
- Importare il certificato CA in 9800 tramite CLI utilizzando uno dei metodi seguenti:
Importa da URL
Eseguire il comando e consentire a 9800 di recuperare il certificato:
crypto pki trustpool import url http://www.cisco.com/security/pki/trs/ios.p7b
Importa direttamente nel terminale
Copiare e incollare il certificato CA (vedere l'allegato) utilizzando il comando:
crypto pki trustpool import terminal
- Immettere il token API su 9800 CLI utilizzando il comando:
parameter-map type umbrella global
token XXXXXXXXXXXXXXXXXXXXXXXXXXXX
Verifica della configurazione di Cisco Umbrella
Per visualizzare i dettagli della configurazione di Cisco Umbrella, utilizzare questo comando:
Device# show umbrella config
Umbrella Configuration
========================
Token: 5XXXXXXABXXXXXFXXXXXXXXXDXXXXXXXXXXXABXX
API-KEY: NONE
OrganizationID: xxxxxxx
Local Domain Regex parameter-map name: dns_bypass
DNSCrypt:Enabled
Public-key: B735:1140:206F:225D:3E2B:D822:D7FD:691E:A1C3:3CC8:D666:8D0C:BE04:BFAB:CA43:FB79
UDP Timeout: 5 seconds
Resolver address:
1. 208.67.220.220
2. 208.67.222.222
3. 2620:119:53::53
4. 2620:119:35::35
ewc1#show umbrella deviceid detailed
Device registration details
1.global
Tag : global
Device-id : 010a2ed75e520fda
Description : Device Id recieved successfully
WAN interface : None
ewc1#show umbrella dnscrypt
DNSCrypt: Enabled
Public-key: B735:1140:206F:225D:3E2B:D822:D7FD:691E:A1C3:3CC8:D666:8D0C:BE04:BFAB:CA43:FB79
Certificate Update Status:
Last Successfull Attempt: 10:40:58 UTC Apr 8 2020
Certificate Details:
Certificate Magic : DNSC
Major Version : 0x0001
Minor Version : 0x0000
Query Magic : 0x7163373861576F6F
Serial Number : 1574811744
Start Time : 1574811744 (23:42:24 UTC Nov 26 2019)
End Time : 1606347744 (23:42:24 UTC Nov 25 2020)
Server Public Key : 88B4:E44B:35E9:64B4:90BD:DABA:E825:A24B:0415:A08B:E19D:7DDB:87A3:3CD7:7EDF:8E2F
Client Secret Key Hash: E323:7E82:C0C2:1F0C:55AE:1473:862D:6D26:9607:B41D:3F51:F587:9482:8709:401E:2EC4
Client Public key : 8D52:4D73:CF69:4890:F130:2845:4CBE:A9CA:87AF:4CDA:FE17:C626:2F8A:1780:CD18:C855
NM key Hash : FAAD:4C16:6DA3:D6F3:655D:FF98:36B7:73E7:9D1C:21F5:A0E3:A083:17D7:C308:522E:722D
Debug e registrazione
Per disabilitare DNSCrypt, utilizzare questo comando:
parameter-map type umbrella global > no dnscrypt
È possibile che venga visualizzato il seguente errore: "Impossibile importare il certificato utilizzando l'URL":
crypto pki trustpool import urlhttp://www.cisco.com/security/pki/trs/ios.p7b
% Error: failed to open file.
% No certificates imported fromhttp://www.cisco.com/security/pki/trs/ios.p7b.
Soluzione temporanea:
Copiare e incollare manualmente il certificato CA in formato PEM da questo percorso.
Quindi, abilitare i registri di debug della registrazione del dispositivo:
debug umbrella dnscrypt
debug umbrella device-registration
debug umbrella config
term monitor
Nota: In alcuni casi, è possibile assegnare lo stesso ID dispositivo a più 9800. Ciò accade nel caso di Virtual 9800 (Embedded Wireless Controller (WC)).
Tutti i WC virtuali hanno lo stesso indirizzo MAC hardcoded: "CC46D6CCCC".
Esempio di debug da eWC A:
Nov 2 19:21:18.903 Central: UMBRELLA-DEV-REG:Device registration process start: umbrella parameter-map global (tag: global): TCP socket created, connect state will be verified before sending out request
Nov 2 19:21:18.915 Central: UMBRELLA-DEV-REG:Socket 0 event handler: event type = WRITE EVENT
Nov 2 19:21:18.915 Central: UMBRELLA-DEV-REG:Send POST request invoked
Nov 2 19:21:18.915 Central: UMBRELLA-DEV-REG:Get registration request info invoked
Nov 2 19:21:18.915 Central: UMBRELLA-DEV-REG:Get registration request info: Found new queued request for umbrella parameter-map global (tag: global), status :REQ QUEUED
Nov 2 19:21:18.915 Central: UMBRELLA-DEV-REG:Send POST request for umbrella parameter-map global (tag: global): status = 1
Nov 2 19:21:18.915 Central: UMBRELLA-DEV-REG:Send POST request for umbrella parameter-map global (tag: global): request license mode = TOKEN
Nov 2 19:21:18.915 Central: UMBRELLA-DEV-REG:Send POST request for umbrella parameter-map global (tag: global): POST size = 238, JSON size = 174,actual size = 412 , uri_size = 18
Nov 2 19:21:18.915 Central: UMBRELLA-DEV-REG:
Nov 2 19:21:18.915 Central: Dev reg json buffer :{"model":"B77A8731C7F4D6E92C07D7DCB68961470000A553","macAddress":"CC46D6CCCCCC","label":"global","tag":"global","serialNumber":"9KZNYR9FRRQ"} and bytes: 141
Nov 2 19:21:18.915 Central: UMBRELLA-DEV-REG:
Nov 2 19:21:18.915 Central: umbrella parameter-map name :global macAddr :cc46.d6cc.cccc
Nov 2 19:21:18.915 Central: UMBRELLA-DEV-REG:Build POST request invoked: post size = 238, size = 141
Nov 2 19:21:18.915 Central: UMBRELLA-DEV-REG:Build POST request: hostname = api.opendns.com
Nov 2 19:21:18.915 Central: UMBRELLA-DEV-REG:Build POST request: URI = /v3/networkdevices
Nov 2 19:21:18.916 Central: UMBRELLA-DEV-REG:Build POST request done
Nov 2 19:21:18.916 Central: UMBRELLA-DEV-REG:Send POST request for umbrella parameter-map global (tag: global): request buffer length = 368
Nov 2 19:21:18.916 Central: UMBRELLA-DEV-REG:Send POST request for umbrella parameter-map global (tag: global): Built request = POST /v3/networkdevices HTTP/1.1
Host: api.opendns.com
Authorization:OpenDNS,api_key="B0E16D19C32D42EC996B635X4X9005B9",token="B77A8731C7F4D6E92C07D7DCB68961470000A553"
Content-Type: application/json
Content-Length: 141
{"model":"B77A7561C7F4ABC92C07D7DCB68961470000A553","macAddress":"CC46D6CCCCCC","label":"global","tag":"global","serialNumber":"9KZNYR9FRRQ"}
----------------------------------------<OUTPUT OMITTED>----------------------------------------
Nov 2 19:21:23.553 Central: UMBRELLA-DEV-REG:Registration response: msg_part = 3, bytes = 256, resp: content-type: application/json
x-envoy-upstream-service-time: 1462
x-xss-protection: 1; mode=block
x-ingress-point: mil1
{"deviceId":"010a7859d0d39393","deviceKey":"B77A8731C7F4D6E92C07D7DCB68961470000A553-CC46D6CCCCCC-global","label":"global","seria
Nov 2 19:21:23.553 Central: UMBRELLA-DEV-REG:Registration response: msg_part = 4, bytes = 1
78, resp: lNumber":"9KZNYR9FPPQ","phishing":1,"createdAt":1635877282,"originId":xxxxxxxx,"
apiKey":"b0e16d19c32d42ec996b635x4x9005b9","deviceTypeId":1,"vendorId":51,"organizationId":xxxxx}
Esempio di debug da eWC B:
Nov 2 19:21:41.909 Central: UMBRELLA-DEV-REG:Device registration process start: umbrella parameter-map global (tag: global): TCP socket created, connect state will be verified before sending out request
Nov 2 19:21:41.919 Central: UMBRELLA-DEV-REG:Socket 0 event handler: event type = WRITE EVENT
Nov 2 19:21:41.919 Central: UMBRELLA-DEV-REG:Send POST request invoked
Nov 2 19:21:41.919 Central: UMBRELLA-DEV-REG:Get registration request info invoked
Nov 2 19:21:41.919 Central: UMBRELLA-DEV-REG:Get registration request info: Found new queued request for umbrella parameter-map global (tag: global), status :REQ QUEUED
Nov 2 19:21:41.919 Central: UMBRELLA-DEV-REG:Send POST request for umbrella parameter-map global (tag: global): status = 1
Nov 2 19:21:41.919 Central: UMBRELLA-DEV-REG:Send POST request for umbrella parameter-map global (tag: global): request license mode = TOKEN
Nov 2 19:21:41.919 Central: UMBRELLA-DEV-REG:Send POST request for umbrella parameter-map global (tag: global): POST size = 238, JSON size = 174,actual size = 412 , uri_size = 18
Nov 2 19:21:41.919 Central: UMBRELLA-DEV-REG:
Nov 2 19:21:41.919 Central: Dev reg json buffer :{"model":"B77A7561C7F4ABC92C07D7DCB68961470000A553","macAddress":"CC46D6CCCCCC","label":"global","tag":"global","serialNumber":"9BRCYQ9KDRU"} and bytes: 141
Nov 2 19:21:41.919 Central: UMBRELLA-DEV-REG:
Nov 2 19:21:41.919 Central: umbrella parameter-map name :global macAddr :cc46.d6cc.cccc
Nov 2 19:21:41.919 Central: UMBRELLA-DEV-REG:Build POST request invoked: post size = 238, size = 141
Nov 2 19:21:41.919 Central: UMBRELLA-DEV-REG:Build POST request: hostname = api.opendns.com
Nov 2 19:21:41.919 Central: UMBRELLA-DEV-REG:Build POST request: URI = /v3/networkdevices
Nov 2 19:21:41.919 Central: UMBRELLA-DEV-REG:Build POST request done
Nov 2 19:21:41.919 Central: UMBRELLA-DEV-REG:Send POST request for umbrella parameter-map global (tag: global): request buffer length = 368
Nov 2 19:21:41.919 Central: UMBRELLA-DEV-REG:Send POST request for umbrella parameter-map global (tag: global): Built request = POST /v3/networkdevices HTTP/1.1
Host: api.opendns.com
Authorization:OpenDNS,api_key="B0E16D19C32D42EC996B635X4X9005B9",token="B77A8731C7F4D6E92C07D7DCB68961470000A553"
Content-Type: application/json
Content-Length: 141
{"model":"B77A8731C7F4D6E92C07D7DCB68961470000A553","macAddress":"CC46D6CCCCCC","label":"global","tag":"global","serialNumber":"9BRCYQ8RDRU"}
----------------------------------------<OUTPUT OMITTED>----------------------------------------
Nov 2 19:21:41.919 Central: UMBRELLA-DEV-REG:Registration response: msg_part = 3, bytes = 256, resp: content-type: application/json
x-envoy-upstream-service-time: 1462
x-xss-protection: 1; mode=block
x-ingress-point: mil1
{"deviceId":"010a7859d0d39393","deviceKey":"B77A8731C7F4D6E92C07D7DCB68961470000A553-CC46D6CCCCCC-global","label":"global","serialNumber":"9BRCYQ8RDRU"}
Nov 2 19:21:41.919 Central: UMBRELLA-DEV-REG:Registration response: msg_part = 4, bytes = 1
78, resp: lNumber":"9KZNYR9FPPQ","phishing":1,"createdAt":1635877282,"originId":573529511,"
apiKey":"b0e16d19c32d42ec996b635x4x9005b9","deviceTypeId":1,"vendorId":51,"organizationId":xxxxx}
La richiesta POST contiene il token API (token API dispositivo legacy dal Cisco Umbrella Dashboard), la chiave API, il numero di modello (uguale al token API), l'indirizzo MAC del controller WLC (Wireless LAN Controller), il nome della mappa dei parametri (tag) e il numero di serie del dispositivo.
L'ID dispositivo viene generato utilizzando il token API, la chiave API, il tag e l'indirizzo MAC. Poiché entrambi i modelli 9800 hanno gli stessi valori per i precedenti, a entrambi viene assegnato lo stesso ID di dispositivo.
Si tratta di un comportamento previsto. Per risolvere il problema, è necessario creare una mappa dei parametri
personalizzata su uno o su entrambi gli switch 9800;
parameter-map type umbrella <custom name>
La creazione di una mappa dei parametri
personalizzata "cpm"
comporta la creazione di un nuovo tag che genera un ID di dispositivo (deviceId
) diverso.
{"deviceId":"010a30f6275c92ce","deviceKey":"0DCDA24CDD6A92D714FE357539FDCAE80051BA0A-DD46D6BBCCCC-global","label":"global","serialNumber":"F222424Q4M8","phishing":1,"createdAt":1641192490,"originId":563829932,"apiKey":"b0e16d15c32d4e8c996b635afa9005b9","deviceTypeId":1,"vendorId":51,"organizationId":******}
{"deviceId":"010a341b037ea6b9","deviceKey":"0DCDA24CDD6A92D714FE357539FDCAE80051BA0A-DD46D6BBCCCC-cpm","label":"global","serialNumber":"F222424Q4M8","phishing":1,"createdAt":1641825561,"originId":563829932,"apiKey":"b0e16d15c32d4e8c996b635afa9005b9","deviceTypeId":1,"vendorId":51,"organizationId":******}