Guia de Descoberta de Certificados em Appliances de Rede

Visão Geral

O Gateway PKIGuardian suporta descoberta automatizada de certificados em appliances de rede, incluindo roteadores, switches, firewalls, balanceadores de carga e controladores wireless. Este guia aborda a configuração, fornecedores suportados e solução de problemas para descoberta de certificados em appliances de rede.

Índice

Fornecedores Suportados

O PKIGuardian suporta atualmente os seguintes fabricantes de appliances de rede:

Fabricante Tipos de Dispositivo Métodos de Conexão Suporte a API
Cisco IOS/IOS-XE Roteadores, Switches SSH CLI Não
Cisco ASA Firewalls SSH CLI Não
Cisco WLC Controladores Wireless SSH CLI, HTTPS API Sim (WLC 9800+)
F5 BIG-IP Balanceadores de Carga SSH CLI, HTTPS API Sim (iControl REST)
Palo Alto Networks Firewalls SSH CLI, HTTPS API Sim (XML API)
Fortinet FortiGate Firewalls SSH CLI, HTTPS API Sim (REST API)
Juniper JunOS Roteadores, Switches, Firewalls SSH CLI Limitado (XML)
SNMP Genérico Qualquer dispositivo com SNMP SNMP v2c/v3 N/A

Métodos de Conexão

SSH CLI (Interface de Linha de Comando)

O método mais universal, suportado por todos os appliances de rede. O PKIGuardian executa comandos específicos do fabricante para recuperar informações de certificado.

Vantagens:

  • Funciona com todos os dispositivos
  • Sem configuração adicional além do acesso SSH
  • Mais confiável

Desvantagens:

  • Mais lento do que os métodos via API
  • Requer análise de saída em texto
  • Limitado a operações somente leitura

HTTPS API

Appliances modernos fornecem APIs REST ou XML para gerenciamento de certificados. Este é o método preferido quando disponível.

Vantagens:

  • Mais rápido e eficiente
  • Respostas estruturadas em JSON/XML
  • Melhor tratamento de erros
  • Suporta gerenciamento programático

Desvantagens:

  • Não disponível em todos os dispositivos
  • Requer credenciais de API (chaves, tokens)
  • Pode exigir licenciamento adicional

SNMP (Simple Network Management Protocol)

Método de fallback para dispositivos sem acesso SSH ou API. Informações de certificado limitadas disponíveis.

Vantagens:

  • Funciona com configuração mínima no dispositivo
  • Pode descobrir metadados do dispositivo
  • Não requer autenticação (v2c)

Desvantagens:

  • Informações de certificado limitadas
  • Preocupações de segurança com v2c
  • Requer conhecimento de MIB

Configuração de Dispositivos

Adicionando um Appliance de Rede

Via Interface Web

  1. Acesse Dispositivos > Adicionar Dispositivo
  2. Selecione o Tipo de Dispositivo (Roteador, Switch, Firewall, etc.)
  3. Selecione o Fabricante do Dispositivo no dropdown
  4. Preencha os detalhes:
    • Nome: Nome amigável para o dispositivo
    • Hostname/IP: Endereço IP de gerenciamento
    • URL de Gerenciamento: (Opcional) URL HTTPS para acesso à API
  5. Configure o método de conexão:
    • SSH: Forneça usuário e senha/chave privada
    • HTTPS API: Forneça chave/token de API
    • SNMP: Forneça community string (v2c) ou credenciais (v3)
  6. Clique em Testar Conexão para verificar as credenciais
  7. Clique em Salvar

Via CLI

# Adicionar roteador Cisco com SSH
pkiguardian devices add \
  --name "Core-Router-01" \
  --hostname "192.168.1.1" \
  --vendor Cisco \
  --type Router \
  --connection-type SSH \
  --username admin \
  --password-file /path/to/password.txt

# Adicionar F5 BIG-IP com API
pkiguardian devices add \
  --name "F5-LB-01" \
  --hostname "192.168.1.10" \
  --vendor F5Networks \
  --type LoadBalancer \
  --connection-type HttpsApi \
  --management-url "https://192.168.1.10" \
  --api-key "sua-chave-de-api"

