SELinux blocking Samba share mounting?
Steven Stromer
filter at stevenstromer.com
Thu Feb 12 22:06:51 UTC 2009
On Feb 12, 2009, at 4:43 PM, Daniel J Walsh wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Paul Howarth wrote:
>> On Thu, 12 Feb 2009 14:20:34 -0500
>> Steven Stromer <filter at stevenstromer.com> wrote:
>>
>>> Hopefully posting to the right list!
>>>
>>> I'm starting to migrate a few Fedora boxes over to the latest
>>> version
>>> of CentOS 5 running the latest version of samba:
>>>
>>> [~]# smbstatus
>>> Samba version 3.0.28-1.el5_2.1
>>>
>>>
>>> However, I am having a hard time getting SELinux to permit the
>>> mounting of shares on the first CentOS box. Disabling SELinux
>>> permits
>>> the shares to mount without problem:
>>>
>>> [~]# setenforce 1
>>> [~]# mount -t cifs //192.168.10.3/PHFiles /mnt/samba -o
>>> username=****,password=****,rw retrying with upper case share name
>>> mount error 6 = No such device or address
>>> [~]# setenforce 0
>>> [~]# mount -t cifs //192.168.10.3/PHFiles /mnt/samba -o
>>> username=****,password=****,rw [~]# ls -la /mnt/samba/
>>> total 8
>>> d---rws---+ 6 samba samba 0 Feb 10 11:17 .
>>> drwxr-xr-x 3 root root 4096 Feb 12 11:13 ..
>>> d---rws---+ 2 technology technology 0 Feb 10 11:14 Computing
>>> d---rws---+ 2 development development 0 Feb 10 11:17 Development
>>> d---rws---+ 2 root public 0 Feb 10 11:16 Marketing &
>>> Design d---rws---+ 2 root public 0 Feb 10 11:14
>>> Public
>>> Computing [~]# umount /mnt/samba/
>>> [~]# setenforce 1
>>>
>>>
>>> Installed policy version is:
>>> selinux-policy.noarch 2.4.6-137.1.el5
>>> selinux-policy-targeted.noarch 2.4.6-137.1.el5
>>>
>>>
>>> The two shared directories are:
>>>
>>> [~]# ls -laZ /home/server1/PHFiles/
>>> d---rws---+ samba samba
>>> system_u:object_r:samba_share_t .
>>> drwxr-xr-x root root root:object_r:user_home_dir_t
>>> .. d---rws---+ technology technology root:object_r:samba_share_t
>>> Computing d---rws---+ development development
>>> root:object_r:samba_share_t Development d---rws---+ root
>>> public root:object_r:samba_share_t Marketing &
>>> Design d---rws---+ root public
>>> root:object_r:samba_share_t Public Computing
>>>
>>> and
>>>
>>> [~]# ls -laZ /var/www/html
>>> d---rwsr-x+ development development
>>> system_u:object_r:public_content_rw_t . drwxr-xr-x root root
>>> system_u:object_r:httpd_sys_content_t .. ----rwxr-x+
>>> development development root:object_r:public_content_rw_t .DS_Store
>>> d---rwsr-x+ development development
>>> root:object_r:public_content_rw_t
>>> private d---rwsr-x+ development development
>>> root:object_r:public_content_rw_t public
>>>
>>> (I am aware that my permissions seem a bit untraditional. I am
>>> running an experiment with extended ACL configuration on samba
>>> shares. However, I do not believe this to have any bearing on my
>>> present problems, as I have numerous other production servers
>>> running
>>> with these permissions under SELinux, and, again, turning SELinux
>>> off
>>> resolves my problems instantly.)
>>>
>>>
>>> The following has been executed with no apparent effect:
>>> setsebool -P allow_smbd_anon_write=1
>>>
>>>
>>> The following have been executed with no apparent effect (so these
>>> have been turned back off): setsebool -P smbd_disable_trans=1
>>> setsebool -P nmbd_disable_trans=1
>>>
>>>
>>> I've added the new contexts to file_contexts, and executed
>>> 'restorecon -R' to the two shared
>>> directories: /home/server1/PHFiles(/.*)? --
>>> system_u:object_r:samba_share_t /var/www/html(/.*)? --
>>> system_u:object_r:public_content_rw_t
>>>
>>>
>>> setroubleshoot-server is installed, but no AVC denials are reported
>>> to /var/log/messages. Instead, when SELinux is enforcing, I get the
>>> error: smbd[11852]: '/home/server1/PHFiles' does not exist or
>>> permission denied when connecting to [PHFiles] Error was Permission
>>> denied
>>>
>>>
>>> And, finally, I've rebooted. All to no avail. Any assistance would
>>> be
>>> much appreciated!
>>
>> If the audit daemon is running, the AVC denials will be
>> in /var/log/audit/audit.log rather than /var/log/messages.
>>
>> fedora-selinux-list would probably be more appropriate for this by
>> the
>> way.
>>
>> Paul.
>>
>>
>> --
>> This message was distributed to subscribers of the selinux mailing
>> list.
>> If you no longer wish to subscribe, send mail to majordomo at tycho.nsa.gov
>> with
>> the words "unsubscribe selinux" without quotes as the message.
>
> setsebool -P use_samba_home_dirs 1
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.9 (GNU/Linux)
> Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org
>
> iEYEARECAAYFAkmUl/YACgkQrlYvE4MpobMOOgCeMPI1VZu86N93qfBY5bxfhk71
> o/4AnjypHIr5wCY3L6S6INi/w8LHSXuK
> =PIJ/
> -----END PGP SIGNATURE-----
>
Daniel, thanks for the reply. No success. I omitted mentioning that I
had tried this, as well. However, I just confirmed again that this is
not the fix. I'm not even sure why home directories would need to be
permitted, as I am not using them. I even have [homes] commented out
in smb.conf, which I'll include for reference:
# Samba config file
[global]
# WINS
wins support = yes
local master = yes
os level = 99
domain master = yes
preferred master = yes
workgroup = 478FIRST
# NETBIOS/DNS
netbios name = server1
name resolve order = wins lmhosts hosts bcast
dns proxy = yes
# SMB/CIFS
smb ports = 139
server string = server1
# AUTHENTICATION
interfaces = eth0
security = user
passdb backend = tdbsam
encrypt passwords = yes
# LOGGING
log file = /var/log/samba/%m.log
max log size = 50
# CUPS
load printers = yes
cups options = raw
#[homes]
# comment = Home Directories
# read only = No
# browseable = No
# [printers]
# comment = All Printers
# path = /usr/spool/samba
# printable = Yes
# browseable = No
[PHFiles]
path = /home/server1/PHFiles
writable = yes
browseable = yes
available = yes
create mask = 0660
force create mode = 0660
directory mask = 0770
force directory mode = 0770
inherit acls = yes
inherit owner = yes
hosts allow = 127. 192.168.5.
map archive = no
map readonly = no
map acl inherit = yes
[html]
path = /var/www/html
writable = yes
browseable = yes
available = yes
create mask = 0660
force create mode = 0660
directory mask = 0770
force directory mode = 0770
inherit acls = yes
inherit owner = yes
hosts allow = 127. 192.168.5.
map archive = no
map readonly = no
map acl inherit = yes
More information about the fedora-selinux-list
mailing list