Como criar certificados SSL de clientes para a equipe usando o CaCert CA?

1

Gostaria de restringir o acesso de uma página inicial usando certificados SSL do cliente. A maioria dos tutoriais na internet descreve isso assim:

  1. crie sua própria chave CA.key
  2. crie a chave do servidor server.key (autoassinado)
  3. assine server.key usando CA.key
  4. crie (várias) chaves do cliente client_xx.key
  5. assine client_xx.key usando CA.key

Eu não quero autoassinar minha chave de servidor, mas uso o CaCert. Então omiti o primeiro passo. Mas quando quero criar os certificados do cliente, que chave preciso usar? Eu não tenho o CaCerts CA.key.

    
por rriemann 16.03.2013 / 21:29

2 respostas

0

Não tenho certeza absoluta, mas como ninguém mais está respondendo, aqui está minha opinião.

A única entidade que pode assinar certificados é uma CA. Existem diferentes níveis de CAs, portanto, você poderia, em teoria, configurar sua própria CA subordinada ao CaCert (e, portanto, ter seu próprio certificado da CA assinado pela CaCert). Isso tornaria os certificados normais que você estaria assinando participando da cadeia de confiança de comprimento 3 (em vez de dois).

Pelo que eu peguei de esta página , é de alguma forma possível se tornar um "membro do CACert" e conseguir o que eles chamam certificado "subroot" - este permitiria que você assinasse seus próprios certificados e os tornasse confiáveis por qualquer pessoa que confiasse no certificado raiz do CACert ( fornecido você também disponibilizasse o certificado de sua AC subordinada de uma forma ou de outra - por exemplo, um servidor que usa certificados formatados em PEM pode usar um arquivo de certificado que é apenas uma concatenação do certificado do servidor e do certificado de CA no formato PEM).

Minha experiência pessoal com esse tipo de configuração foi: há algum tempo, a federação xmpp.net forneceu certificados pagos gratuitamente para qualquer servidor XMPP cujo administrador desejasse obter um. Essa federação era em si uma CA subordinada à StartCom. Então, depois de obter meu certificado de servidor, eu precisava dizer ao meu servidor para apresentar seu próprio certificado e o xmpp.net cert em um pacote para tornar a cadeia de confiança completa para seus clientes, pois eles geralmente confiam no StartCom, mas não no xmpp.net. p>     

por 17.03.2013 / 23:09
0

Você obviamente não receberá a chave do CACert, pois isso estragaria todo o sistema. O que você precisa criar é uma "solicitação de assinatura de certificado" (CSR) junto com uma nova chave privada e enviar este CSR para o CACert para obtê-lo assinado (o que lhe dará um certificado assinado válido como resultado).

Se você estiver usando openssl ca para o gerenciamento de certificados, talvez esteja usando algo como

openssl req -new -key client1.key -out client1.csr

e cole o conteúdo de client1.csr no formulário de solicitação de certificado do CACert.

Você também deve dar uma olhada na documentação do CACert sobre a geração de CSR que aborda esse tópico com mais detalhes.

    
por 17.03.2013 / 23:22