Contents

Introdução

Pré-requisitos

Requisitos

Componentes Utilizados

Informações de Apoio

Configurar

Passo 1: Definir uma Chave

Passo 2: Gerar uma CSR (Certificate Signing Request, solicitação de assinatura de certificado)

Passo 3: Enviar o CSR para a autoridade de certificação

Passo 4: Autenticar Certificado CA Base64 Raiz

Passo 5: Autenticar Certificado de Dispositivo Base64

Passo 6: Importar certificado assinado do dispositivo no switch Catalyst 9000

Passo 7: Usar o novo certificado

Passo 8: Como garantir que o certificado seja confiável para navegadores da Web

Verificar

Troubleshooting

Informações Relacionadas

Introdução

Este documento descreve o processo para gerar, fazer download e instalar certificados nos Catalyst 9000 Series Switches.

Pré-requisitos

Requisitos

A Cisco recomenda que você tenha conhecimento destes tópicos:

- Como configurar os switches da série Catalyst 9000

- Como assinar certificados usando o Microsoft Windows Server

- Infraestrutura de Chave Pública (PKI) e certificados digitais

Componentes Utilizados

As informações neste documento são baseadas nestas versões de software e hardware:

- Switch Cisco Catalyst 9300, Cisco IOS® XE versão 17.12.4

- Microsoft Windows Server 2022

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.

Informações de Apoio

Este documento fornece um guia passo a passo para gerar uma CSR (Certificate Signing Request, solicitação de assinatura de certificado), obtê-la assinada por uma CA (Certification Authority, autoridade de certificação) e instalar o certificado resultante (juntamente com o certificado CA) em um switch Catalyst 9000.

O objetivo é permitir a administração segura da Web (HTTPS) do switch usando um certificado confiável, garantindo a compatibilidade com navegadores da Web modernos e a conformidade com políticas de segurança organizacionais.

Configurar

Esta seção fornece um fluxo de trabalho detalhado para gerar, assinar e instalar um certificado de administrador da Web em um switch Catalyst 9000. Cada etapa inclui comandos CLI relevantes, explicações e exemplos de saída.

Passo 1: Definir uma Chave

Gere um par de chaves RSA de uso geral e use-o para proteger o certificado. A chave deve ser exportável e pode ser dimensionada de acordo com as necessidades de segurança (1024 a 4096 bits).

device(config)#crypto key generate rsa general-keys label csr-key exportable

Exemplo de saída quando solicitado o tamanho do módulo:

The name for the keys will be: csr-key

Choose the size of the key modulus in the range of 512 to 4096 for your  General Purpose Keys. Choosing a key modulus greater than 512 may take  a few minutes.

How many bits in the modulus [1024]: 4096

% Generating 4096 bit RSA keys, keys will be exportable...

[OK] (elapsed time was 4 seconds)

Passo 2: Gerar uma CSR (Certificate Signing Request, solicitação de assinatura de certificado)

Configure um ponto confiável no switch para o certificado de administrador da Web, especificando a inscrição via terminal, desabilitando a verificação de revogação e fornecendo informações de identificação (nome da entidade, chave e nomes alternativos da entidade).

device(config)#crypto pki trustpoint webadmin-TP

device(ca-trustpoint)#enrollment terminal pem

device(ca-trustpoint)#revocation-check none

device(ca-trustpoint)#subject-name C=SJ, ST=CA, L=CA, O=TAC, OU=LANSW, CN=myc9300.local-domain

device(ca-trustpoint)#rsakeypair csr-key

device(ca-trustpoint)#subject-alt-name mywebadmin.com

device(ca-trustpoint)#exit

Registre o ponto confiável para gerar o CSR. Você deve ser solicitado a fornecer várias opções; fornecer "sim" ou "não" conforme necessário. A solicitação de certificado deve ser exibida no terminal.

device(config)#crypto pki enroll webadmin-TP

Saída de exemplo:

