2 # Profile for restricting lightdm guest session
3 # Author: Martin Pitt <martin.pitt@ubuntu.com>
5 # This abstraction provides the majority of the confinement for guest sessions.
6 # It is in its own abstraction so we can have a centralized place for
7 # confinement for the various lightdm sessions (guest, freerdp, uccsconfigure,
8 # etc). Note that this profile intentionally omits chromium-browser.
10 #include <abstractions/authentication>
11 #include <abstractions/cups-client>
12 #include <abstractions/dbus>
13 #include <abstractions/dbus-session>
14 #include <abstractions/dbus-accessibility>
15 #include <abstractions/nameservice>
16 #include <abstractions/wutmp>
18 # bug in compiz https://launchpad.net/bugs/697678
19 /etc/compizconfig/config rw,
20 /etc/compizconfig/unity.ini rw,
29 /dev/** rmw, # audio devices etc.
30 owner /dev/shm/** rmw,
41 owner /media/** rmwlixk, # we want access to USB sticks and the like
50 @{PROC}/sys/vm/overcommit_memory r,
52 # needed for gnome-keyring-daemon
54 # needed for bamfdaemon and utilities such as ps and killall
60 # needed for confined trusted helpers, such as dbus-daemon
61 /sys/kernel/security/apparmor/.access rw,
63 owner /tmp/** rwlkmix,
68 /var/guest-data/** rw, # allow to store files permanently
70 owner /var/tmp/** rwlkm,
72 # necessary for writing to sockets, etc.
74 /{,var/}run/shm/** wl,
75 /{,var/}run/uuidd/request w,
76 # libpam-xdg-support/logind
77 owner /{,var/}run/user/*/** rw,
81 # allow processes in the guest session to signal and ptrace each other
82 signal peer=@{profile_name},
83 ptrace peer=@{profile_name},
84 # needed when logging out of the guest session
85 signal (receive) peer=unconfined,
87 # silence warnings for stuff that we really don't want to grant
88 deny capability dac_override,
89 deny capability dac_read_search,
90 #deny /etc/** w, # re-enable once LP#697678 is fixed