# Adicionar dispositivo com SNMP
pkiguardian devices add \
  --name "Unknown-Device" \
  --hostname "192.168.1.20" \
  --vendor Generic \
  --type Other \
  --connection-type Snmp \
  --snmp-community "public"

Credenciais de Conexão

Autenticação SSH

Usuário/Senha:

{
  "username": "readonly-user",
  "password": "stored-in-vault"
}

Chave SSH:

{
  "username": "readonly-user",
  "privateKey": "-----BEGIN OPENSSH PRIVATE KEY-----\n...",
  "passphrase": "passphrase-opcional"
}

Autenticação de API

Chave de API (Palo Alto, Fortinet):

{
  "apiKey": "sua-chave-de-api"
}

Bearer Token (F5, Cisco WLC):

{
  "apiToken": "Bearer eyJhbGc..."
}

Autenticação Básica:

{
  "username": "api-user",
  "password": "api-password"
}

Autenticação SNMP

SNMP v2c:

{
  "community": "public-ou-private"
}

SNMP v3:

{
  "username": "snmp-user",
  "authProtocol": "SHA",
  "authPassword": "auth-password",
  "privProtocol": "AES",
  "privPassword": "priv-password"
}

Configuração Específica por Fornecedor

Cisco IOS/IOS-XE (Roteadores e Switches)

Comandos Necessários

O PKIGuardian executa os seguintes comandos:

show crypto pki certificates
show crypto ca certificates

Configuração do Dispositivo

Crie um usuário somente leitura para o PKIGuardian:

! Criar nível de privilégio para acesso somente leitura a crypto
privilege exec level 15 show crypto pki certificates
privilege exec level 15 show crypto ca certificates

! Criar conta de usuário
username pkiguardian privilege 15 secret SuaSenhaSegura

! Configurar SSH
ip domain-name example.com
crypto key generate rsa general-keys modulus 2048
line vty 0 4
 transport input ssh
 login local

Permissões Necessárias

  • Nível de privilégio 15 (ou equivalente) para comandos show crypto
  • SSH habilitado e acessível
  • Acesso somente leitura é suficiente

Solução de Problemas

Erro: “Command authorization failed”

Solução: Garanta que o usuário tem privilégio 15 ou configure o AAA para permitir comandos crypto

Erro: “SSH connection timeout”

Solução: Verifique se o SSH está habilitado e acessível:
  - show ip ssh
  - Teste o SSH a partir do gateway: ssh user@dispositivo

Erro: “No certificates found”

Solução: Verifique se os certificados estão instalados:
  - show crypto pki certificates
  - show crypto ca trustpoints

Cisco ASA (Firewalls)

Comandos Necessários

show crypto ca certificates
show crypto ca server

Configuração do Dispositivo

! Criar usuário local
username pkiguardian password SuaSenhaSegura privilege 15

! Habilitar SSH
crypto key generate rsa modulus 2048
ssh version 2
ssh 192.168.1.0 255.255.255.0 inside
aaa authentication ssh console LOCAL

Permissões Necessárias

  • Privilégio 15 para comandos de certificado
  • Acesso SSH a partir do IP do Gateway PKIGuardian

Diferenças em Relação ao IOS

  • O formato de saída dos comandos é ligeiramente diferente
  • Localização dos certificados pode incluir nomes de contexto
  • Certificados de IPSec e SSL VPN são armazenados separadamente

F5 BIG-IP (Balanceadores de Carga)

Método Preferido: iControl REST API

O F5 BIG-IP fornece uma API REST abrangente para gerenciamento de certificados.

Endpoints de API Utilizados:

  • GET /mgmt/tm/sys/crypto/cert — Lista todos os certificados
  • GET /mgmt/tm/sys/file/ssl-cert — Lista arquivos de certificado
  • GET /mgmt/tm/sys/file/ssl-key — Lista arquivos de chave privada

Configuração do Dispositivo

Criar Usuário de API:

# Via tmsh
tmsh create auth user pkiguardian partition-access add { all-partitions { role operator } } shell none password SuaSenhaSegura

# Via GUI
System > Users > User List > Create
  - User Name: pkiguardian
  - Role: Operator (somente leitura)
  - Partition Access: All partitions

Gerar Token de API:

