Red Hat Training

A Red Hat training course is available for Red Hat Satellite

3.2. Signatures numériques pour les paquetages RHN

Tous les paquetages distribués via RHN devraient avoir une signature numérique. Une signature numérique est créée avec une clé privée unique et peut être vérifiée avec la clé publique correspondante. Après la création d'un paquetage, le RPM source (SRPM) et le RPM peuvent être signés numériquement avec une clé GnuPG. Avant l'installation du paquetage, la clé publique est utilisée pour vérifier que le paquetage a été signé par un tiers de confiance et que le paquetage n'a pas changé depuis sa signature.

3.2.1. Génération d'une paire de clés GnuPG

Une paire de clés GnuPG consiste en une clé privée et une clé publique. Pour générer une paire de clés :
  1. Veuillez saisir la commande suivante en tant qu'utilisateur root sur l'invite shell :
    gpg --gen-key
    Si vous exécutez cette commande en tant qu'un utilisateur normal, vous verrez le message suivant :
    gpg: Warning: using insecure memory!
    
    Ce message apparaît parce que les utilisateurs normaux ne peuvent pas bloquer les pages de mémoire. Vu que vous souhaitez que personne d'autre ne possède votre clé privée GnuPG ou votre phrase-mot de passe privée, vous devez générer la paire de clés en tant que super-utilisateur. Le super-utilisateur peut bloquer les pages de mémoire, ce qui signifie que les informations ne seront jamais écrites sur disque.
  2. Après avoir exécuté la commande pour générer la paire de clés, vous verrez un écran de présentation contenant les options de clés similaire à l'exemple suivant :
    	gpg (GnuPG) 1.2.6; Copyright (C) 2004 Free Software
    	Foundation, Inc.  This program comes with ABSOLUTELY NO
    	WARRANTY. This is free software, and you are welcome to
    	redistribute it under certain conditions. See the file COPYING
    	for details. Please select what kind of key you want: (1) DSA
    	and ElGamal (default) (2) DSA (sign only) (4) RSA (sign only)
    	Your selection?
    
  3. Acceptez l'option par défaut : (1) DSA and ElGamal. Cette option vous permet de créer une signature numérique et de crypter/décrypter avec deux types de technologies. Saisissez 1, puis appuyez sur Entrée.
  4. Ensuite, choisissez la taille de la clé, qui est la longueur de la clé. Plus la clé est longue, plus vos messages seront résistants contre les attaques. Créer une clé d'au moins 1024 octets est recommandée.
  5. L'option suivante vous demande de spécifier combien de temps vous souhaitez que votre clé soit valide. Si vous choisissez une date d'expiration, souvenez-vous que toute personne qui utilise votre clé publique doit également être informée de son expiration et donnée une nouvelle clé publique. Il est recommandé de ne pas sélectionner de date d'expiration. Si vous ne choisissez pas de date, le système vous demandera de confirmer votre décision :
    Key does not expire at all Is this correct (y/n)?
    
  6. Appuyez sur y pour confirmer votre décision.
  7. Votre prochaine tâche est de fournir un ID utilisateur contenant votre nom, votre adresse électronique et un commentaire facultatif. Chaque valeur est demandée individuellement. Lorsque vous avez terminé, le système vous présentera un résumé des informations que vous avez saisies.
  8. Une fois que vous acceptez vos choix, vous saisirez une phrase-mot de passe.

    Note

    Tout comme vos mots de passe de compte, une bonne phrase-mot de passe est essentielle pour une sécurité optimale dans GnuPG. Mélangez les lettres majuscules et minuscules et/ou incluez des ponctuations.
  9. Une fois que vous saisissez et vérifiez votre phrase-mot de passe, vos clés sont générées. Un message similaire à l'exemple suivant sera affiché :
    We need to generate a lot of random bytes. It is a good idea to perform some
    other action (type on the keyboard, move the mouse, utilize the disks) 
    during the prime generation; this gives the random number generator a 
    better chance to gain enough entropy. 
    
    +++++.+++++.++++++++....++++++++++..+++++.+++++.+++++++.+++++++ +++.
    ++++++++++++++++++++++++++++++++++++++..........................++++
    
    Lorsque l'activité sur l'écran cesse, vos nouvelles clés sont placées dans le répertoire .gnupg, situé dans le répertoire de base root. Ceci est l'emplacement par défaut des clés générées par l'utilisateur root.
Pour répertorier les clés root, utilisez la commande :
gpg --list-keys
La sortie est similaire à l'exemple suivant :
/root/.gnupg/pubring.gpg ----------------  pub 1024D/B7085C8A 2002-02-18
 Your Name<you@example.com> 
sub 1024g/E12AF9C4 2002-02-18
Pour obtenir votre clé publique, utilisez la commande suivante :
gpg --export -a 'Your Name' > public_key.txt
Votre clé publique est écrite dans le fichier public_key.txt.
Cette clé publique est assez importante. Elle est la clé qui doit être déployée sur tous les systèmes client qui reçoivent les logiciels clients via up2date. Les techniques pour déployer cette clé dans une organisation sont examinées dans le Guide de configuration du client de Red Hat Network.