* FUSE and SELinux labeling
@ 2011-05-15 14:40 Sam Gandhi
2011-05-15 15:36 ` Dominick Grift
2011-05-16 1:03 ` Dave Quigley
0 siblings, 2 replies; 7+ messages in thread
From: Sam Gandhi @ 2011-05-15 14:40 UTC (permalink / raw)
To: selinux
Hi
Is there a FAQ or some description on what one needs to do to enable
labeling on files created under a fuse filesystem?
When I mount my fuse file system I see message like
SELinux: initialized (dev fuse, type fuse), not configured for labeling
Now if I use statement such as shown below in my SELinux policy before
loading it I don't see those messages
fs_use_xattr fuse system_u:object_r:fs_t;
But then when I try to mount fuse file system using simple fuse hello
program as hello /tmp/foo, I see message:
SELinux: (dev fuse, type fuse) getxattr errno 4 on console and my system hangs!
( Has anybody been successful in adding the SELinux labels to file
created by fuse? I have search both fuse and SElinux mailing list,
also done bit of google search and nothing comes up , either this is
way too simple thing to do and I am missing obvious thing)
Would appreciate any help.
( I had sent message earlier to fuse-devel, but didn't cross-post it
to SELinux )
-Sam
--
This message was distributed to subscribers of the selinux mailing list.
If you no longer wish to subscribe, send mail to majordomo@tycho.nsa.gov with
the words "unsubscribe selinux" without quotes as the message.
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: FUSE and SELinux labeling
2011-05-15 14:40 FUSE and SELinux labeling Sam Gandhi
@ 2011-05-15 15:36 ` Dominick Grift
2011-05-16 0:47 ` Sam Gandhi
2011-05-16 1:03 ` Dave Quigley
1 sibling, 1 reply; 7+ messages in thread
From: Dominick Grift @ 2011-05-15 15:36 UTC (permalink / raw)
To: Sam Gandhi; +Cc: selinux
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On 05/15/2011 04:40 PM, Sam Gandhi wrote:
> Hi
>
>
> Is there a FAQ or some description on what one needs to do to enable
> labeling on files created under a fuse filesystem?
fusefs does not support extended attributes, and so you cannot label
files on it.
You can however, probably, mount fusefs filesystems with a security context.
See man mount for information as to how to mount partitions with a
security context (context="security context here")
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.16 (GNU/Linux)
Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org/
iEYEARECAAYFAk3P8v0ACgkQMlxVo39jgT9zKwCfRnRgYRbrzZI4q7oNArJ+r4or
PGcAnAp6dioOPfETqpKIEN25i9I/o/nP
=7LRv
-----END PGP SIGNATURE-----
--
This message was distributed to subscribers of the selinux mailing list.
If you no longer wish to subscribe, send mail to majordomo@tycho.nsa.gov with
the words "unsubscribe selinux" without quotes as the message.
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: FUSE and SELinux labeling
2011-05-15 15:36 ` Dominick Grift
@ 2011-05-16 0:47 ` Sam Gandhi
2011-05-16 5:55 ` Dominick Grift
` (2 more replies)
0 siblings, 3 replies; 7+ messages in thread
From: Sam Gandhi @ 2011-05-16 0:47 UTC (permalink / raw)
To: Dominick Grift; +Cc: selinux
Hello Dominick,
On Sun, May 15, 2011 at 8:36 AM, Dominick Grift <domg472@gmail.com> wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> On 05/15/2011 04:40 PM, Sam Gandhi wrote:
>> Hi
>>
>>
>> Is there a FAQ or some description on what one needs to do to enable
>> labeling on files created under a fuse filesystem?
>
> fusefs does not support extended attributes, and so you cannot label
> files on it.
>
> You can however, probably, mount fusefs filesystems with a security context.
>
> See man mount for information as to how to mount partitions with a
> security context (context="security context here")
I am running latest fuse 2.8.5 and I have tried several options of
using context=..
I haven't been successful in mounting file system with label that I
know exists. Have been successful in doing so?
I have tried using hello program from fuse example to mount directory
as shown below:
hello -o context=user_u:object_r:tmpfs_t /mn/tmp/
and that doesn't work.
Only option fuse mount seems to support are:
-d -o debug enable debug output (implies -f)
-f foreground operation
-s disable multi-threaded operation
-o allow_other allow access to other users
-o allow_root allow access to root
-o nonempty allow mounts over non-empty file/dir
-o default_permissions enable permission checking by kernel
-o fsname=NAME set filesystem name
-o subtype=NAME set filesystem type
-o large_read issue large read requests (2.4 only)
-o max_read=N set maximum size of read requests
-o hard_remove immediate removal (don't hide files)
-o use_ino let filesystem set inode numbers
-o readdir_ino try to fill in d_ino in readdir
-o direct_io use direct I/O
-o kernel_cache cache files in kernel
-o [no]auto_cache enable caching based on modification times (off)
-o umask=M set file permissions (octal)
-o uid=N set file owner
-o gid=N set file group
-o entry_timeout=T cache timeout for names (1.0s)
-o negative_timeout=T cache timeout for deleted names (0.0s)
-o attr_timeout=T cache timeout for attributes (1.0s)
-o ac_attr_timeout=T auto cache timeout for attributes (attr_timeout)
-o intr allow requests to be interrupted
-o intr_signal=NUM signal to send on interrupt (10)
-o modules=M1[:M2...] names of modules to push onto filesystem stack
-o max_write=N set maximum size of write requests
-o max_readahead=N set maximum readahead
-o async_read perform reads asynchronously (default)
-o sync_read perform reads synchronously
-o atomic_o_trunc enable atomic open+truncate support
-o big_writes enable larger than 4kB writes
-o no_remote_lock disable remote file locking
-Sam
--
This message was distributed to subscribers of the selinux mailing list.
If you no longer wish to subscribe, send mail to majordomo@tycho.nsa.gov with
the words "unsubscribe selinux" without quotes as the message.
^ permalink raw reply [flat|nested] 7+ messages in thread* Re: FUSE and SELinux labeling
2011-05-16 0:47 ` Sam Gandhi
@ 2011-05-16 5:55 ` Dominick Grift
2011-05-17 7:02 ` Daniel J Walsh
2011-05-17 13:12 ` Stephen Smalley
2 siblings, 0 replies; 7+ messages in thread
From: Dominick Grift @ 2011-05-16 5:55 UTC (permalink / raw)
To: Sam Gandhi; +Cc: selinux
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On 05/16/2011 02:47 AM, Sam Gandhi wrote:
> hello -o context=user_u:object_r:tmpfs_t /mn/tmp/
Try this:
http://docs.fedoraproject.org/en-US/Fedora/13/html/Security-Enhanced_Linux/sect-Security-Enhanced_Linux-Working_with_SELinux-Mounting_File_Systems.html
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.16 (GNU/Linux)
Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org/
iEYEARECAAYFAk3QvE8ACgkQMlxVo39jgT/+JwCfW1VkmtkhrFcQ+Eg4gj5OCZBZ
t/AAoLMc6fH5MNhW+IvpOzPjXrCKKygo
=h+Bm
-----END PGP SIGNATURE-----
--
This message was distributed to subscribers of the selinux mailing list.
If you no longer wish to subscribe, send mail to majordomo@tycho.nsa.gov with
the words "unsubscribe selinux" without quotes as the message.
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: FUSE and SELinux labeling
2011-05-16 0:47 ` Sam Gandhi
2011-05-16 5:55 ` Dominick Grift
@ 2011-05-17 7:02 ` Daniel J Walsh
2011-05-17 13:12 ` Stephen Smalley
2 siblings, 0 replies; 7+ messages in thread
From: Daniel J Walsh @ 2011-05-17 7:02 UTC (permalink / raw)
To: Sam Gandhi; +Cc: Dominick Grift, selinux
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On 05/16/2011 02:47 AM, Sam Gandhi wrote:
> Hello Dominick,
>
>
> On Sun, May 15, 2011 at 8:36 AM, Dominick Grift <domg472@gmail.com> wrote:
>> -----BEGIN PGP SIGNED MESSAGE-----
>> Hash: SHA1
>>
>> On 05/15/2011 04:40 PM, Sam Gandhi wrote:
>>> Hi
>>>
>>>
>>> Is there a FAQ or some description on what one needs to do to enable
>>> labeling on files created under a fuse filesystem?
>>
>> fusefs does not support extended attributes, and so you cannot label
>> files on it.
>>
>> You can however, probably, mount fusefs filesystems with a security context.
>>
>> See man mount for information as to how to mount partitions with a
>> security context (context="security context here")
>
> I am running latest fuse 2.8.5 and I have tried several options of
> using context=..
> I haven't been successful in mounting file system with label that I
> know exists. Have been successful in doing so?
>
> I have tried using hello program from fuse example to mount directory
> as shown below:
>
> hello -o context=user_u:object_r:tmpfs_t /mn/tmp/
> and that doesn't work.
>
> Only option fuse mount seems to support are:
>
> -d -o debug enable debug output (implies -f)
> -f foreground operation
> -s disable multi-threaded operation
>
> -o allow_other allow access to other users
> -o allow_root allow access to root
> -o nonempty allow mounts over non-empty file/dir
> -o default_permissions enable permission checking by kernel
> -o fsname=NAME set filesystem name
> -o subtype=NAME set filesystem type
> -o large_read issue large read requests (2.4 only)
> -o max_read=N set maximum size of read requests
>
> -o hard_remove immediate removal (don't hide files)
> -o use_ino let filesystem set inode numbers
> -o readdir_ino try to fill in d_ino in readdir
> -o direct_io use direct I/O
> -o kernel_cache cache files in kernel
> -o [no]auto_cache enable caching based on modification times (off)
> -o umask=M set file permissions (octal)
> -o uid=N set file owner
> -o gid=N set file group
> -o entry_timeout=T cache timeout for names (1.0s)
> -o negative_timeout=T cache timeout for deleted names (0.0s)
> -o attr_timeout=T cache timeout for attributes (1.0s)
> -o ac_attr_timeout=T auto cache timeout for attributes (attr_timeout)
> -o intr allow requests to be interrupted
> -o intr_signal=NUM signal to send on interrupt (10)
> -o modules=M1[:M2...] names of modules to push onto filesystem stack
>
> -o max_write=N set maximum size of write requests
> -o max_readahead=N set maximum readahead
> -o async_read perform reads asynchronously (default)
> -o sync_read perform reads synchronously
> -o atomic_o_trunc enable atomic open+truncate support
> -o big_writes enable larger than 4kB writes
> -o no_remote_lock disable remote file locking
>
>
> -Sam
>
> --
> This message was distributed to subscribers of the selinux mailing list.
> If you no longer wish to subscribe, send mail to majordomo@tycho.nsa.gov with
> the words "unsubscribe selinux" without quotes as the message.
You probably just need to add the allow rules using audit2allow -M myfuse
What domain are you trying to allow access to fuse?
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org/
iEYEARECAAYFAk3SHWgACgkQrlYvE4MpobM/HwCgyWyT7ut5CLTnrzImIYfIu5vN
IhsAoOXUyEn3uC1jNKPixRqnE50goEtw
=yMrK
-----END PGP SIGNATURE-----
--
This message was distributed to subscribers of the selinux mailing list.
If you no longer wish to subscribe, send mail to majordomo@tycho.nsa.gov with
the words "unsubscribe selinux" without quotes as the message.
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: FUSE and SELinux labeling
2011-05-16 0:47 ` Sam Gandhi
2011-05-16 5:55 ` Dominick Grift
2011-05-17 7:02 ` Daniel J Walsh
@ 2011-05-17 13:12 ` Stephen Smalley
2 siblings, 0 replies; 7+ messages in thread
From: Stephen Smalley @ 2011-05-17 13:12 UTC (permalink / raw)
To: Sam Gandhi; +Cc: Dominick Grift, selinux
On Sun, 2011-05-15 at 17:47 -0700, Sam Gandhi wrote:
> I am running latest fuse 2.8.5 and I have tried several options of
> using context=..
> I haven't been successful in mounting file system with label that I
> know exists. Have been successful in doing so?
>
> I have tried using hello program from fuse example to mount directory
> as shown below:
>
> hello -o context=user_u:object_r:tmpfs_t /mn/tmp/
> and that doesn't work.
If you run it under strace -s 1024, you can look at the mount system
call and see whether it passed the context= mount option to the kernel
or not. I suspect that it didn't pass it along and that is why it
didn't work. Is there a way to directly mount your fuse fs via the
regular mount command (ala ntfs-3g) so that mount options are preserved
properly?
--
Stephen Smalley
National Security Agency
--
This message was distributed to subscribers of the selinux mailing list.
If you no longer wish to subscribe, send mail to majordomo@tycho.nsa.gov with
the words "unsubscribe selinux" without quotes as the message.
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: FUSE and SELinux labeling
2011-05-15 14:40 FUSE and SELinux labeling Sam Gandhi
2011-05-15 15:36 ` Dominick Grift
@ 2011-05-16 1:03 ` Dave Quigley
1 sibling, 0 replies; 7+ messages in thread
From: Dave Quigley @ 2011-05-16 1:03 UTC (permalink / raw)
To: Sam Gandhi; +Cc: selinux
On 5/15/2011 10:40 AM, Sam Gandhi wrote:
> Hi
>
>
> Is there a FAQ or some description on what one needs to do to enable
> labeling on files created under a fuse filesystem?
>
> When I mount my fuse file system I see message like
>
> SELinux: initialized (dev fuse, type fuse), not configured for labeling
>
> Now if I use statement such as shown below in my SELinux policy before
> loading it I don't see those messages
>
> fs_use_xattr fuse system_u:object_r:fs_t;
>
> But then when I try to mount fuse file system using simple fuse hello
> program as hello /tmp/foo, I see message:
>
> SELinux: (dev fuse, type fuse) getxattr errno 4 on console and my system hangs!
>
>
> ( Has anybody been successful in adding the SELinux labels to file
> created by fuse? I have search both fuse and SElinux mailing list,
> also done bit of google search and nothing comes up , either this is
> way too simple thing to do and I am missing obvious thing)
>
> Would appreciate any help.
>
> ( I had sent message earlier to fuse-devel, but didn't cross-post it
> to SELinux )
> -Sam
>
> --
> This message was distributed to subscribers of the selinux mailing list.
> If you no longer wish to subscribe, send mail to majordomo@tycho.nsa.gov with
> the words "unsubscribe selinux" without quotes as the message.
>
So the short answer to this is No you can't use xattr style labeling on
fuse. Eric Paris in the past tried to do this but it was unsucessful. If
I remember correctly there were some weird conditions in fuse which
would cause deadlocks. Attempts were made to fix this problem but it
seemed that it was an ideological issue just as much as a technical one.
Someone had posted a similar question back around December or September
I believe and it should have a more complete view of the problem. The
list of things that would need to be done would be allow FUSE to pass
the name of the fusefs to the security server so it can decide what to
do with the particular fusefs. The second thing would be to fix the
deadlock issue in fuse but I don't think you're going to make progress
on that. Dominick in another thread said that fuse doesn't support
xattrs. If that is the case then you would need to implement fuse xattr
handlers as well and the fuse interface for them. This list probably
isn't complete as I don't remember the full details of the conversation
from back then.
Dave
--
This message was distributed to subscribers of the selinux mailing list.
If you no longer wish to subscribe, send mail to majordomo@tycho.nsa.gov with
the words "unsubscribe selinux" without quotes as the message.
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2011-05-17 13:12 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-05-15 14:40 FUSE and SELinux labeling Sam Gandhi
2011-05-15 15:36 ` Dominick Grift
2011-05-16 0:47 ` Sam Gandhi
2011-05-16 5:55 ` Dominick Grift
2011-05-17 7:02 ` Daniel J Walsh
2011-05-17 13:12 ` Stephen Smalley
2011-05-16 1:03 ` Dave Quigley
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.