On Di, 17.09.19 19:29, Willy Tarreau (w@xxxxxx) wrote: > > What do you expect these systems to do though? > > > > I mean, think about general purpose distros: they put together live > > images that are supposed to work on a myriad of similar (as in: same > > arch) but otherwise very different systems (i.e. VMs that might lack > > any form of RNG source the same as beefy servers with muliple sources > > the same as older netbooks with few and crappy sources, ...). They can't > > know what the specific hw will provide or won't. It's not their > > incompetence that they build the image like that. It's a common, very > > common usecase to install a system via SSH, and it's also very common > > to have very generic images for a large number varied systems to run > > on. > > I'm totally file with installing the system via SSH, using a temporary > SSH key. I do make a strong distinction between the installation phase > and the final deployment. The SSH key used *for installation* doesn't > need to the be same as the final one. And very often at the end of the > installation we'll have produced enough entropy to produce a correct > key. That's not how systems are built today though. And I am not sure they should be. I mean, the majority of systems at this point probably have some form of hardware (or virtualized) RNG available (even raspi has one these days!), so generating these keys once at boot is totally OK. Probably a number of others need just a few seconds to get the entropy needed, where things are totally OK too. The only problem is systems that lack any reasonable source of entropy and where initialization of the pool will take overly long. I figure we can reduce the number of systems where entropy is scarce quite a bit if we'd start crediting entropy by default from various hw rngs we currently don't credit entropy for. For example, the TPM and older intel/amd chipsets. You currently have to specify rng_core.default_quality=1000 on the kernel cmdline to make them credit entropy. I am pretty sure this should be the default now, in a world where CONFIG_RANDOM_TRUST_CPU=y is set anyway. i.e. why say RDRAND is fine but those chipsets are not? That makes no sense to me. I am very sure that crediting entropy to chipset hwrngs is a much better way to solve the issue on those systems than to just hand out rubbish randomness. Lennart -- Lennart Poettering, Berlin