2009-06-02 6 views
3

J'essaie d'exporter un certificat client à utiliser avec un navigateur Web.Comment générer un certificat client à l'aide d'un tiers CA-NOT auto-signé CA

L'objectif est de restreindre l'accès à l'aide de la directive < Location> à la zone d'administration. J'ai vu de nombreux tutoriels sur l'utilisation des CA auto-signés. Comment feriez-vous cela en utilisant un tiers?

1) Dois-je inclure l'autorité de certification dans le client pfx s'il s'agit d'une autorité de certification racine approuvée? J'ai vu les deux exemples.

Sans CA:

openssl pkcs12 -export -inkey KEYFILENAME -in CERTFILEFILENAME -out XXX.pfx 

Avec CA:

openssl pkcs12 -export -in my.crt- inkey my.key -certfile my.bundle -out my.pfx 

2) Est-ce que je dois inclure encore SSLCACertificateFile pour CA de confiance dans la configuration httpd.conf?

SSLVerifyClient none 
SSLCACertificateFile conf/ssl.crt/ca.crt 
<Location /secure/area> 
SSLVerifyClient require 
SSLVerifyDepth 1 
</Location> 

http://www.modssl.org/docs/2.8/ssl_howto.html#ToC8

+0

Cela ne nécessite pas de programmation. Vous pourriez avoir plus de chance sur serverfault. – erickson

+1

Certainement une question serverfault, voté pour se déplacer. –

Répondre

5

Vous ne pouvez pas délivrer des certificats clients avec un tiers CA signé certificat. Vous devez avoir CA auto-signé pour la délivrance des certificats clients et spécifier CA comme SSLCACertificateFile

Exemple:

SSLCertificateFile /etc/apache2/ssl/apache.cer # site certificate signed by verisign 
    SSLCertificateKeyFile /etc/apache2/ssl/apache.key # site key for certificate signed by verisign 
    SSLCACertificateFile /etc/apache2/ssl/apachelca2.pem # your self signed CA 

Notez que apachelca2.pem a à la fois la clé et le certificat en elle ... lignes de commande pour délivrer des certificats clients :

openssl req -config /usr/share/apache2/ssleay.cnf -new -key client.key -out client.csr 

openssl x509 -req -days 365 -CA /etc/apache2/ssl/apachelca2.pem -CAkey /etc/apache2/ssl/apachelca2.pem -CAcreateserial -in client.csr -extfile /usr/share/apache2/ssleay.cnf -extensions v3_req -out client.crt 
Questions connexes