Copie et création de référentiels de packages dans Oracle® Solaris 11.2

Quitter la vue de l'impression

Mis à jour : Septembre 2014
 
 

Création de certificats client utilisés pour l'accès au référentiel

Une fois que vous avez généré les CA, vous pouvez générer les certificats client.

Génération d'une demande de signature de certificat

Pour générer un certificat client, générez une demande de signature de certificat (CSR). Le contient toutes les informations CSR que vous avez besoin de communiquer de manière sécurisée pour le serveur.

Si vous voulez uniquement vérifier si le client dispose d'une capacité d'un certificat valide émis par vous-même , vous n'avez pas besoin d'encoder les informations à jour en conséquence. Lorsque le client présente son certificat serveur sur le serveur, le CA valide le certificat de valider la par rapport au certificat client, qui a été généré par vous. Toutefois, SSL requiert un subject pour le CSR. Si vous n'avez pas besoin de transmettre une autre information sur le serveur, vous pouvez vous contenter de définir le subject au pays dans lequel le certificat a été émis. Par exemple, vous pouvez définir le subject à C=US.

Il est conseillé de encodent le nom utilisateur dans le certificat du client pour permettre au serveur d'identifier le client. Le nom utilisateur est le nom de l'utilisateur auquel vous allez effectuer au cours d'accès au référentiel. Vous pouvez utiliser la CN à cette fin. Spécifiez une étiqurette pour ce CSR afin que vous puissiez rechercher et extraire la clé pour le certificat final comme décrit dans L'extraction de la clé de certificat.

Utilisez la commande suivante pour générer la CSR, procédez comme suit :

$ pktool gencsr subject="C=US,CN=username" label=label format=pem \
outcsr=cert.csr

Utilisez la commande OpenSSL suivante pour inspecter le CSR dans le fichier cert.csr :

$ openssl req -text -in cert.csr

Signature du CSR

Le CSR doit être signé par le CA pour créer un certificat. Pour signer le CSR. fournissez les informations suivantes :

  • Définissez l'issuer du certificat sur la chaîne obtenue que vous aviez utilisée pour le subject lors de la création de CA à l'aide de la commande gencert comme indiqué à la section Création d'une autorité de certification des certificats client.

  • Définissez le numéro de série hexadécimal. Dans cet exemple, le numéro de série CA a été spécifié comme 0x01, de sorte que le premier certificat client doit avoir le numéro de série 0x02. Incrémentez le numéro de série pour chaque nouveau certificat client que vous générez.

    Chaque CA et ses certificat de client descendant possède son propre ensemble de numéros de série. Si vous disposez de CA configurées dans votre keystore, soyez attentif lors de la définition des numéros de série de certificat.

  • Définissez signkey sur l'étiquette de la CA dans le keystore.

  • Définissez outcert sur le nom du fichier de certificat. Il est conseillé d'avoir pour nommer le certificat et la clé une fois le référentiel auquel vous voulez accéder.

Utilisez la commande suivante pour signer le CSR, procédez comme suit :

$ pktool signcsr signkey=CAlabel csr=cert.csr  \
serial=0x02 outcert=reponame.crt.pem issuer="CN=name"

Le certificat est créé dans le fichier reponame.crt.pem. Utilisez la commande OpenSSL suivants pour examiner le certificat, procédez comme suit :

$ openssl x509 -text -in reponame.crt.pem

L'extraction de la clé de certificat

La clé de ce certificat d'extraction à partir du keystore. Définissez label sur la même valeur d'étiquette que vous avez spécifiée lors de l'exécution de gencsr pour générer le CSR à la section Génération d'une demande de signature de certificat. Utilisez la commande suivante pour exporter la clé du keystore :

$ pktool export objtype=key label=label outformat=pem \
outfile=reponame.key.pem

Transférez le certificat et la clé aux systèmes client qui doivent accéder au référentiel protégé par SSL.

Autorisation des systèmes client à accéder au référentiel protégé

Pour accéder au référentiel protégé SSL, les systèmes client doivent disposer d'un exemplaire de le certificat et la clé et doit indiquer le certificat et clé à l'intérieur de la configuration de l'éditeur.

Copiez le certificat (reponame.crt.pem) et la clé (reponame.key.pem) dans chaque système client. Vous pouvez, par exemple, copiez-les vers le répertoire /var/pkg/ssl de chaque client.

Utilisez la commande suivante pour spécifier le certificat dans votre généré la configuration de l'éditeur et la clé, procédez comme suit :

$ pkg set-publisher -k reponame.key.pem -c reponame.crt.pem \
-p https://repolocation

Notez que SSL HTTPS d'authentification référentiel n'est prise en charge que pour URI. L'authentification SSL n'est pas prise en charge pour les URI de référentiel de fichiers.