We have has a little trouble with a small box that acts as a VPN end-point and mail relay for our network, caused by the available entropy for /dev/random
being too low (which causes TLS connection attempts by exim to fail).
The machine doesn't do anything else, so the normal feed into the entropy pool (interrupt timings from things like disk access) is not enough. As a quick hack I've set a looping script that reads from /dev/hda
at a few Mbyte/sec which keeps it topped up. Other than buying a hardware RNG, is there a cleaner way of piping data for entropy from elsewhere, such as a copy of the data our file server uses for its entropy pool? I've spotted several tips for using rng-tools to feed it from /dev/urandom
on the same or another machine but that "feels dirty".
Also, is it possible to increase the maximum pool size? It currently seems to max out at 3585.
Does the motherboard have an audio chip? In that case you can use "white noise" for entropy.
Take a look at this article.
If you are ready to get a bit wild, how about audio entropy daemon or video entropy daemon? Just put some video or audio clip running and let them generate the randomness for you.
A bit less wild method would be timer entropy daemon.
I realize your initial posting indicated a preference for a non-hardware RNG solution. However, I recently acquired one of these: http://www.entropykey.co.uk/ and must say that it seems to be quite nice for the relatively low cost. Additionally, it can be shared over the network between multiple machines.