Introdução
Este documento descreve como resolver problemas da integração do Umbrella ISR4k
Pré-requisitos
Requisitos
Não existem requisitos específicos para este documento.
Componentes Utilizados
As informações neste documento são baseadas no Cisco Umbrella.
As informações neste documento foram criadas a partir de dispositivos em um ambiente de laboratório específico. Todos os dispositivos utilizados neste documento foram iniciados com uma configuração (padrão) inicial. Se a rede estiver ativa, certifique-se de que você entenda o impacto potencial de qualquer comando.
Overview
Este artigo é uma continuação do guia de implantação do Cisco Umbrella Integration para ISR4k e é fornecido como um guia para ajudar a solucionar problemas de registro, bem como problemas com resolução de DNS interno e externo.
Note: O certificado renovado para api.opendns.com de 29 de maio de 2024 foi assinado por uma nova cadeia/intermediário/raiz. A nova raiz é DigiCert Global Root G2 (serial: 033af1e6a711a9a0bb2864b11d09fae5)
Registro e Importação de Certificado
1. Obtenha seu token de API no Umbrella Dashboard: Admin > Chaves de API > (criar) Dispositivos de Rede Herdados.
2. Importe o certificado CA para o ISR4k via CLI usando um destes métodos:
Importar da URL:
Emita o comando e permita que o ISR4k busque o certificado:
crypto pki trustpool import url http://www.cisco.com/security/pki/trs/ios.p7b
Importar diretamente no terminal:
Copie e cole o certificado CA (consulte o anexo) usando o comando:
(Este certificado é para a raiz global G2 do DigiCert.)
crypto pki trustpool import terminal
-----BEGIN CERTIFICATE-----
MIIDjjCCAnagAwIBAgIQAzrx5qcRqaC7KGSxHQn65TANBgkqhkiG9w0BAQsFADBh
MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3
d3cuZGlnaWNlcnQuY29tMSAwHgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBH
MjAeFw0xMzA4MDExMjAwMDBaFw0zODAxMTUxMjAwMDBaMGExCzAJBgNVBAYTAlVT
MRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5j
b20xIDAeBgNVBAMTF0RpZ2lDZXJ0IEdsb2JhbCBSb290IEcyMIIBIjANBgkqhkiG
9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuzfNNNx7a8myaJCtSnX/RrohCgiN9RlUyfuI
2/Ou8jqJkTx65qsGGmvPrC3oXgkkRLpimn7Wo6h+4FR1IAWsULecYxpsMNzaHxmx
1x7e/dfgy5SDN67sH0NO3Xss0r0upS/kqbitOtSZpLYl6ZtrAGCSYP9PIUkY92eQ
q2EGnI/yuum06ZIya7XzV+hdG82MHauVBJVJ8zUtluNJbd134/tJS7SsVQepj5Wz
tCO7TG1F8PapspUwtP1MVYwnSlcUfIKdzXOS0xZKBgyMUNGPHgm+F6HmIcr9g+UQ
vIOlCsRnKPZzFBQ9RnbDhxSJITRNrw9FDKZJobq7nMWxM4MphQIDAQABo0IwQDAP
BgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBhjAdBgNVHQ4EFgQUTiJUIBiV
5uNu5g/6+rkS7QYXjzkwDQYJKoZIhvcNAQELBQADggEBAGBnKJRvDkhj6zHd6mcY
1Yl9PMWLSn/pvtsrF9+wX3N3KjITOYFnQoQj8kVnNeyIv/iPsGEMNKSuIEyExtv4
NeF22d+mQrvHRAiGfzZ0JFrabA0UWTW98kndth/Jsw1HKj2ZL7tcu7XUIOGZX1NG
Fdtom/DzMNU+MeKNhJ7jitralj41E6Vf8PlwUHBHQRFXGU7Aj64GxJUTFy8bJZ91
8rGOmaFvE7FBcf6IKshPECBV1/MUReXgRPTqh5Uykw7+U0b6LJ3/iyK5S9kJRaTe
pLiaWN0bfVKfjllDiIGknibVb63dDcY3fe0Dkhvld1927jyNxF1WW6LZZm6zNTfl
MrY=
-----END CERTIFICATE-----
Copie e cole o certificado intermediário usando o comando:
(Este certificado é para DigiCert Global G2 TLS RSA SHA256 2020 CA1.)
crypto pki trustpool import terminal
-----BEGIN CERTIFICATE-----
MIIEyDCCA7CgAwIBAgIQDPW9BitWAvR6uFAsI8zwZjANBgkqhkiG9w0BAQsFADBh
MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3
d3cuZGlnaWNlcnQuY29tMSAwHgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBH
MjAeFw0yMTAzMzAwMDAwMDBaFw0zMTAzMjkyMzU5NTlaMFkxCzAJBgNVBAYTAlVT
MRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxMzAxBgNVBAMTKkRpZ2lDZXJ0IEdsb2Jh
bCBHMiBUTFMgUlNBIFNIQTI1NiAyMDIwIENBMTCCASIwDQYJKoZIhvcNAQEBBQAD
ggEPADCCAQoCggEBAMz3EGJPprtjb+2QUlbFbSd7ehJWivH0+dbn4Y+9lavyYEEV
cNsSAPonCrVXOFt9slGTcZUOakGUWzUb+nv6u8W+JDD+Vu/E832X4xT1FE3LpxDy
FuqrIvAxIhFhaZAmunjZlx/jfWardUSVc8is/+9dCopZQ+GssjoP80j812s3wWPc
3kbW20X+fSP9kOhRBx5Ro1/tSUZUfyyIxfQTnJcVPAPooTncaQwywa8WV0yUR0J8
osicfebUTVSvQpmowQTCd5zWSOTOEeAqgJnwQ3DPP3Zr0UxJqyRewg2C/Uaoq2yT
zGJSQnWS+Jr6Xl6ysGHlHx+5fwmY6D36g39HaaECAwEAAaOCAYIwggF+MBIGA1Ud
EwEB/wQIMAYBAf8CAQAwHQYDVR0OBBYEFHSFgMBmx9833s+9KTeqAx2+7c0XMB8G
A1UdIwQYMBaAFE4iVCAYlebjbuYP+vq5Eu0GF485MA4GA1UdDwEB/wQEAwIBhjAd
BgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwdgYIKwYBBQUHAQEEajBoMCQG
CCsGAQUFBzABhhhodHRwOi8vb2NzcC5kaWdpY2VydC5jb20wQAYIKwYBBQUHMAKG
NGh0dHA6Ly9jYWNlcnRzLmRpZ2ljZXJ0LmNvbS9EaWdpQ2VydEdsb2JhbFJvb3RH
Mi5jcnQwQgYDVR0fBDswOTA3oDWgM4YxaHR0cDovL2NybDMuZGlnaWNlcnQuY29t
L0RpZ2lDZXJ0R2xvYmFsUm9vdEcyLmNybDA9BgNVHSAENjA0MAsGCWCGSAGG/WwC
ATAHBgVngQwBATAIBgZngQwBAgEwCAYGZ4EMAQICMAgGBmeBDAECAzANBgkqhkiG
9w0BAQsFAAOCAQEAkPFwyyiXaZd8dP3A+iZ7U6utzWX9upwGnIrXWkOH7U1MVl+t
wcW1BSAuWdH/SvWgKtiwla3JLko716f2b4gp/DA/JIS7w7d7kwcsr4drdjPtAFVS
slme5LnQ89/nD/7d+MS5EHKBCQRfz5eeLjJ1js+aWNJXMX43AYGyZm0pGrFmCW3R
bpD0ufovARTFXFZkAdl9h6g4U5+LXUZtXMYnhIHUfoyMo5tS58aI7Dd8KvvwVVo4
chDYABPPTHPbqjc1qCmBaZx2vN4Ye5DUys/vZwP9BFohFrH/6j/f3IL16/RZkiMN
JCqVJUzKoZHm1Lesh3Sz8W2jmdv51b2EQJ8HmA==
-----END CERTIFICATE-----
3. Insira o token de API para a CLI do ISR4k usando o comando:
parameter-map type umbrella global
token XXXXXXXXXXXXXXXXXXXXXXXXXXXX
4. Esta é a configuração mínima básica de exemplo no ISR4k:
interface GigabitEthernet0/0/0
ip address 192.168.50.249 255.255.255.252
ip nat outside
umbrella out
interface GigabitEthernet0/0/1.10
encapsulation dot1Q 10
ip address 192.168.8.254 255.255.255.0
ip nat inside
umbrella in odns_v10_5
Informações adicionais:
- Certifique-se de configurar o comando "umbrella out" antes do comando "umbrella in".
- O registro pode ser bem-sucedido apenas quando a porta 443 está em um estado aberto e permite que o tráfego passe por qualquer firewall existente.
- Na versão mais antiga do Cisco IOS XE Denali, o comando OpenDNS é usado no lugar do Umbrella.
Verificação da Importação de Certificado e Registro de Dispositivo
1. Verifique se o certificado CA foi armazenado com êxito no dispositivo ISR4k:
- Se a importação do certificado foi feita usando o URL, emita o comando
dir nvram:
para verificar se o certificado ios.p7b foi armazenado com êxito na NVRAM do dispositivo.
115016968663
- Se a importação do certificado foi feita usando o método copy/paste, execute o comando
show cry pki trustpool
e verifique o número de série e o cn do certificado:
28552066223252
2. Para verificar o registro bem-sucedido do ISR4k, execute o comando show umbrella deviceid.
Saída de exemplo:
Device registration details
Interface Name Tag Status Device Id
interface GigabitEthernet0/0/1.10 odns_v10_5 200 SUCCES 010a04efd4e4bc14
interface GigabitEthernet0/0/1.11 odns_v11 200 SUCCES 010a04efd4e4xy15
Saída do painel:
115016791766
Depuração e registro
- Verificar a versão do ISR4k:
show version
ou show platform
(necessário Cisco IOS XE Denali 16.3 ou mais recente)
- Habilitar logs de depuração de registro de dispositivo: "
debug umbrella device-registration"
e depois "show logging"
(para desabilitar - no debug umbrella device-registration
)
Estes são logs de exemplo:
Certificado ausente:
Jun 13 04:05:32.639: %OPENDNS-3-SSL_HANDSHAKE_FAILURE: SSL handshake failed
Certificado instalado e dispositivo registrado com êxito:
*%PKI-6-TRUSTPOOL_DOWNLOAD_SUCCESS: Trustpool Download is successful
*%OPENDNS-6-DEV_REG_SUCCESS: Device id for interface/tag GigabitEthernet0/0/1/odns_v10_5 is 010a0e4bc14
Api.opendns.com não pode ser resolvido:
*%UMBRELLA-3-DNS_RES_FAILURE: Failed to resolve name api.opendns.com Retry attempts:0
- Verifique a resolução DNS: Não há nenhum comando 'dig' ou 'nslookup' disponível no ISR4k. É melhor usar "
ping hostname source interface #"
da CLI do ISR4k
- ISR com VRF configurado: Na interface, verifique se você tem "
ip name-server vrf <vrf_name> <dns_server_ip>
" configurado e verifique com "ping vrf <vrf_name> api.opendns.com"
- Verifique se o "servidor ip dns" está configurado: Isso permite que o ISR seja consultado diretamente.
- Para desativar o DNSCrypt, digite este comando:
parameter-map type umbrella global > no dnscrypt
- Verificação de domínio interno: execute o comando
show umbrella config
e procure o Local Domain Regex, por exemplo:
show umbrella config
> Local Domain Regex parameter-map: desvio de DNS
show run | be dns_bypass
show platform hardware qfp ative feature dns-snoop-agent client hw-pattern-list
- Não é possível importar certificado usando URL ou o certificado importado usando terminal está sendo excluído após a reinicialização:
crypto pki trustpool import url http://www.cisco.com/security/pki/trs/ios.p7b
% Error: failed to open file.
% No certificates imported from http://www.cisco.com/security/pki/trs/ios.p7b.
Solução alternativa: baixe manualmente o pacote de certificados "ios.p7b" via curl e copie para a flash do Roteador > Limpar certificado existente do pool > Importar pacote de certificados "ios.p7b" da flash:
Show run | sec crypto pki
crypto pki certificate pool
cabundle nvram:Trustpool15.cer
crypto pki trustpool clean
crypto pki trustpool import url flash:ios.p7b
Reading file from bootflash:ios.p7b
% PEM files import succeeded.