Virtio RNG est un générateur de nombres aléatoires paravirtualisé. Virtio RNG fournit des nombres aléatoires à partir d'un pool d'entropie généré par la machine hôte de votre instance de machine virtuelle (VM). Le pool d'entropie collecte des bits d'informations aléatoires du système et utilise ces informations pour générer des nombres véritablement aléatoires que vous pouvez ensuite utiliser pour des informations sensibles telles que des clés SSH ou des ID uniques.
Avant de commencer
-
Si ce n'est pas déjà fait, configurez l'authentification.
L'authentification est le processus permettant de valider votre identité pour accéder aux services et aux API Google Cloud.
Pour exécuter du code ou des exemples depuis un environnement de développement local, vous pouvez vous authentifier auprès de Compute Engine comme suit :
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
-
Limites
- Virtio RNG n'est pas disponible pour les images Windows.
- Par défaut, les VM Compute Engine utilisent Virtio RNG au lieu d'un daemon pour remplir le pool d'entropie invité. Si vous préférez utiliser un daemon de collecte d'entropie au lieu d'utiliser Virtio RNG, vous devez en installer un. Pour obtenir un exemple de daemon de collecte d'entropie, consultez la documentation sur
rng-tools
.
Vérifier que Virtio RNG est activé
Vous pouvez vérifier si Virtio RNG est activé sur votre VM en exécutant la commande suivante :
lsmod | grep rng
Lorsque Virtio RNG est activé, le résultat ressemble à ce qui suit :
virtio_rng 16384 0 rng_core 16384 2 virtio_rng virtio_ring 28672 4 virtio_rng,virtio_scsi,virtio_pci,virtio_net virtio 16384 4 virtio_rng,virtio_scsi,virtio_pci,virtio_net
Tester Virtio RNG
Vous pouvez tester Virtio RNG en utilisant l'appareil /dev/random
.
Connectez-vous à la VM à l'aide de SSH. Par exemple, vous pouvez utiliser la gcloud CLI pour vous connecter :
gcloud compute ssh VM_NAME
Remplacez
VM_NAME
par le nom de votre VM.Installez
rng-tools
:CentOS
Exécutez la commande suivante pour installer
rng-tools
:sudo yum install rng-tools
Debian
Exécutez la commande suivante pour installer
rng-tools
:sudo apt install rng-tools
Fedora CoreOS
Exécutez la commande suivante pour installer
rng-tools
:sudo yum install rng-tools
RHEL
Exécutez la commande suivante pour installer
rng-tools
:sudo yum install rng-tools
SLES
Exécutez la commande suivante pour installer
rng-tools
:sudo zypper install rng-tools
Ubuntu LTS
Exécutez la commande suivante pour installer
rng-tools
:sudo apt install rng-tools
Certaines images Ubuntu renvoient une erreur
Package 'rng-tools' has no installation candidate
. Si vous recevez cette erreur, exécutez les commandes suivantes :sudo apt update sudo apt install rng-tools
Sur la VM, exécutez la commande
rngtest
:cat /dev/random | rngtest -c 1000
Si Virtio RNG n'est pas activé, la commande ne renvoie rien. Si Virtio RNG est activé, vous recevez une réponse semblable à celle-ci :
rngtest 2-unofficial-mt.14.. rngtest: starting FIPS tests... rngtest: bits received from input: 20000032 rngtest: FIPS 140-2 successes: 1000 rngtest: FIPS 140-2 failures: 0 rngtest: FIPS 140-2(2001-10-10) Monobit: 0 rngtest: FIPS 140-2(2001-10-10) Poker: 0 rngtest: FIPS 140-2(2001-10-10) Runs: 0 rngtest: FIPS 140-2(2001-10-10) Long run: 0 rngtest: FIPS 140-2(2001-10-10) Continuous run: 0 rngtest: input channel speed: (min=4.801; avg=7.318; max=7.839)Mibits/s rngtest: FIPS tests speed: (min=39.005; avg=69.557; max=72.523)Mibits/s rngtest: Program run time: 2880954 microseconds
Étape suivante
- En savoir plus sur Virtio RNG
- En savoir plus sur
/dev/random
- Pour en savoir plus sur les images disponibles sur Compute Engine, consultez la section Détails des systèmes d'exploitation.