Re: systemd --user for GDM started as unconfined_t instead of xdm_t

Dominick Grift <[email protected]>
Newsgroups org.kernel.vger.selinux-refpolicy
Message-ID <[email protected]>
On Sun, Oct 06, 2019 at 12:01:25PM +0200, Dominick Grift wrote:
> 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 <[email protected]>
> > > 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 <[email protected]>
> > > 
> > > 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.


I wonder what you happen if you would (would gdm still work?):

sudo systemctl mask user@$(id -u gdm).service user-runtime-dir@$(id -u gdm).service

> 
> > 
> > > 
> > > 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



-- 
Key fingerprint = 5F4D 3CDB D3F8 3652 FBD8 02D5 3B6C 5F1D 2C7B 6B02
https://sks-keyservers.net/pks/lookup?op=get&search=0x3B6C5F1D2C7B6B02
Dominick Grift
signature.asc (application/pgp-signature, 659 B)
-----BEGIN PGP SIGNATURE-----

iQGzBAEBCAAdFiEEujmXliIBLFTc2Y4AJXSOVTf5R2kFAl2Zvk4ACgkQJXSOVTf5
R2lMXAwAobBR+D9Mppub0VhY1LQj8IhJ3umZRlIk1pq7CzOSZODiCVAAqCaHP4Kq
yD2DMxwxfKvq8o2112AEjUc4qFqDxNy/iLQZ2JvNI8D7Pob9JO6Y4Izj9zho5rKl
J6zOhqhPOOvH0szGnprsso7r1tUop0z3WZaISpqGehuspl/Ex32myy4fzzwptHA0
/YIs+rFzAUF1PjxAKi2jSNDJB4ZxhstW6DCJH4DE3Niptw7kimfFK5crEftDg71W
HJ6I+RDWOA3XpedC1vYxgPCBQUP5eS61z6MXP4xlnnbUxCw2zMwyTvUTbYJQlsqN
IjxbKOQ9NSmSfrfAgcFCR3fHb0DJOfNqX/109D123uVv6jE8au8lqtLCbRYt0GFU
UV7vMWRg/YyB2ijmDxk4N4Z9CNYwUqByqDTKP7ribEZILsgE52zCmVcKMq+1SNJU
BwUQO585DV34Ekj0jwr9unH+oYDJCxuVedtLAfGmnCOvEQpM9qCl0BQSlK3lTIwo
8hNezNlc
=851b
-----END PGP SIGNATURE-----
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.