Linux – Feeding the kernels entropy source from other machines and/or increasing its maximum size

entropy-poollinuxrandom-number-generator

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.

Best Answer

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.