Attivazione di Virtio RNG


Virtio RNG è un generatore di numeri casuali paravirtualizzati. Virtio RNG fornisce numeri casuali provenienti da un pool di entropia generato dalla macchina host di macchina virtuale (VM). Il pool di entropia raccoglie bit casuali di le informazioni del sistema e le utilizza per generare query numeri, che puoi usare per informazioni sensibili, come chiavi SSH o codici ID.

Prima di iniziare

  • Se non l'hai già fatto, configura l'autenticazione. Autenticazione è la procedura di verifica dell'identità per l'accesso ai servizi e alle API di Google Cloud. Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi eseguire l'autenticazione Compute Engine come segue.
    1. Install the Google Cloud CLI, then initialize it by running the following command:

      gcloud init
    2. Set a default region and zone.

Limitazioni

  • Virtio RNG non è disponibile per le immagini Windows.
  • Per impostazione predefinita, le VM di Compute Engine utilizzano Virtio RNG al posto di un daemon per riempire il pool di entropia ospite. Se preferisci utilizzare un'entropia che raccoglie daemon invece di o insieme a Virtio RNG, è necessario installarne una. Per un esempio di entropia che raccoglie daemon, vedi il rng-tools documentazione.

Controllo dell'abilitazione di Virtio RNG in corso...

Puoi verificare se Virtio RNG è abilitato sulla tua VM eseguendo questo comando: :

lsmod | grep rng

Quando Virtio RNG è abilitato, l'output è simile al seguente:

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

Test di Virtio RNG

Puoi testare Virtio RNG utilizzando il dispositivo /dev/random.

  1. Connettiti alla VM tramite SSH. Ad esempio, puoi utilizzare gcloud CLI per connetterti:

    gcloud compute ssh VM_NAME
    

    Sostituisci VM_NAME con il nome della tua VM.

  2. Installa rng-tools:

    CentOS

    Usa questo comando per installare rng-tools:

    sudo yum install rng-tools

    Debian

    Usa questo comando per installare rng-tools:

    sudo apt install rng-tools

    Fedora CoreOS

    Usa questo comando per installare rng-tools:

    sudo yum install rng-tools

    RHEL

    Usa questo comando per installare rng-tools:

    sudo yum install rng-tools

    SLES

    Usa questo comando per installare rng-tools:

    sudo zypper install rng-tools

    Ubuntu LTS

    Usa questo 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 visualizzato questo errore, esegui questi comandi:

    sudo apt update
    sudo apt install rng-tools
    
  3. Sulla VM, esegui il comando rngtest:

    cat /dev/random | rngtest -c 1000
    

Se Virtio RNG non è abilitato, il comando non restituisce nulla. Se Se viene attivato, 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

Passaggi successivi