Estou configurando minha primeira autoridade de certificação. Seu objetivo será emitir certificados para nossos clientes, que os usarão para acessar nosso serviço EDI por https. Então, eu preciso gerar certificados de cliente SSL. Todo o processo de assinatura de certificados já está funcionando e os certificados podem ser usados com sucesso para acessar nosso serviço, mas estou preocupado com uma coisa:
Os propósitos de certificado gerados são genéricos:
$ openssl x509 -purpose -noout -in client.crt.pem
Certificate purposes:
SSL client : Yes
SSL client CA : No
SSL server : Yes
SSL server CA : No
Netscape SSL server : Yes
Netscape SSL server CA : No
S/MIME signing : Yes
S/MIME signing CA : No
S/MIME encryption : Yes
S/MIME encryption CA : No
CRL signing : Yes
CRL signing CA : No
Any Purpose : Yes
Any Purpose CA : Yes
OCSP helper : Yes
OCSP helper CA : No
Eu sinto que não deve haver outros propósitos, mas o cliente SSL e a assinatura S / MIME no meu caso. Estou errado e isso deve continuar como está?
Se estou correto e devo desativar outros propósitos, o que devo colocar na minha configuração openssl.cnf?
Aqui está minha configuração atual (removida um pouco):
[ CA_edi ]
# here was directory setup and some other stuff, cut it for clarity
x509_extensions = usr_cert # The extentions to add to the cert
name_opt = ca_default # Subject Name options
cert_opt = ca_default # Certificate field options
# Extension copying option: use with caution.
# copy_extensions = copy
# stripped rest of config about validity days and such
[ usr_cert ]
basicConstraints=CA:FALSE
nsCertType = client, email
keyUsage = nonRepudiation, digitalSignature, keyEncipherment, keyAgreement
O que estou fazendo de errado com o fato de os certificados gerados permitirem o uso do servidor?
openssl x509 -text -nameopt multiline -certopt no_sigdump -certopt no_pubkey -noout -in one_of_your_client_certificates.pem
e da seção de extensões do seu openssl.cnf
arquivo, verei se posso fornecer conselhos mais específicos.