<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Valentin's Lab &#187; permission</title>
	<atom:link href="https://vaab.blog.kal.fr/tag/permission/feed/" rel="self" type="application/rss+xml" />
	<link>https://vaab.blog.kal.fr</link>
	<description>Ratiocination of an opensource techie</description>
	<lastBuildDate>Thu, 15 Nov 2018 08:04:35 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=4.1.1</generator>
	<atom:link rel="payment" title="Flattr this!" href="https://flattr.com/submit/auto?user_id=vaab&amp;popout=1&amp;url=https%3A%2F%2Fvaab.blog.kal.fr%2F&amp;language=en_US&amp;category=text&amp;title=Valentin%27s+Lab&amp;description=Ratiocination+of+an+opensource+techie&amp;tags=blog" type="text/html" />
	<item>
		<title>Using ACL on linux system to mimic samba&#8217;s &#8220;force user&#8221;</title>
		<link>https://vaab.blog.kal.fr/2011/05/21/using-acl-on-linux-system-to-mimic-sambas-force-user/</link>
		<comments>https://vaab.blog.kal.fr/2011/05/21/using-acl-on-linux-system-to-mimic-sambas-force-user/#comments</comments>
		<pubDate>Sat, 21 May 2011 18:05:49 +0000</pubDate>
		<dc:creator><![CDATA[vaab]]></dc:creator>
				<category><![CDATA[tip]]></category>
		<category><![CDATA[acl]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[permission]]></category>
		<category><![CDATA[samba]]></category>

		<guid isPermaLink="false">http://vaab.blog.kal.fr/?p=115</guid>
		<description><![CDATA[How to enforce samba-like policy upon file or directory creation at the filesystem level thanks to linux ACL.<p class="read-more"><a href="https://vaab.blog.kal.fr/2011/05/21/using-acl-on-linux-system-to-mimic-sambas-force-user/">Read more &#187;</a></p>]]></description>
				<content:encoded><![CDATA[
<div class="document">


<!-- -*- mode: rst -*- -->
<p>I'm using samba to share files across a network. I found <tt class="docutils literal">force user</tt> and <tt class="docutils literal">force group</tt> very usefull in a classical team working together on project.</p>
<p>This is the sample /etc/samba/smb.conf:</p>
<pre class="literal-block">
...
force user = %U
force group = dev-team
create mask = 0775
directory mask = 0775
force create mode = 0660
force directory mode = 0660
...
</pre>
<p>It ensures that any file created will receive full read, write permission for member of &quot;dev-team&quot; group.</p>
<p>But I have bunch of the user that have a direct access to these directory. And without going through samba, the policy is not enforced.</p>
<p>The solution is quite simple and involves linux <a class="reference external" href="http://en.wikipedia.org/wiki/Access_control_list">ACL</a>.</p>
<div class="section" id="install-acl">
<h3>Install ACL</h3>
<p>Your system should already have package <tt class="docutils literal">acl</tt> installed. You can install it (or make sure you already have it) by typing:</p>
<pre class="literal-block">
apt-get install acl
</pre>
<p>Then you should edit your <tt class="docutils literal">/etc/fstab</tt> to contain the option <tt class="docutils literal">acl</tt> on the mounted partition you need to get. My fstab looks like:</p>
<pre class="literal-block">
...
UUID=9cd6deba-e3a6-427c-82e1-48cfaf0793b1 /shares ext4 defaults,acl 0 2
...
</pre>
<p>Once the <tt class="docutils literal">/etc/fstab</tt> edited, you can remount your partition on the fly with:</p>
<pre class="literal-block">
mount -o remount /shares
</pre>
</div>
<div class="section" id="using-acl">
<h3>Using ACL</h3>
<p>I can mimick the behavior of samba's policy by simply typing:</p>
<pre class="literal-block">
setfacl -R -d -m u::rwx,g:dev-team:rwx,o::r-x /shares
</pre>
<p>Options are:</p>
<table class="docutils option-list" frame="void" rules="none">
<col class="option" />
<col class="description" />
<tbody valign="top">
<tr><td class="option-group">
<kbd><span class="option">-R</span></kbd></td>
<td>is the same than -R for chown or chmod ... it will apply to subdirectory also.</td></tr>
<tr><td class="option-group">
<kbd><span class="option">-d</span></kbd></td>
<td>is switching to default permissions for newly created files.</td></tr>
<tr><td class="option-group">
<kbd><span class="option">-m</span></kbd></td>
<td><p class="first">is adding the following permission rules that are expressed as:</p>
<div class="last line-block">
<div class="line">u::rwx               same as chmod u+rwx</div>
<div class="line">g:dev-team:rwx       same as chgrp dev-team AND chmod g+rwx</div>
<div class="line">o::r-x               same as chmod o+rx</div>
</div>
</td></tr>
</tbody>
</table>
<p>You can check ACLs of a given directory with <tt class="docutils literal">getfacl</tt>:</p>
<pre class="literal-block">
$ getfacl /shares
# file: shares/assistance/
# owner: musicalta
# group: assistance
# flags: -s-
user::rwx
group::rwx
other::r-x
default:user::rwx
default:group::rwx
default:group:dev-team:rwx
default:mask::rwx
default:other::r-x
</pre>
<p>If you need more info on the topic, this blog post was of some help.</p>
<p><a class="reference external" href="http://brunogirin.blogspot.com/2010/03/shared-folders-in-ubuntu-with-setgid.html">http://brunogirin.blogspot.com/2010/03/shared-folders-in-ubuntu-with-setgid.html</a></p>
</div>
</div>
 <p><a href="https://vaab.blog.kal.fr/?flattrss_redirect&amp;id=115&amp;md5=bb16398d9f4cb78f14b7d69cfe0feaae" title="Flattr" target="_blank"><img src="https://vaab.blog.kal.fr/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>https://vaab.blog.kal.fr/2011/05/21/using-acl-on-linux-system-to-mimic-sambas-force-user/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<atom:link rel="payment" title="Flattr this!" href="https://flattr.com/submit/auto?user_id=vaab&amp;popout=1&amp;url=https%3A%2F%2Fvaab.blog.kal.fr%2F2011%2F05%2F21%2Fusing-acl-on-linux-system-to-mimic-sambas-force-user%2F&amp;language=en_GB&amp;category=text&amp;title=Using+ACL+on+linux+system+to+mimic+samba%26%238217%3Bs+%26%238220%3Bforce+user%26%238221%3B&amp;description=I%27m+using+samba+to+share+files+across+a+network.+I+found+force+user+and+force+group+very+usefull+in+a+classical+team+working+together+on+project.+This+is+the+sample...&amp;tags=acl%2Clinux%2Cpermission%2Csamba%2Cblog" type="text/html" />
	</item>
	</channel>
</rss>