% Start certificate enrollment ..

% The subject name in the certificate will include: C=SJ, ST=CA, L=CA, O=TAC, OU=LANSW, CN=myc9300.local-domain

% The subject name in the certificate will include: C9300.cisco.com

% Include the router serial number in the subject name? [yes/no]: yes

% Include an IP address in the subject name? [no]: yes

Display Certificate Request to terminal? [yes/no]: yes

Certificate Request follows:

-----BEGIN CERTIFICATE REQUEST-----

-----END CERTIFICATE REQUEST-----

---End - This line not part of the certificate request---

Redisplay enrollment request? [yes/no]: no

Parâmetros disponíveis para a configuração do nome do assunto:

- C : País, somente duas letras maiúsculas (EUA)

- ST: Nome do estado ou província

- I: Nome do local (cidade)

- O: Nome da organização (empresa)

- OU: Nome da unidade organizacional (departamento/seção)

- CN: Nome comum (FQDN ou endereço IP a ser acessado)

Passo 3: Enviar o CSR para a autoridade de certificação

Copie a sequência de caracteres CSR completa (incluindo as linhas BEGIN e END) e envie-a à sua CA para assinatura.

-----BEGIN CERTIFICATE REQUEST-----

-----END CERTIFICATE REQUEST-----

Se você usar uma CA do Microsoft Windows Server, baixe o certificado assinado no formato Base64. Normalmente, você recebe o certificado do dispositivo assinado e, possivelmente, um certificado de CA raiz.

Passo 4: Autenticar Certificado CA Base64 Raiz

Instale o certificado da CA (no formato Base64) no switch para estabelecer confiança na CA que emitiu o certificado do dispositivo.

device(config)#crypto pki authenticate webadmin-TP

Cole o certificado da CA (incluindo as linhas BEGIN e END) quando solicitado. Exemplo:

Enter the base 64 encoded CA certificate.

End with a blank line or the word "quit" on a line by itself

-----BEGIN CERTIFICATE-----

-----END CERTIFICATE-----

Certificate has attributes:

Fingerprint MD5: C7224F3A A9B0426A FDCC50E6 8A04583E

Fingerprint SHA1: 9B31C319 A515AC41 0114EA43 33716E8B 472A4EF5

% Do you accept this certificate? [yes/no]: yes

Trustpoint CA certificate accepted.

% Certificate successfully imported

Passo 5: Autenticar Certificado de Dispositivo Base64

Autentique o certificado assinado do dispositivo com o certificado de autoridade de certificação instalado.

device(config)#crypto pki trustpoint webadmin-TP

device(ca-trustpoint)#chain-validation stop

device(ca-trustpoint)#crypto pki authenticate webadmin-TP

Quando solicitado, cole no certificado do dispositivo:

Enter the base 64 encoded CA certificate.

End with a blank line or the word "quit" on a line by itself

-----BEGIN CERTIFICATE-----

-----END CERTIFICATE-----

Certificate has the following attributes:

Fingerprint MD5: DD05391A 05B62573 A38C18DD CDA2337C

Fingerprint SHA1: 596DD2DC 4BF26768 CFB14546 BC992C3F F1408809

Certificate validated - Signed by existing trustpoint CA certificate.

Trustpoint CA certificate accepted.

% Certificate successfully imported

Passo 6: Importar certificado assinado do dispositivo no switch Catalyst 9000

Importe o certificado de dispositivo assinado Base64 para o ponto confiável.

device(config)#crypto pki import webadmin-TP certificate

Cole o certificado quando solicitado:

Enter the base 64 encoded certificate.

End with a blank line or the word "quit" on a line by itself

-----BEGIN CERTIFICATE-----

< 9300 device certificate >

-----END CERTIFICATE-----

% Router Certificate successfully imported

Nesse ponto, o certificado do dispositivo é importado para o switch junto com todas as CAs relevantes e o certificado está pronto para uso, incluindo o acesso à GUI (HTTPS).

