Bug 1379945

Summary: SELinux is preventing lightdm from 'write' accesses on the directory huginn.
Product: [Fedora] Fedora Reporter: kakoskin
Component: selinux-policyAssignee: Lukas Vrabec <lvrabec>
Status: CLOSED NOTABUG QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 24CC: dominick.grift, dwalsh, lvrabec, mgrepl, plautrba
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Unspecified   
Whiteboard: abrt_hash:33625f498244de4660a628a06a2d7fccf31e24f8df6788541de911e160779520;
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-09-29 12:25:22 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description kakoskin 2016-09-28 08:13:54 UTC
Description of problem:
I tried to change directory XFCE uses to find background images. Directory in question appears to be my home directory, which is not fuse mounted. I have some sshfs directories mounted inside my home directory but I was not accessing them when this error occured.
SELinux is preventing lightdm from 'write' accesses on the directory huginn.

*****  Plugin catchall_boolean (89.3 confidence) suggests   ******************

If you want to allow use to fusefs home dirs
Then you must tell SELinux about this by enabling the 'use_fusefs_home_dirs' boolean.
You can read 'None' man page for more details.
Do
setsebool -P use_fusefs_home_dirs 1

*****  Plugin catchall (11.6 confidence) suggests   **************************

If you believe that lightdm should be allowed write access on the huginn directory by default.
Then you should report this as a bug.
You can generate a local policy module to allow this access.
Do
allow this access for now by executing:
# ausearch -c 'lightdm' --raw | audit2allow -M my-lightdm
# semodule -X 300 -i my-lightdm.pp

Additional Information:
Source Context                system_u:system_r:xdm_t:s0-s0:c0.c1023
Target Context                system_u:object_r:fusefs_t:s0
Target Objects                huginn [ dir ]
Source                        lightdm
Source Path                   lightdm
Port                          <Unknown>
Host                          (removed)
Source RPM Packages           
Target RPM Packages           
Policy RPM                    selinux-policy-3.13.1-191.17.fc24.noarch
Selinux Enabled               True
Policy Type                   targeted
Enforcing Mode                Enforcing
Host Name                     (removed)
Platform                      Linux (removed) 4.7.4-200.fc24.x86_64 #1 SMP Thu
                              Sep 15 18:42:09 UTC 2016 x86_64 x86_64
Alert Count                   5
First Seen                    2016-09-27 17:31:39 EEST
Last Seen                     2016-09-28 09:38:14 EEST
Local ID                      62579515-60e3-42fa-9bd0-4f461ffec25f

Raw Audit Messages
type=AVC msg=audit(1475044694.817:218): avc:  denied  { write } for  pid=1704 comm="lightdm" name="huginn" dev="dm-3" ino=5242881 scontext=system_u:system_r:xdm_t:s0-s0:c0.c1023 tcontext=system_u:object_r:fusefs_t:s0 tclass=dir permissive=0


Hash: lightdm,xdm_t,fusefs_t,dir,write

Version-Release number of selected component:
selinux-policy-3.13.1-191.17.fc24.noarch

Additional info:
reporter:       libreport-2.7.2
hashmarkername: setroubleshoot
kernel:         4.7.4-200.fc24.x86_64
type:           libreport

Comment 1 kakoskin 2016-09-28 11:26:45 UTC
I am getting this denial even before mounting any fuse file systems in my home directory.

Comment 2 Lukas Vrabec 2016-09-29 12:25:22 UTC
Kakoskin, 

FIX is included in your report: 

*****  Plugin catchall_boolean (89.3 confidence) suggests   ******************

If you want to allow use to fusefs home dirs
Then you must tell SELinux about this by enabling the 'use_fusefs_home_dirs' boolean.
You can read 'None' man page for more details.
Do
setsebool -P use_fusefs_home_dirs 1

Comment 3 kakoskin 2016-09-30 21:37:26 UTC
I apologise for the mess my mistake has caused.

Issue was caused by mislabeling entire home directory to system_u:object_r:fusefs_t by mistyped command "cp -a .* ~/". 

Is there any reason to allow users to set the context of any file to system_u:object_r:fusefs_t outside of actual fuse mounts?