# Usando curl
curl -sk -u pkiguardian:password -H "Content-Type: application/json" \
  -X POST https://bigip.example.com/mgmt/shared/authn/login \
  -d '{"username":"pkiguardian","password":"SuaSenhaSegura","loginProviderName":"tmos"}'

# Resposta contém token
{
  "token": {
    "token": "ABCDEFG123456...",
    "timeout": 1200
  }
}

Nota: Tokens expiram. Use usuário/senha para renovação automática do token.

Fallback: SSH CLI

tmsh list sys crypto cert
tmsh list sys file ssl-cert

Configuração SSH:

# Permitir SSH do gateway PKIGuardian
tmsh modify sys sshd allow add { 192.168.1.0/24 }
tmsh save sys config

Informações de Certificado Recuperadas

  • Nome do certificado e partição
  • DN do sujeito
  • DN do emissor
  • Número de série
  • Datas de validade (não antes, não depois)
  • Tamanho da chave e algoritmo
  • Uso (perfil SSL, client SSL, server SSL)

Solução de Problemas

Erro: “401 Unauthorized”

Solução: Verifique as credenciais de API
  - Verifique usuário e senha
  - Certifique-se que o usuário tem papel Operator ou superior
  - Teste: curl -k -u user:pass https://bigip/mgmt/tm/sys/version

Erro: “403 Forbidden”

Solução: Usuário sem permissão
  - Adicione partition-access ao usuário
  - Certifique-se que o papel é pelo menos Operator

Erro: “SSL certificate problem”

Solução: O F5 usa certificado autoassinado
  - Adicione o certificado F5 ao trust store do PKIGuardian
  - Ou configure para aceitar autoassinados (não recomendado em produção)

Palo Alto Networks (Firewalls)

Método Preferido: XML API

Firewalls Palo Alto fornecem uma API XML para gerenciamento de certificados e configuração.

Endpoints de API:

GET /api/?type=op&cmd=<show><config><running><certificate></certificate></running></config></show>&key=API_KEY

Configuração do Dispositivo

Gerar Chave de API:

# Via web UI: Device > Setup > Management > Administrators
# Ou via comando:
curl -k "https://palo.example.com/api/?type=keygen&user=pkiguardian&password=SuaSenha"

# Resposta:
<response status="success">
  <result>
    <key>LUFRPT1234567890...</key>
  </result>
</response>

Criar Administrador Somente Leitura:

# Via GUI: Device > Administrators > Add
  - Name: pkiguardian
  - Authentication Profile: None (Local Database)
  - Password: SuaSenhaSegura
  - Role: Read-Only

# Via CLI:
set mgt-config users pkiguardian permissions role-based superreader yes
set mgt-config users pkiguardian password

Informações de Certificado Recuperadas

  • Nome do certificado
  • CN do sujeito
  • CN do emissor
  • Número de série
  • Período de validade
  • Uso (certificado de dispositivo, CA confiável, etc.)
  • Algoritmo e tamanho de chave

Solução de Problemas

Erro: “Invalid credentials”

Solução: Verifique a chave de API
  - Regere a chave: type=keygen&user=X&password=Y
  - Certifique-se que o usuário não está bloqueado
  - Verifique as regras de acesso de gerenciamento do firewall

Erro: “403 api_key_mismatch”

Solução: Chave de API expirada ou inválida
  - Gere nova chave de API
  - Atualize a configuração do dispositivo no PKIGuardian

Fortinet FortiGate (Firewalls)

Método Preferido: REST API

O FortiGate fornece uma API REST abrangente.

Endpoints de API:

  • GET /api/v2/monitor/vpn-certificate/local — Certificados locais
  • GET /api/v2/monitor/system/certificate/download — Detalhes do certificado

Configuração do Dispositivo

Criar Usuário de API:

# Via GUI: System > Administrators > Create New > REST API Admin
  - Username: pkiguardian
  - Administrator Profile: Read-Only
  - JSON API Access: Enable
  - Trusted Hosts: 192.168.1.0/255.255.255.0

# Gere o token de API (exibido apenas uma vez, salve-o!)

Via CLI:

config system api-user
  edit pkiguardian
    set accprofile "prof_admin_readonly"
    set vdom "root"
    set trusthost 192.168.1.0 255.255.255.0
  next
