Re: Fedora 33 System-Wide Change proposal: systemd-resolved

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

 




On Wed, Apr 15, 2020 at 10:08 am, Florian Weimer <fweimer@xxxxxxxxxx> wrote:
* Ben Cotton:

Enable systemd-resolved by default. glibc will perform name resolution
 using nss-resolve rather than nss-dns.

Is this intended for Fedora Server and others as well, or just
Workstation?  I assume it's for everywhere.

Well I've proposed it for everywhere, because it seems desirable to have everywhere. But if Server or another product doesn't want it, we could do Workstation-only. It's already been approved by the Workstation WG.

Most Kubernetes/OKD clusters assume that both single-label and
multi-label query names are forwarded over DNS (contrary to ICANN
recommendations), and that DNS servers are processed in listed order for
all queries (no parallel queries, no randomized server selection).  If
systemd-resolved behaves differently, it can make Fedora incompatible
with Kubernetes clusters.  (This is one reason why glibc still not
follows the ICANN recommendations.)

With the Ubuntu approach, search list processing still resides within
glibc, so their Kubernetes experience would not necessarily match ours.

Hm, it sounds like this is the main outstanding issue from this discussion. It is beyond my expertise. I guess we'll need a bug report where the relevant experts can figure out whether we need to change Kubernetes or systemd here.

You're right that continuing to use nss-dns would avoid any such problems while maintaining the other benefits of systemd-resolved. That could be a fallback plan if needed.

Will Fedora treat such cross-VPN leaks as security bugs going and
forward and fix them?  (I suspect it would require constant work, and
lots of it.)

Well they were always serious security bugs, just bugs that we were unable to solve without a local resolver. I don't think it's going to require constant work. It's a problem already solved by NetworkManager as long as you use either dnsmasq and systemd-resolved for DNS.

Is this expected to work with the Red Hat VPN out of the box, or do we
have to disable all this and use a custom configuration? Has this been
discussed with Infosec?  It looks like this will break their DNS
sinkholing for domains such as REDHAT[.]CO (not COM).

It works out of the box, yes, and should work with any other VPN plugin as well, at least for VPNs that create separate tun interfaces for each connection like OpenVPN does. I think some VPN plugins might not do that (AnyConnect?).

I hadn't considered discussing a Fedora OS change with infosec. Anyway, the current behavior is insecure, and the proposed behavior is correct. ;) A sinkholing hack used by one company is nice to avoid some phishing, but it's still just a hack, not something we should design our OS around. And certainly not worth compromising the privacy of Fedora users. That said, any company's IT department can change whatever defaults they want on managed systems, configure systemd-resolved however they please, disable it entirely, whatever.

It may also need to changes to Postfix (for DANE/TLSA handling in
particular, depending on the level of DNSSEC support, see below).

Based on Tom's mail, it sounds like this will be a problem. I guess the simple solution is to mention this in the release notes and suggest that users enable DNSSEC if running Postfix. We can also warn the Postfix developers to document this problem. I guess that should suffice?

libvirt may need changes as well, for its internal DNS relay.

I'm not familiar with this; what would require changes in libvirt? Are you concerned about nss-libvirt?

The manual page resolv.conf(5) needs to be updated.

Good catch, I would have forgotten that.

Since libnss_resolve.so.2 is still linked against libpthread and we
might not be able to remove libpthread from glibc as a separate library
in time for Fedora 33, some applications may have to start linking
against libpthread explicitly even though they do not actually need it.
(This is due to a long-standing limitation of loading libpthread via
dlopen.)

I don't understand this. Why would an application have to link to pthread to dlopen a shared object that uses it?

Michael

_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Users]     [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