Passo 7: Usar o novo certificado

Associe o ponto confiável ao servidor seguro HTTP e habilite o acesso HTTPS no switch.

device(config)#ip http secure-trustpoint webadmin-TP

device(config)#no ip http secure-server

device(config)#ip http secure-server

Passo 8: Como garantir que o certificado seja confiável para navegadores da Web

- O Nome Comum (CN) do certificado ou um Nome Alternativo da Entidade (SAN) deve corresponder à URL acessada pelo navegador.

- O certificado deve estar dentro do seu período de validade.

- O certificado deve ser emitido por uma CA (ou cadeia de CAs) cuja raiz é confiável pelo navegador. O switch deve fornecer a cadeia completa de certificados (exceto a CA raiz, que normalmente já está presente no armazenamento do navegador).

- Se o certificado contiver listas de revogação, verifique se o navegador pode baixá-las e se o CN do certificado não está listado em nenhuma lista de revogação.

Verificar

Você pode usar estes comandos para verificar a configuração do certificado e o status atual:

Exibir os certificados instalados e seu status para um ponto confiável:

device#show crypto pki certificate webadmin-TP

Saída de exemplo:

Certificate  Status: Available

Certificate Serial Number (hex): 4700000129584BB4BAFA13EABB000000000129

Certificate Usage: General Purpose

Issuer:     cn=mitch-DC02-CA    dc=mitch    dc=local

Subject:    Name: C9300.cisco.com

Serial Number: XXXXXXXXXX

cn=myc9300.local-domain

ou=LANSW

o=TAC

l=CA

st=CA

c=SJ

hostname=C9300.cisco.com

Validity Date:

start date: 05:09:42 UTC Jun 12 2025

end   date: 07:25:06 UTC Dec 16 2026

Associated Trustpoints: webadmin-TP

CA Certificate  Status: Available

Certificate Serial Number (hex): 101552448B9C2EBB488C40034C129F4A

Certificate Usage: Signature

Issuer:     cn=mitch-DC02-CA    dc=mitch    dc=local

Subject:     cn=mitch-DC02-CA    dc=mitch    dc=local

Validity Date:

start date: 07:15:06 UTC Dec 16 2021

end   date: 07:25:06 UTC Dec 16 2026

Associated Trustpoints: webadmin-TP RootCA

Verifique o status do servidor HTTPS e o ponto de confiança associado:

device#show ip http server secure status

Saída de exemplo:

HTTP secure server status: Enabled

HTTP secure server port: 443

HTTP secure server ciphersuite:  rsa-aes-cbc-sha2 rsa-aes-gcm-sha2

dhe-aes-cbc-sha2 dhe-aes-gcm-sha2

ecdhe-rsa-aes-cbc-sha2

ecdhe-rsa-aes-gcm-sha2 ecdhe-ecdsa-aes-gcm-sha2

HTTP secure server TLS version:  TLSv1.2 TLSv1.1

HTTP secure server client authentication: Disabled

HTTP secure server PIV authentication: Disabled

HTTP secure server PIV authorization only: Disabled

HTTP secure server trustpoint: webadmin-TP

HTTP secure server peer validation trustpoint:

HTTP secure server ECDHE curve: secp256r1

HTTP secure server active session modules: ALL

Troubleshooting

Se você encontrar problemas durante o processo de instalação do certificado, use esses comandos para ativar a depuração de transações PKI. Isso é especialmente útil para diagnosticar falhas durante a importação ou registro de certificados.

device#debug crypto pki transactions

Exemplo de uma saída de depuração de cenário bem-sucedida:

*Jun 12 05:16:03.531: %CRYPTO_ENGINE-5-KEY_ADDITION: A key named C9300.cisco.com has been generated or imported by crypto-engine

*Jun 12 05:16:03.534: %CRYPTO-6-AUTOGEN: Generated new 2048 bit key pair