end

Informações de Certificado Recuperadas

  • ID e nome do certificado
  • Sujeito e emissor
  • Número de série
  • Datas de validade
  • Status (válido, expirado, revogado)
  • Tipo (local, CA, CRL)

Solução de Problemas

Erro: “Authentication failed”

Solução: Verifique o token de API
  - Regere o token na GUI
  - Certifique-se que "JSON API Access" está habilitado
  - Verifique a configuração de trusted hosts

Juniper JunOS (Roteadores, Switches, Firewalls)

Método de Conexão: SSH CLI

O JunOS usa uma estrutura de comandos diferente do Cisco.

Comandos Utilizados:

show security pki certificate
show security pki ca-certificate

Para a Série SRX:

show security pki local-certificate
show security pki ca-certificate

Configuração do Dispositivo

Criar Usuário Somente Leitura:

set system login user pkiguardian class read-only
set system login user pkiguardian authentication plain-text-password
# Digite a senha quando solicitado

commit

Habilitar SSH:

set system services ssh root-login deny
set system services ssh protocol-version v2
commit

Opcional: Saída XML

O JunOS pode gerar saída em formato XML para análise mais fácil:

show security pki certificate | display xml

Configure no PKIGuardian para melhor precisão na análise.

Solução de Problemas

Erro: “Permission denied”

Solução: Certifique-se que o usuário tem a classe adequada
  - Use a classe 'read-only' ou 'operator'
  - Teste: show configuration security pki

Dispositivos SNMP Genéricos

Para dispositivos sem suporte a SSH ou API, o SNMP pode fornecer informações básicas.

Configuração SNMP v2c

No Dispositivo:

! Exemplo Cisco
snmp-server community public RO

Configuração no PKIGuardian:

{
  "connectionType": "Snmp",
  "snmpVersion": "v2c",
  "community": "public"
}

Configuração SNMP v3 (Recomendado)

No Dispositivo:

! Exemplo Cisco
snmp-server group pkiguardian-group v3 auth
snmp-server user pkiguardian pkiguardian-group v3 auth sha SenhaAuth priv aes 128 SenhaPriv

Configuração no PKIGuardian:

{
  "connectionType": "SnmpV3",
  "username": "pkiguardian",
  "authProtocol": "SHA",
  "authPassword": "SenhaAuth",
  "privProtocol": "AES",
  "privPassword": "SenhaPriv"
}

Limitações

  • SNMP não consegue recuperar detalhes de certificado diretamente
  • Usado principalmente para descoberta de dispositivos e metadados
  • Informações de certificado requerem MIBs personalizadas (específicas do fornecedor)

Solução de Problemas

Problemas Gerais

Timeouts de Conexão

Sintomas: Conexão com o dispositivo falha com erro de timeout

Soluções:

  1. Verifique a conectividade de rede:
    ping ip-do-dispositivo
    telnet ip-do-dispositivo 22  # SSH
    telnet ip-do-dispositivo 443 # HTTPS
    
  2. Verifique as regras de firewall:
    • Certifique-se que o IP do Gateway PKIGuardian está permitido
    • Verifique as ACLs da interface de gerenciamento no dispositivo
  3. Aumente o timeout na configuração:
    {
      "ConnectionServices": {
        "SSH": {
          "TimeoutSeconds": 60
        }
      }
    }
    

Falhas de Autenticação

Sintomas: “Invalid credentials” ou “Authentication failed”

Soluções:

  1. Verifique as credenciais no Vault:
    pkiguardian vault get device/{device-id}/ssh
    
  2. Teste as credenciais manualmente:
    ssh user@ip-do-dispositivo
    # Ou
    curl -k -u user:pass https://ip-do-dispositivo/api/endpoint
    
  3. Verifique bloqueio de conta no dispositivo:
    show users  # Cisco
    show system login  # Juniper
    

Erros de Análise de Certificado

Sintomas: Certificados descobertos, mas dados incompletos

Soluções:

  1. Verifique os logs do adaptador:
    kubectl logs deployment/pkiguardian-gateway | grep "vendor adapter"
    
  2. Colete a saída do comando manualmente e compare:
    ssh dispositivo "show crypto pki certificates" > output.txt
    # Revise output.txt para formatos inesperados
    
  3. Atualize o adaptador se o firmware do dispositivo alterou o formato

