Mantieni tutto organizzato con le raccolte
Salva e classifica i contenuti in base alle tue preferenze.
Linux
Virtio RNG è un generatore di numeri casuali paravirtualizzato. Virtio RNG fornisce numeri casuali da un pool di entropia generato dalla macchina host dell'istanza di macchina virtuale (VM). Il pool di entropia raccoglie bit di informazioni casuali dal sistema e li utilizza per generare numeri realmente casuali che puoi utilizzare per informazioni sensibili, ad esempio chiavi SSH o ID univoci.
Prima di iniziare
Se non l'hai ancora fatto, configura l'autenticazione.
L'autenticazione è il processo mediante il quale la tua identità viene verificata per l'accesso ai servizi e alle API Google Cloud .
Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi autenticarti su Compute Engine selezionando una delle seguenti opzioni:
Install the Google Cloud CLI.
After installation,
initialize the Google Cloud CLI by running the following command:
Virtio RNG non è disponibile per le immagini Windows.
Per impostazione predefinita, le VM Compute Engine utilizzano Virtio RNG anziché un daemon per ricaricare il pool di entropia guest. Se preferisci utilizzare un daemon di raccolta dell'entropia in abbinamento o come alternativa a Virtio RNG, devi installarne uno. Per consultare un esempio di un daemon per la raccolta dell'entropia, vedi la documentazione su rng-tools.
Verifica se Virtio RNG è abilitato
Puoi verificare se Virtio RNG è abilitato sulla tua VM eseguendo il seguente comando:
lsmod | grep rng
Quando Virtio RNG è abilitato, l'output è simile al seguente:
Puoi testare Virtio RNG utilizzando il dispositivo /dev/random.
Connettiti alla VM utilizzando SSH: Ad esempio, puoi utilizzare gcloud CLI per la connessione:
gcloud compute ssh VM_NAME
Sostituisci VM_NAME con il nome della VM.
Installa rng-tools:
CentOS
Utilizza il seguente comando per installare rng-tools:
sudo yum install rng-tools
Debian
Utilizza il seguente comando per installare rng-tools:
sudo apt install rng-tools
Fedora CoreOS
Utilizza il seguente comando per installare rng-tools:
sudo yum install rng-tools
RHEL
Utilizza il seguente comando per installare rng-tools:
sudo yum install rng-tools
SLES
Utilizza il seguente comando per installare rng-tools:
sudo zypper install rng-tools
Ubuntu LTS
Utilizza il seguente comando per installare rng-tools:
sudo apt install rng-tools
Alcune immagini Ubuntu restituiscono un errore Package 'rng-tools' has no installation
candidate. Se viene restituito questo errore, esegui i seguenti comandi:
sudo apt update
sudo apt install rng-tools
Nella VM, esegui il comando rngtest:
cat /dev/random | rngtest -c 1000
Se Virtio RNG non è abilitato, il comando non restituisce niente. Se è abilitato, riceverai una risposta simile alla seguente:
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
[[["Facile da capire","easyToUnderstand","thumb-up"],["Il problema è stato risolto","solvedMyProblem","thumb-up"],["Altra","otherUp","thumb-up"]],[["Difficile da capire","hardToUnderstand","thumb-down"],["Informazioni o codice di esempio errati","incorrectInformationOrSampleCode","thumb-down"],["Mancano le informazioni o gli esempi di cui ho bisogno","missingTheInformationSamplesINeed","thumb-down"],["Problema di traduzione","translationIssue","thumb-down"],["Altra","otherDown","thumb-down"]],["Ultimo aggiornamento 2025-09-04 UTC."],[[["\u003cp\u003eVirtio RNG is a paravirtualized random number generator that provides random numbers to virtual machines from the host machine's entropy pool, used for sensitive information like SSH keys.\u003c/p\u003e\n"],["\u003cp\u003eVirtio RNG is pre-enabled on all Linux virtual machines (VMs) within Compute Engine, simplifying the process of obtaining random numbers for various applications.\u003c/p\u003e\n"],["\u003cp\u003eYou can verify if Virtio RNG is enabled on your Linux VM by using the command \u003ccode\u003elsmod | grep rng\u003c/code\u003e in the terminal.\u003c/p\u003e\n"],["\u003cp\u003eTo test if Virtio RNG is working, you need to connect to your VM via SSH, install the \u003ccode\u003erng-tools\u003c/code\u003e package, and execute the command \u003ccode\u003ecat /dev/random | rngtest -c 1000\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eWindows images do not support Virtio RNG.\u003c/p\u003e\n"]]],[],null,["# Enabling Virtio RNG\n\nLinux\n\n*** ** * ** ***\n\nVirtio RNG is a paravirtualized random number generator. Virtio RNG provides\nrandom numbers from an entropy pool generated by the host machine of your\nvirtual machine (VM) instance. The entropy pool collects random bits of\ninformation from the system and uses that information to generate truly random\nnumbers, which you can use for sensitive information, such as SSH keys or unique\nIDs.\n\nBefore you begin\n----------------\n\n- If you haven't already, set up [authentication](/compute/docs/authentication). Authentication verifies your identity for access to Google Cloud services and APIs. To run code or samples from a local development environment, you can authenticate to Compute Engine by selecting one of the following options:\n 1.\n [Install](/sdk/docs/install) the Google Cloud CLI.\n\n After installation,\n [initialize](/sdk/docs/initializing) the Google Cloud CLI by running the following command:\n\n ```bash\n gcloud init\n ```\n\n\n If you're using an external identity provider (IdP), you must first\n [sign in to the gcloud CLI with your federated identity](/iam/docs/workforce-log-in-gcloud).\n | **Note:** If you installed the gcloud CLI previously, make sure you have the latest version by running `gcloud components update`.\n 2. [Set a default region and zone](/compute/docs/gcloud-compute#set_default_zone_and_region_in_your_local_client).\n\nLimitations\n-----------\n\n- Virtio RNG is not available for Windows images.\n- By default, Compute Engine VMs use Virtio RNG instead of a daemon to refill the guest entropy pool. If you prefer to use an entropy gathering daemon instead of or along with Virtio RNG, you must install one. For an example of an entropy gathering daemon, see the [`rng-tools`](https://git.kernel.org/pub/scm/utils/kernel/rng-tools/rng-tools.git/about/) documentation.\n\nChecking if Virtio RNG is enabled\n---------------------------------\n\n| **Note:** Virtio RNG comes pre-enabled on all Linux VMs.\n\nYou can check whether Virtio RNG is enabled on your VM by running the following\ncommand: \n\n```\nlsmod | grep rng\n```\n\nWhen Virtio RNG is enabled, your output is similar to the following: \n\n```\nvirtio_rng 16384 0\nrng_core 16384 2 virtio_rng\nvirtio_ring 28672 4 virtio_rng,virtio_scsi,virtio_pci,virtio_net\nvirtio 16384 4 virtio_rng,virtio_scsi,virtio_pci,virtio_net\n```\n\nTesting Virtio RNG\n------------------\n\nYou can test Virtio RNG by using the `/dev/random` device.\n| **Note:** Testing is not supported on SLES 15 for SAP.\n\n1. Connect to the VM by using SSH. For example, you can use the\n gcloud CLI to connect:\n\n ```\n gcloud compute ssh VM_NAME\n ```\n\n \u003cbr /\u003e\n\n Replace \u003cvar translate=\"no\"\u003eVM_NAME\u003c/var\u003e with the name of your VM.\n2. Install `rng-tools`:\n\n ### CentOS\n\n Use the following command to install `rng-tools`: \n\n ```\n sudo yum install rng-tools\n ```\n\n ### Debian\n\n Use the following command to install `rng-tools`: \n\n ```\n sudo apt install rng-tools\n ```\n\n ### Fedora CoreOS\n\n Use the following command to install `rng-tools`: \n\n ```\n sudo yum install rng-tools\n ```\n\n ### RHEL\n\n Use the following command to install `rng-tools`: \n\n ```\n sudo yum install rng-tools\n ```\n\n ### SLES\n\n Use the following command to install `rng-tools`: \n\n ```\n sudo zypper install rng-tools\n ```\n\n ### Ubuntu LTS\n\n Use the following command to install `rng-tools`: \n\n ```\n sudo apt install rng-tools\n ```\n\n Some Ubuntu images return a `Package 'rng-tools' has no installation\n candidate` error. If you receive this error, run the following commands: \n\n ```\n sudo apt update\n sudo apt install rng-tools\n ```\n3. On the VM, run the `rngtest` command:\n\n ```\n cat /dev/random | rngtest -c 1000\n ```\n\nIf Virtio RNG isn't enabled, the command doesn't return anything. If\nit is enabled, you receive a response similar to the following: \n\n```\nrngtest 2-unofficial-mt.14..\nrngtest: starting FIPS tests...\nrngtest: bits received from input: 20000032\nrngtest: FIPS 140-2 successes: 1000\nrngtest: FIPS 140-2 failures: 0\nrngtest: FIPS 140-2(2001-10-10) Monobit: 0\nrngtest: FIPS 140-2(2001-10-10) Poker: 0\nrngtest: FIPS 140-2(2001-10-10) Runs: 0\nrngtest: FIPS 140-2(2001-10-10) Long run: 0\nrngtest: FIPS 140-2(2001-10-10) Continuous run: 0\nrngtest: input channel speed: (min=4.801; avg=7.318; max=7.839)Mibits/s\nrngtest: FIPS tests speed: (min=39.005; avg=69.557; max=72.523)Mibits/s\nrngtest: Program run time: 2880954 microseconds\n```\n\nWhat's next\n-----------\n\n- Learn more about [Virtio RNG](https://www.redhat.com/en/blog/red-hat-enterprise-linux-virtual-machines-access-random-numbers-made-easy)\n- Learn more about [`/dev/random`](https://wikipedia.org/wiki//dev/random)\n- View [Operating system details](/compute/docs/images/os-details) to learn more about the images available on Compute Engine"]]