GNU/Linux >> Tutoriales Linux >  >> Linux

GPG no tiene suficiente entropía

Solución 1:

¿Has echado un vistazo a RNG?

Tipos Fedora/Rh/Centos:sudo yum install rng-tools

En tipos de deb:sudo apt-get install rng-tools para configurarlo.

Luego ejecuta sudo rngd -r /dev/urandom antes de generar las claves.

Referencia:http://it.toolbox.com/blogs/lim/how-to-generate-enough-entropy-for-gpg-key-generation-process-on-fedora-linux-38022

Solución 2:

Pude generar la clave por

apt-get install rng-tools

En otra ventana SSH abierta

 gpg --gen-key

Regrese a su primera sesión SSH y ejecute

sudo rngd -r /dev/urandom

¡Deja que esto funcione hasta que gpg genere tus claves!

Solución 3:

Para verificar la cantidad de bytes de entropía disponibles actualmente, use

cat /proc/sys/kernel/random/entropy_avail

El depósito de entropía tiene un tamaño de 4096 bytes, que puede agotarse muy rápidamente.

Con esta pequeña herramienta de 'velocidad de lectura' (http://1wt.eu/tools/readspeed/), puede medir qué tan rápido se llena el cubo de entropía con diferentes métodos.

Por ejemplo, inicie:

$ ./readspeed < /dev/random

y mueve el mouse alrededor. Verás que 'readspeed' vacía el cubo de entropía tan pronto como se llena, y cuando mueves el mouse, se llena un poco.

Al probar diferentes métodos, parece que la entrada del teclado y los movimientos del mouse son los más eficientes para reponer ese cubo. Las transferencias de red y las copias de disco duro no tienen mucha influencia.

Finalmente, hay dispositivos de generación de entropía disponibles, como este:http://www.entropykey.co.uk/.

Solución 4:

+1 para herramientas rng

En caso de que esté atrapado en una situación como la mía, sin permisos para instalar software nuevo (herramientas rng) en un servidor sin periféricos prácticamente sin hardware de entrada (tarjeta de sonido, teclado, mouse) conectado. Puede ejecutar este código simple desde otra terminal conectada al mismo servidor, para agregar a la entropía. No importa si comienza a ejecutar esto antes o después de iniciar gpg --gen-key

$ nice -n 19 bash
$ until [ $COUNT -lt 1 ]; do
  let COUNT=`cat /proc/sys/kernel/random/entropy_avail`
  echo "`date` COUNTER $COUNT"
done

La primera línea es iniciar un nuevo shell bash, con menor prioridad (necesitaba ser amable en un servidor compartido por muchos usuarios). El ciclo hasta es infinito, así que recuerde romperlo una vez que se genera la clave. Todo lo que está haciendo es haciendo que el tráfico de la red aumente la entropía. También monitorea el contador entropy_avail para mostrar cómo gpg lo llena y lo vacía en el otro lado. En mi caso, el contador se llenó rápidamente a 64 y se vació de nuevo a 0 (supongo que gpg se recupera en un trozo de 64). Estuve esperando la generación de claves de 4096 bits durante más de 3 horas en el servidor. Después de comenzar a ejecutar este script, se terminó en menos de 5 minutos.

Solución 5:

Estaba obligado y decidido a generar entropía en mi servidor Ubuntu 14.04 sin cabeza para generar una clave 4096 con gpg --gen-key

Hay un paquete para generar entropía llamado haveged. Ejemplo de instalación:

sudo apt-get install haveged

Tuve que sudo apt-get install rng-tools ya que es una dependencia en la siguiente prueba.

Ejemplo de una prueba para ver si haveged genera entropía:

cat /dev/random | rngtest -c 1000

Una cantidad muy pequeña de fallas es aceptable en cualquier generador de números aleatorios, pero puede esperar ver entre 998 y 1000 éxitos con mucha frecuencia al usar el cursor.

Lo descubrí en un tutorial aquí:

https://www.digitalocean.com/community/tutorials/how-to-setup-additional-entropy-for-cloud-servers-using-haveged

Ahora tengo claves después de ejecutar gpg --gen-key


Linux
  1. bc:comando no encontrado

  2. zypper:comando no encontrado

  3. jasmine-node:comando no encontrado

  4. gedit:comando no encontrado

  5. ¿Python tiene un argumento argc?

virt-manager:comando no encontrado

xeyes:comando no encontrado

GoBuster:comando no encontrado

mmm:comando no encontrado

arpspoof:comando no encontrado

¿Python tiene sincronización?