*Jun 12 05:16:03.556: CRYPTO_PKI: unlocked trustpoint RootCA, refcount is 0

*Jun 12 05:16:03.556: CRYPTO_PKI: using private key C9300.cisco.com for enrollment

*Jun 12 05:16:04.489: CRYPTO_PKI: Adding myc9300.local-domain to subject-alt-name field

*Jun 12 05:16:17.463: CRYPTO_PKI: using private key csr-key for enrollment

*Jun 12 05:18:32.378: CRYPTO_PKI: locked trustpoint webadmin-TP, refcount is 1

*Jun 12 05:19:15.464: CRYPTO_PKI: unlocked trustpoint webadmin-TP, refcount is 0

*Jun 12 05:19:15.470: CRYPTO_PKI: trustpoint webadmin-TP authentication status = 0

*Jun 12 05:19:15.472: CRYPTO_PKI: (A018E) Session started - identity not specified

*Jun 12 05:19:15.473: CRYPTO_PKI: crypto_pki_get_cert_record_by_subject()

*Jun 12 05:19:15.473: CRYPTO_PKI: Found a subject match

*Jun 12 05:19:15.473: CRYPTO_PKI: (A018E) Check for identical certs

*Jun 12 05:19:15.473: CRYPTO_PKI: Found a issuer match

*Jun 12 05:19:15.473: CRYPTO_PKI: (A018E) Suitable trustpoints are: RootCA,

*Jun 12 05:19:15.473: CRYPTO_PKI: (A018E) Attempting to validate certificate using RootCA policy

*Jun 12 05:19:15.473: CRYPTO_PKI: (A018E) Using RootCA to validate certificate

*Jun 12 05:19:15.474: CRYPTO_PKI(make trusted certs chain)

*Jun 12 05:19:15.474: CRYPTO_PKI: Added 1 certs to trusted chain.

*Jun 12 05:20:05.555: CRYPTO_PKI: locked trustpoint webadmin-TP, refcount is 1

*Jun 12 05:20:25.734: CRYPTO_PKI: unlocked trustpoint webadmin-TP, refcount is 0

*Jun 12 05:20:25.735: CRYPTO_PKI(Cert Lookup) issuer="cn=mitch-DC02-CA,dc=mitch,dc=local" serial number= 10 15 52 44 8B 9C 2E BB 48 8C 40 03 4C 12 9F 4A

*Jun 12 05:20:25.735: CRYPTO_PKI: crypto_pki_get_cert_record_by_cert()

*Jun 12 05:20:25.735: CRYPTO_PKI: Found a cert match

*Jun 12 05:20:25.735: CRYPTO_PKI: crypto_pki_authenticate_tp_cert()

*Jun 12 05:20:25.735: CRYPTO_PKI: trustpoint webadmin-TP authentication status = 0

*Jun 12 05:20:32.094: PKI: Cert key-usage: Digital-Signature , Certificate-Signing , CRL-Signing

*Jun 12 05:20:32.096: CRYPTO_PKI: Notify subsystem about new certificate.

*Jun 12 05:20:32.097: CRYPTO_PKI: unlocked trustpoint webadmin-TP, refcount is 0

*Jun 12 05:21:50.789: CRYPTO_PKI: using private key csr-key for enrollment

*Jun 12 05:22:12.947: CRYPTO_PKI: make trustedCerts list for webadmin-TP

Notas e limitações

- O Cisco IOS® XE não suporta certificados CA com validade superior a 2099 (ID de bug Cisco CSCvp64208 ).

- O Cisco IOS® XE não suporta pacotes SHA256 message digest PKCS 12 (certificados SHA256 são suportados, mas não se o próprio pacote PKCS12 for assinado com SHA256) (ID de bug Cisco CSCvz41428 ). Isso foi corrigido em 17.12.1.

Informações Relacionadas

- Suporte técnico e downloads da Cisco