Re: RFC: Change the default hostname for Fedora 26+

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 08.11.16 16:49, Stephen Gallagher (sgallagh@xxxxxxxxxx) wrote:

> For as long as I can recall, Fedora has shipped with a default hostname of
> "localhost.localdomain"[1]. This default was "safe" for a very long time because
> we also shipped an /etc/hosts entry that routed this hostname to the loopback
> device for the benefit of some older system services (like sendmail).
> 
> However, having the default be the same on all systems introduces other
> problems, notably with regards to acting as a client to FreeIPA or Active
> Directory domain controllers.
> 
> When enrolling with one of these DCs, the machine's current hostname (up to the
> first dot) is used to uniquely identify the machine into the domain. If the
> machine's hostname is not unique in that domain, the enrollment will either fail
> or the machine will take over that name (depending on the server-side
> implementation). Neither case is likely to be what the user intended.
> 
> 
> Some information on competing platforms:
> 
> Windows deals with this on for its systems by assigning all new machines a
> random hostname of the form WIN-XXXXXXXXXXX (that's a strict count of 11 random
> characters of either capital letters or decimal numerals after the WIN- prefix).
> This is because there is a 15-character maximum limit on the machine-name in
> Active Directory, after which it is simply truncated (which is a bad behavior,
> but one we have to deal with).
> 
> Mac OS X and Ubuntu both require the user to pick a machine name at install time
> explicitly. They do not autogenerate one at all.
> 
> SUSE generates a random name of the format linux-XXXXXX (I'm not sure how many
> random characters).
> 
> 
> My proposal is that we should consider changing the default hostname for Fedora
> 26 to be either FED-XXXXXXXXXXX or FEDORA-XXXXXXXX. The former allows for a
> longer random string and therefore lower risk of collision in large
> environments, while the latter would also provide improved branding for
> Fedora[2]. Our default BASH shell prompt includes the current machine's hostname.
> 
> 
> Thoughts on how to generate these random strings are of course up for
> discussion. Given that initial machine creation may have limited available
> entropy, we may want to avoid just calling out to /dev/random. Dusty Mabe
> suggested in on IRC that one option might be to use either the first or last
> 8/11 characters from /etc/machine-id, since presumably those would be
> sufficiently random.

Other operating systems, notably security-focussed ones like ChromeOS,
go the other way, and try to remove as many identifiers as possible
that could be used to track users. In fact, at LPC we discussed even
making /etc/machine-id an optional concept in that context, so that
there really would not be any useful local ID that could leak to
external systems.

I must say I sympathise with ChromeOS approach there, I think it would
make sense to default to more secure default in this regard, rather
than opening this all up.

Now, I can see that it is useful for systems that install the IPA
client to behave differently here, and use some better hostname for
them, but I think this should only happen on those systems: I think a
good solution would be continue to use "localhost" as the Fedora
default hostname, but make the IPA enrollment code smart enough, so
that it recognizes that "localhost" is not useful as a public hostname
(it really should know this anyway!), and if it sees that
automatically changes the hostname to something more useful for IPA
clients. (changing the hostname in this case is easy, there's a
friendly bus API for that in hostnamed)

Hence, please keep this specific to IPA clients, don't let this leak
into the Fedora defaults.

(Also, please do not leak /etc/machine-id as it is — or any parts of
it — into identifiers that are passed onto the untrusted networks, in
particular as suffixes of hostnames. Instead, hash it with some
cryptographic, keyed hash function, and use a fixed, application-specific
key. That way the ID will be properly unique, and is derived in a
constant way from the machine ID but there's no way to derive the
original machine ID from the app-specific one. I figure this
recommendation should be added to the man page.)

Lennart

-- 
Lennart Poettering, Red Hat
_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]
  Powered by Linux