Importar CRLs e revogar certificados na Sophos Firewall
Uma Certificate Revocation List (CRL) externa é importada em Certificates > Certificate revocation lists > Add. O ficheiro deve ser proveniente da CA que emitiu o certificado em causa. Antes do carregamento, verifique o issuer, a assinatura, thisUpdate, qualquer valor nextUpdate presente e os números de série revogados. Uma entrada visível na lista não é prova suficiente: é necessário testar o serviço concreto com um certificado válido e, num ambiente de teste controlado, com um certificado revogado.
O processo é diferente para certificados assinados localmente. A SFOS pode revogá-los diretamente e adiciona automaticamente os detalhes à CRL Default. Um certificado assinado externamente, porém, deve ser revogado pela CA externa; a firewall não pode criar essa revogação.
Importar uma CRL em oito passos
- Documentar o certificado em causa, o issuer, o número de série e o serviço da firewall que o utiliza.
- Preparar uma cópia de segurança, um acesso de gestão independente e um certificado de substituição válido.
- Obter a CRL atual da CA emissora. Não utilizar uma CRL de outra CA com um nome semelhante.
- Num computador de administração, ler o ficheiro como DER ou PEM e verificar o issuer, a assinatura,
thisUpdatee qualquer valornextUpdatepresente. - Confirmar que a cadeia de CA correspondente está presente em Certificates > Certificate authorities.
- Em Certificates > Certificate revocation lists > Add, introduzir um nome inequívoco, selecionar o ficheiro CRL e clicar em Save.
- Efetuar um teste positivo normal com um certificado que continue válido e um teste negativo controlado com um certificado de teste revogado.
- Documentar o responsável, a fonte e a data de renovação antes de
nextUpdateou do próximo prazo no calendário de publicação da CA.
⚠️ Não revogue um certificado atribuído à produção apenas para testar a função nem edite ou regenere a CA
Defaultpara esse fim. WebAdmin, portais, VPN, outros serviços de gestão ou túneis podem deixar de funcionar. Teste primeiro a revogação com um certificado emitido especificamente para esse fim e com um caminho de recuperação confirmado.
Distinguir expiração de revogação
Um certificado pode continuar válido durante meses e, ainda assim, deixar de ser fiável. Isso pode acontecer quando a private key foi comprometida, o titular perdeu a autorização ou o certificado já não pode ser utilizado para a finalidade original. A CA revoga então o número de série e publica esse estado numa CRL.
Uma CRL inclui, entre outros elementos:
- o Issuer, ou seja, a entidade que assinou a CRL;
thisUpdate, a hora de emissão desta lista;nextUpdate, a data-limite até à qual é esperada uma nova lista; embora a estrutura ASN.1 permita omitir o campo, os emissores de CRL conformes com o RFC 5280 têm de o incluir;- o número de série e a hora de revogação dos certificados revogados;
- uma assinatura digital que permite verificar a origem e a integridade.
O nome do ficheiro, por si só, não tem valor de confiança. Um ficheiro chamado vpn-current.crl pode estar desatualizado ou pertencer a outra issuing CA. O que importa é o issuer, a assinatura, a atualidade e o número de série do certificado concreto.
Assinado local ou externamente
A SFOS separa duas responsabilidades:
- Certificado assinado localmente: A firewall assinou o certificado com a sua CA interna
Default. Pode ser revogado em Certificates > Certificates. A SFOS adiciona automaticamente a revogação à CRLDefault. - Certificado assinado externamente: Uma CA empresarial ou pública externa emitiu o certificado. Apenas essa CA pode publicar a revogação. A CRL atual é depois carregada na firewall como ficheiro.
Uma CRL fornecida externamente não substitui a cadeia de CA correspondente. O certificado, a issuing CA, possíveis intermediate CAs e a CRL devem ser compatíveis. O artigo Importar e atribuir certificados na Sophos Firewall explica como distinguir certificados, private keys, CSRs e cadeias de CA.
Esclarecer primeiro o efeito e as dependências
Uma revogação publica o estado de um número de série. Não elimina o objeto de certificado nem substitui um certificado atribuído a um serviço. Só produz efeito quando a parte que verifica o certificado avalia realmente a CRL atual correspondente. A ajuda da SFOS 22 não fornece uma lista completa dos serviços que avaliam CRLs importadas. Por isso, nunca se deve deduzir a aplicação da revogação apenas da importação; é necessário comprová-la para cada caminho real do certificado.
Antes de uma revogação local, inventarie pelo menos estas dependências:
- Em Administration > Admin and user settings > Admin console and end-user interaction > Certificate, WebAdmin Console, User Portal, VPN Portal, Captive Portal e os dois portais SPX partilham uma seleção de certificado. Se este for o certificado afetado, inclua todos os portais utilizados no plano de alteração e recuperação.
- Inclua SSL VPN, IPsec baseado em certificados, WAF, SMTP e integrações API apenas quando a configuração e uma verificação da ligação demonstrarem uma dependência real do certificado, da respetiva CA ou da CRL.
- Inclua também peers externos e clientes. Um perfil exportado ou trust store pode continuar a utilizar uma CA ou CRL anterior, embora a lista da firewall pareça atual.
O artigo associado sobre gestão de certificados mostra os locais de atribuição específicos e o processo seguro para mudar de certificado. Antes da revogação, atribua um objeto de substituição válido ao serviço de servidor afetado e verifique-o com uma nova ligação. Para certificados de cliente, emita e distribua uma nova credencial de cliente e conclua um teste positivo.
Preparar o ficheiro CRL em segurança
Antes de efetuar uma alteração, registe primeiro o estado atual:
- nome, issuer e número de série do certificado em causa;
- emissor da CRL e fonte fiável;
- valor atual de
thisUpdate, qualquernextUpdatepresente e, se existir, o número da CRL; - serviço afetado e respetivo teste positivo funcional;
- responsável pela PKI;
- cópia de segurança e caminho de recuperação, caso a validação do certificado bloqueie o acesso de produção.
A hora da firewall deve estar correta. Uma data incorreta pode fazer com que certificados e listas de revogação pareçam expirados ou ainda não válidos. Se necessário, verifique a fonte de tempo e a configuração NTP com Configurar a hora do sistema e NTP na Sophos Firewall.
Associar o certificado à CRL
Num computador de administração, o OpenSSL mostra o issuer e o número de série de um certificado PEM:
openssl x509 -in client-cert.pem -issuer -serial -noout
Substitua client-cert.pem pelo ficheiro local do certificado. O comando apenas lê metadados e não mostra nenhuma private key.
Uma CRL codificada em DER é verificada da seguinte forma:
openssl crl -in corp-issuing-ca.crl -inform DER -issuer -lastupdate -nextupdate -crlnumber -noout
Para uma CRL codificada em PEM, substitua DER por PEM. corp-issuing-ca.crl é um nome de exemplo e deve ser substituído pelo ficheiro da issuing CA local. O issuer apresentado deve corresponder à cadeia de certificados planeada. nextUpdate não pode já ter sido ultrapassado para o período operacional previsto. Se o campo não existir, a compatibilidade com a SFOS fica por confirmar: solicite ao responsável da PKI uma CRL corrigida e não a importe em produção até que um teste controlado ou o Sophos Support confirme a compatibilidade.
Verificar a assinatura e os números de série revogados
Verifique a assinatura com um ficheiro de CA preparado:
openssl crl -in corp-issuing-ca.crl -inform DER -CAfile corp-ca-chain.pem -verify -noout
corp-ca-chain.pem contém o certificado do signatário da CRL e a cadeia de CA necessária para a sua verificação. Este ficheiro é fornecido pelo responsável da PKI e não é criado a partir de uma fonte de download arbitrária. Se a CA fornecer uma CRL em PEM, substitua também aqui DER por PEM.
Para apresentar todos os detalhes da CRL, incluindo os números de série revogados, utilize:
openssl crl -in corp-issuing-ca.crl -inform DER -text -noout
Em grandes CAs empresariais, a saída pode ser extensa. Não contém uma private key, mas inclui metadados internos da PKI e números de série. Por isso, não copie a saída sem filtragem para tickets públicos, conversas ou capturas de ecrã.
Importar uma CRL externa na SFOS
Obtenha uma CRL externa apenas junto da CA responsável ou do respetivo processo de PKI fiável. Um ficheiro de um ticket antigo ou de uma partilha de ficheiros não documentada não é uma fonte fiável.
- Abra Certificates > Certificate revocation lists.
- Selecione Add.
- Introduza um nome inequívoco, por exemplo
Corp-Issuing-CA-CRL. - Selecione o ficheiro
.crlpreviamente verificado. - Clique em Save.
- Confirme que a nova entrada aparece na lista de CRLs.
- Execute os testes positivo e negativo planeados para o serviço afetado.
- Registe
nextUpdateou o intervalo de publicação da CA, o responsável e a fonte na documentação operacional.
Corp-Issuing-CA-CRL é apenas um nome de exemplo. Substitua-o por uma designação que identifique a issuing CA real e a finalidade. Evite nomes como Current ou New CRL, porque após alguns meses deixam de indicar claramente o responsável.
A ajuda atual da SFOS 22 não documenta nesta página a obtenção automática através de um URL HTTP ou LDAP. Por isso, um carregamento único não constitui um processo operacional permanente. Antes de nextUpdate, ou antes do próximo prazo no calendário de publicação documentado pela CA, obtenha uma nova lista, verifique-a novamente e atualize-a na SFOS através do processo de CRL aprovado. Mantenha o ficheiro anteriormente aprovado como prova até o novo ficheiro ser aceite e o serviço afetado ser novamente testado. Não o utilize para reverter uma revogação efetiva.
Revogar um certificado assinado localmente
Um certificado assinado localmente é revogado diretamente na firewall. Determine primeiro se ainda protege WebAdmin, um portal, VPN, WAF, SMTP ou outro serviço. Se for o caso, atribua e teste primeiro um certificado de substituição válido.
- Em Certificates > Certificates, identifique o certificado assinado localmente.
- Verifique novamente o subject, o issuer, a finalidade e a atribuição ao serviço.
- Confirme a cópia de segurança e o acesso de gestão independente.
- Na linha do certificado, execute a ação revoke apenas para este certificado.
- Em Certificates > Certificate revocation lists, procure a CRL
Default. - Selecione Download. A SFOS fornece um arquivo
.tar, do qual é extraído o ficheiro.crl. - Leia a CRL transferida com o OpenSSL e compare o número de série do certificado de teste.
- Volte a testar o serviço propriamente dito de forma positiva e negativa.
A Sophos permite esta revogação direta apenas para certificados assinados localmente. Se a ação revoke não estiver disponível para um certificado externo, não se trata de um erro da interface. A CA externa deve revogar o certificado e emitir uma CRL atualizada.
A interface documentada da SFOS não oferece um passo para anular uma revogação local. O objeto de substituição é, portanto, o caminho normal de recuperação do serviço; não volte a colocar o certificado revogado em produção. Como um restauro completo reinicia a firewall e pode eliminar alterações posteriores, é apenas um último recurso avaliado antecipadamente, não uma correção de rotina. Para uma CRL externa, mantenha o ficheiro anteriormente aprovado. Se a nova lista for rejeitada ou o teste do serviço falhar, interrompa a implementação e preserve o estado anterior documentado. Se o estado de execução não for claro, não elimine entradas e encaminhe as provas para o Sophos Support.
Verificar o efeito da lista de revogação
Um carregamento bem-sucedido confirma apenas que a SFOS aceitou o ficheiro. Por si só, não prova que o serviço pretendido avalia a CRL no respetivo caminho de autenticação. Por isso, um teste de aceitação fiável inclui várias camadas:
- Ficheiro: Issuer, assinatura,
thisUpdate, qualquernextUpdate, qualquer número da CRL presente e número de série estão corretos. - Lista SFOS: A entrada CRL esperada está visível depois de guardar.
- Teste positivo: Um certificado que continua válido na cadeia de confiança planeada funciona.
- Teste negativo: Um certificado de teste emitido e revogado para este fim é rejeitado durante uma janela de manutenção.
- Log do serviço: A hora, o certificado e o motivo da rejeição correspondem ao teste.
- Operação: Após uma atualização da CRL e um failover HA planeado, uma nova ligação é novamente estabelecida e testada.
O log adequado depende do serviço. Para IPsec baseado em certificados, charon.log é um indício importante; o processo completo de análise VPN encontra-se em Resolução de problemas de IPsec VPN na Sophos Firewall. Outras funções utilizam outros logs. O artigo Associar corretamente os logs de serviço da Sophos Firewall associa essas funções a access_server.log, sslvpn.log, csc.log e outros ficheiros.
Um Packet Capture pode mostrar o estabelecimento e a interrupção da ligação, mas não prova automaticamente uma decisão da CRL. Para essa prova, são mais importantes o log do serviço, os dados do certificado e o caso de teste controlado.
Manter as CRLs atualizadas durante a operação
Uma CRL precisa de um responsável e de um processo de renovação. Especialmente com uma CA externa, a atualização não pode depender da memória de uma única pessoa.
Os dados operacionais úteis incluem:
- equipa de PKI ou firewall responsável;
- CA exata e fonte fiável;
- intervalo de atualização esperado;
nextUpdateda lista atualmente importada ou intervalo de publicação documentado pela CA;- serviços da firewall afetados e casos de teste;
- último teste positivo e negativo bem-sucedido;
- procedimento para uma revogação não planeada após o comprometimento de uma key.
Após uma revogação urgente de um certificado, não espere pela data normal de revisão. A CA externa fornece uma CRL atualizada, que é verificada, importada e testada no serviço afetado. Antes de alterar certificados de produção, mantenha uma cópia de segurança atual da firewall com um caminho de recuperação verificado.
Num cluster HA, não conclua que o comportamento em execução é idêntico apenas porque a entrada está visível nos dois nodes. Após um failover planeado, estabeleça uma nova ligação e verifique o log no node que processou realmente o teste.
Delimitar erros de forma sistemática
A SFOS rejeita o ficheiro CRL
Comece por verificar no computador de administração se o ficheiro é realmente uma CRL e se está codificado em DER ou PEM. Um certificado renomeado, uma página HTML transferida devido a um erro de portal ou um arquivo danificado não são uma lista de revogação válida. Depois, verifique o issuer, a assinatura e a cadeia de CA.
Não converta o ficheiro através de conversores online ou sites desconhecidos. Se for necessário outro formato, efetue a conversão localmente com o OpenSSL ou solicite à CA que forneça novamente a CRL no formato adequado.
A importação funciona, mas o certificado revogado também
Verifique estes pontos pela ordem indicada:
- O certificado e a CRL provêm realmente da mesma issuing CA?
- O número de série do certificado consta da CRL?
- A CRL está atual, algum
nextUpdatepresente já se encontra no passado ou expirou o intervalo de publicação documentado? - A hora da firewall está correta?
- O teste utiliza realmente o certificado esperado e não outro certificado proveniente de cache, perfil ou atribuição de serviço?
- Foi estabelecida uma nova ligação ou apenas se continuou uma sessão existente?
- O log específico do serviço mostra uma verificação de certificado ou revocation?
Se faltar algum destes elementos básicos, não experimente reinícios de serviços nem alterações à Default CA. Comprove primeiro a CA, o número de série, a CRL atual e o caminho real da ligação.
Um certificado externo não pode ser revogado na SFOS
Este é o limite esperado do produto. A firewall só pode revogar diretamente certificados assinados localmente. Para um certificado assinado externamente, solicite a revogação à CA externa e importe depois a nova CRL.
Um serviço falha após uma revogação local
Utilize primeiro o acesso de gestão ou de consola preparado. Atribua ao serviço afetado um certificado de substituição válido e previamente verificado. Não planeie reutilizar o certificado revogado como solução de produção. Depois, volte a verificar o serviço, os logs e o certificado efetivamente apresentado.
Se não for claro que serviços dependem da CA ou da CRL, não revogue mais certificados nem elimine listas de revogação. Em vez disso, guarde a configuração, as atribuições de certificados e os dados de suporte e investigue o caso com os responsáveis pela PKI ou com o Sophos Support.
FAQ
A Sophos Firewall atualiza automaticamente as CRLs externas?
nextUpdate ou o intervalo de publicação da CA, o responsável e o carregamento recorrente como um processo operacional separado.