From: Dominick Grift <dac.override@gmail.com>
To: Laurent Bigonville <bigon@debian.org>, selinux-refpolicy@vger.kernel.org
Subject: Re: systemd --user for GDM started as unconfined_t instead of xdm_t
Date: Sun, 6 Oct 2019 12:01:25 +0200 [thread overview]
Message-ID: <20191006100125.GC469820@brutus.lan> (raw)
In-Reply-To: <20191006094156.GB469820@brutus.lan>
[-- Attachment #1: Type: text/plain, Size: 2440 bytes --]
On Sun, Oct 06, 2019 at 11:41:56AM +0200, Dominick Grift wrote:
> On Sun, Oct 06, 2019 at 11:22:00AM +0200, Laurent Bigonville wrote:
> > Hello,
> >
> > I discovered today that the GDM own processes are started as unconfined_t
> > instead of xdm_t because systemd --user process itself is started in that
> > context.
> >
> > This is probably related to:
> >
> > commit da156aea1e89a6ff6025be7e50c9c8173e5a6dcf
> > Author: Chris PeBenito <Christopher.PeBenito@microsoft.com>
> > Date: Fri Apr 19 11:50:59 2019 -0400
> >
> > systemd: Add initial policy for systemd --user.
> >
> > This is just a start; it does not cover all uses.
> >
> > Signed-off-by: Chris PeBenito <Christopher.PeBenito@microsoft.com>
> >
> > Was that expected and/or wanted?
>
> It just means that gdm hooks into pam, and since 1. your __default__ id is set to unconfined_u and 2. you do not have a private id for gdm (and gnome-initial-setup) systemd will start gdm's systemd --user instance with unconfined_u:unconfined_r:unconfined_t.
>
> One (ugly but arguable less ugly than the alternative) solution is to create a "xdm_u" and allow systemd to run a systemd --user instance on behalf of gdm with "xdm_u:system_r:xdm_t"
>
> That way you can tell selinux that gdm's systemd --user instance should never transition out of xdm_u:system_r:xdm_t
>
> echo "system_r:init_t:s0 system_r:xdm_t:s0" > /etc/selinux/TYPE/contexts/users/xdm_u
>
> Then all processes in the gdm session should stay in xdm_t (but some processes will be associate with xdm_u and other with system_u).
>
> You would probably also want to add to semanage.conf:
>
> ignoredirs = /var/lib/gdm;/run/gnome-initial-setup
>
> and make sure that selinux does not relabel /run/user/$(id -u gdm)
Just to clarify. The patch you reference is not responsible for the uglyness that is GDM/Gnome
Without this patch, the systemd --user instance of GDM (and any other users) would run in "init_t". This is obviously also not desirable.
>
> >
> > Kind regards,
> >
> > Laurent Bigonville
> >
>
> --
> Key fingerprint = 5F4D 3CDB D3F8 3652 FBD8 02D5 3B6C 5F1D 2C7B 6B02
> https://sks-keyservers.net/pks/lookup?op=get&search=0x3B6C5F1D2C7B6B02
> Dominick Grift
--
Key fingerprint = 5F4D 3CDB D3F8 3652 FBD8 02D5 3B6C 5F1D 2C7B 6B02
https://sks-keyservers.net/pks/lookup?op=get&search=0x3B6C5F1D2C7B6B02
Dominick Grift
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 659 bytes --]
next prev parent reply other threads:[~2019-10-06 10:01 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-10-06 9:22 systemd --user for GDM started as unconfined_t instead of xdm_t Laurent Bigonville
2019-10-06 9:41 ` Dominick Grift
2019-10-06 10:01 ` Dominick Grift [this message]
2019-10-06 10:13 ` Dominick Grift
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20191006100125.GC469820@brutus.lan \
--to=dac.override@gmail.com \
--cc=bigon@debian.org \
--cc=selinux-refpolicy@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.