Problemas Específicos por Fornecedor

Cisco: “Command authorization failed”

Causa: Usuário sem nível de privilégio adequado

Solução:

! Conceder privilégio 15
username pkiguardian privilege 15 secret senha

! Ou configurar autorização de comandos AAA
aaa authorization commands 15 default local

F5: “Token expired”

Causa: Tokens de API têm tempo de vida limitado

Solução:

  • Use usuário/senha em vez de token
  • Configure renovação automática de token
  • Aumente o timeout de token nas configurações do F5

Palo Alto: “XML parse error”

Causa: Formato de resposta XML inesperado

Solução:

  • Verifique a compatibilidade da versão de API
  • Verifique caracteres especiais nos campos de certificado
  • Revise os logs do adaptador para detalhes de análise

Fortinet: “VDOM access denied”

Causa: Usuário sem acesso ao VDOM onde o certificado está armazenado

Solução:

config system api-user
  edit pkiguardian
    set vdom "root"  # Ou VDOM específico
  next
end

Boas Práticas

Segurança

  1. Use Contas Somente Leitura
    • Crie contas dedicadas com privilégios mínimos necessários
    • Nunca use contas de administrador para o PKIGuardian
  2. Gerenciamento de Credenciais
    • Armazene credenciais no HashiCorp Vault
    • Habilite rotação automática de credenciais onde suportado
    • Audite todas as tentativas de acesso
  3. Segmentação de Rede
    • Implante o Gateway PKIGuardian na rede de gerenciamento
    • Use VLAN separada para tráfego de gerenciamento
    • Implemente regras de firewall rigorosas
  4. Prefira API em Vez de SSH
    • APIs oferecem melhor segurança e auditoria
    • Use chaves de API com curta expiração
    • Desabilite o SSH onde a API estiver disponível

Desempenho

  1. Pool de Conexões
    • Configure tamanhos adequados de pool de conexões
    • Ajuste com base no número de dispositivos
  2. Limitação de Taxa
    • Respeite os limites de taxa de API dos fornecedores
    • Configure agendamentos escalonados de descoberta
    • Use intervalos adequados entre varreduras
  3. Processamento Paralelo
    • Habilite varredura concorrente de dispositivos
    • Equilibre entre velocidade e carga nos dispositivos
    • Monitore a CPU dos dispositivos durante a descoberta

Operacional

  1. Monitoramento
    • Configure alertas para falhas de descoberta
    • Monitore a expiração de credenciais
    • Acompanhe as taxas de sucesso de descoberta
  2. Documentação
    • Documente configurações específicas por dispositivo
    • Mantenha inventário de credenciais
    • Mantenha informações de contato dos fornecedores
  3. Testes
    • Teste as alterações de credenciais antes de implantar
    • Verifique a descoberta após atualizações de firmware do dispositivo
    • Mantenha ambiente de teste para validação

Conformidade

  1. Log de Auditoria
    • Habilite logs de auditoria abrangentes
    • Registre todas as tentativas de acesso aos dispositivos
    • Retenha logs conforme os requisitos de conformidade
  2. Gestão de Mudanças
    • Documente todas as alterações de configuração
    • Siga os procedimentos de controle de mudanças
    • Teste em staging antes de produção
  3. Revisões Regulares
    • Revise as permissões de acesso a dispositivos trimestralmente
    • Audite o uso de credenciais
    • Valide as configurações de segurança

Recursos Adicionais

  • Guia de Configuração do Gateway
  • Solução de Problemas

Suporte

Para assistência adicional:


Última Atualização: Maio de 2026 | Versão: Phase 12

Relacionados

Primeiros Passos — Interface Web

Bem-vindo à Interface Web do PKIGuardian! Este guia irá ajudá-lo a começar a usar a interface web.

Primeiros Passos — CLI

Bem-vindo à Interface de Linha de Comando do PKIGuardian! Este guia irá ajudá-lo a instalar e usar

Primeiros Passos — Aplicativo Móvel MAUI

Bem-vindo ao PKIGuardian MAUI! Este guia irá ajudá-lo a instalar e usar o aplicativo móvel para iOS