Keine Zufallsdaten aus /dev/random

Bei der Konfiguration von exim ist ein sehr merkwürdiges Problem aufgetreten. Wenn ich eine eMail über SSL / TLS verschicken wollte, hing der eMail-Server und machte nichts mehr. Nach langem Wundern und Suchen mit SSL-Zertifikaten und dergleichen, schaute ich mit exim -d 9 den Debug-Output an.

Exim braucht zur Verschlüsselung einen DH-Hash, welcher bei Bedarf generiert wird. Dafür ist gnutls zuständig. Leider brauchte das Tool ca. 30min, um den 512kbit DH-Hash zu generieren.

time /usr/bin/certtool –generate-privkey –bits 512 >tempgnutls
Generating a private key…
Generating a 512 bit RSA private key…

real 25m44.645s
user 0m0.010s
sys 0m0.040s

Irgendwas ist faul im Staate Dänemark. Weiter auf der Suche hatte ich nun /dev/random im Verdacht. Nach einigen Problemen der Google-Fragestellung kamen auch zwei andere Leute zum Vorschein. Das Problem sind also entrophys, Zufallsinterrupts, von welchen ich nicht genug habe.

cat /proc/sys/kernel/random/entropy_avail
192

Treiber-Interupts hacken kam nicht in Frage. Ich folgte dem Symlink-Vorschlag, und löschte /dev/random und packte /dev/urandom mit ln -s /dev/urandom /dev/random an seine Stelle. Siehe da, DH-Hashes lassen sich in Sekunden generieren.

Leave a Reply