<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="es">
	<id>https://manuais.iessanclemente.net/index.php?action=history&amp;feed=atom&amp;title=Configuraci%C3%B3n_dos_permisos_con_ACLs</id>
	<title>Configuración dos permisos con ACLs - Historial de revisiones</title>
	<link rel="self" type="application/atom+xml" href="https://manuais.iessanclemente.net/index.php?action=history&amp;feed=atom&amp;title=Configuraci%C3%B3n_dos_permisos_con_ACLs"/>
	<link rel="alternate" type="text/html" href="https://manuais.iessanclemente.net/index.php?title=Configuraci%C3%B3n_dos_permisos_con_ACLs&amp;action=history"/>
	<updated>2026-10-21T09:31:03Z</updated>
	<subtitle>Historial de revisiones de esta página en la wiki</subtitle>
	<generator>MediaWiki 1.46.2</generator>
	<entry>
		<id>https://manuais.iessanclemente.net/index.php?title=Configuraci%C3%B3n_dos_permisos_con_ACLs&amp;diff=63219&amp;oldid=prev</id>
		<title>Antonio: /* Axustar permisos do noso esqueleto */</title>
		<link rel="alternate" type="text/html" href="https://manuais.iessanclemente.net/index.php?title=Configuraci%C3%B3n_dos_permisos_con_ACLs&amp;diff=63219&amp;oldid=prev"/>
		<updated>2017-11-18T14:57:27Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Axustar permisos do noso esqueleto&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Página nueva&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Nesta sección veremos como superar as limitacións do tradicional sistema de permisos de UNIX. Veranse as Listas de Control de Acceso (ACLs), que permiten indicar que conxunto de grupos e/ou usuarios poden acceder a un arquivo e/ou carpeta, sen estar limitados a Usuario Propietario, Grupo Propietario e Outros.&lt;br /&gt;
&lt;br /&gt;
As ACLs aplicadas sobre un sistema arquivos exportado por NFS ou CIFS tamén son efectivas nos clientes.&lt;br /&gt;
&lt;br /&gt;
== Introdución ás ACLs ==&lt;br /&gt;
&lt;br /&gt;
Como xa vimos, o [http://es.wikipedia.org/wiki/Permisos_de_acceso_a_archivos sistema tradicional de permisos de GNU/Linux] só permite afinar os permisos dunha carpeta ou arquivo para o usuario e o grupo propietario dos mesmos. Para os demais queda un grupo chamado &amp;#039;&amp;#039;outros&amp;#039;&amp;#039; que non permite facer ningún axuste fino.&lt;br /&gt;
&lt;br /&gt;
=== ACLs ===&lt;br /&gt;
&lt;br /&gt;
As [http://es.wikipedia.org/wiki/ACL Listas de Control de Acceso (ACLs)] permiten un acceso máis granular ao sistema de arquivos de GNU/Linux, permitindo indicar que varios usuarios e varios grupos teñan acceso en modo lectura a unha carpeta, por exemplo. Tamén se pode indicar cales deses usuarios ou grupos se deben herdar para os obxectos secundarios (ficheiros e subcarpetas) que se creen dentro desa carpeta.&lt;br /&gt;
&lt;br /&gt;
As acls por agora non veñen de &amp;#039;&amp;#039;serie&amp;#039;&amp;#039; coa instalación de GNU/Linux. Hai que instalar o paquete (como fixemos no apartado anterior) e configurar o sistema de arquivos sobre o que se desexan aplicar no momento de montalo (co parámetro &amp;#039;&amp;#039;acl&amp;#039;&amp;#039;, como tamén fixemos no apartado anterior).&lt;br /&gt;
&lt;br /&gt;
Tomemos por exemplo unha carpeta chamada &amp;#039;&amp;#039;&amp;#039;dam1&amp;#039;&amp;#039;&amp;#039; que alberga as carpetas persoais de todo o alumnado dese grupo. Interesa que a esa carpeta só entre o root (control total) e os alumnos de &amp;#039;&amp;#039;dam1&amp;#039;&amp;#039;, para logo que cada quen acceda á súa carpeta particular. Finalmente os profesores dese curso poden entrar na carpeta &amp;#039;&amp;#039;dam1&amp;#039;&amp;#039;, e en todas as subcarpetas e ficheiros (actuais e futuros) en modo lectura. &lt;br /&gt;
&lt;br /&gt;
Para iso esa carpeta &amp;#039;&amp;#039;dam1&amp;#039;&amp;#039;, terá a seguinte acl:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# file: dam1 			-- carpeta/ficheiro sobre o que hai unha acl.&lt;br /&gt;
# owner: root 			-- usuario propietario: root&lt;br /&gt;
# group: root 			-- grupo propietario: root&lt;br /&gt;
user::rwx 			-- Permisos do usuario propietario: rwx&lt;br /&gt;
group::--- 			-- Permisos do grupo propietario: ningún&lt;br /&gt;
group:g-dam1-alum:r-x		-- Grupos que hai na acl: g-dam1-alum:rx . Este grupo non se herdará a &lt;br /&gt;
				-- obxectos secundarios, porque non aparece en default.&lt;br /&gt;
group:g-dam1-profes:r-x		-- Grupos que hai na acl: g-dam1-profes:r . Este grupo herdarase a obxectos&lt;br /&gt;
				-- secundarios, porque SI aparece en default.&lt;br /&gt;
&lt;br /&gt;
mask::rwx 			-- limita os permisos efectivos que se conceden aos usuarios e grupos enumerados.&lt;br /&gt;
				-- Os permisos do dono e de &amp;quot;others&amp;quot; non se ven afectados por mask&lt;br /&gt;
other::--- 			-- Permisos da clase outros: ningún&lt;br /&gt;
				-- Nas seguintes substitúase default por herdar e entenderase mellor.&lt;br /&gt;
				   E pénsese nun obxecto secundario (subcarpeta ou ficheiro)&lt;br /&gt;
				   que se cre dentro da da carpeta dam1.&lt;br /&gt;
&lt;br /&gt;
default:user::rwx 		-- Permisos que herdará o usuario propietario: rwx&lt;br /&gt;
default:group::--- 		-- Permisos que herdará o grupo propietario: ningún&lt;br /&gt;
default:group:g-dam1-profes:r-x -- Entrada que herdarán obxectos secundarios futuros: g-dam1-profes: rx. &lt;br /&gt;
				-- PERO OLLO: aquí só aparecen as entradas herdables, pero polo feito de estar&lt;br /&gt;
 				   como herdable só afecta ós obxectos secundarios que se creen nun futuro, non &lt;br /&gt;
				   son permisos que ten a carpeta principal. Para asignar os mesmos permisos á&lt;br /&gt;
 				   carpeta principal débese indicar explicitamente como na entrada superior:&lt;br /&gt;
				   group:g-dam1-profes:r--&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
default:mask::r-- 			&lt;br /&gt;
default:other::--- 		-- Permisos que herdará a clase outros: ningún&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observar:&lt;br /&gt;
* Que o grupo &amp;#039;&amp;#039;g-dam1-profes&amp;#039;&amp;#039; aparece dúas veces, unha para os permisos da propia carpeta &amp;#039;&amp;#039;&amp;#039;dam1&amp;#039;&amp;#039;&amp;#039; e outra para que os permisos sexan propagados ás subcarpetas e arquivos futuros que se creen dentro de &amp;#039;&amp;#039;&amp;#039;dam1&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
* Pola contra, o grupo &amp;#039;&amp;#039;g-dam1-alum&amp;#039;&amp;#039; só ten permisos de lectura en &amp;#039;&amp;#039;dam1&amp;#039;&amp;#039; e non aparece a maiores nas entradas &amp;#039;&amp;#039;&amp;#039;default&amp;#039;&amp;#039;&amp;#039;, por tanto, esa entrada non será propagada aos obxectos secundarios que se creen dentro de &amp;#039;&amp;#039;&amp;#039;dam1&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
== Comandos para a xestión das ACLs ==&lt;br /&gt;
&lt;br /&gt;
Imos ver os dous comandos fundamentais para manipular as ACLs.&lt;br /&gt;
&lt;br /&gt;
=== getfacl ===&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Descrición&amp;#039;&amp;#039;&amp;#039;: amosa a lista de control de acceso dunha carpeta ou ficheiro. Este comando  ven co paquete acl. &lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Sintaxe&amp;#039;&amp;#039;&amp;#039;:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Emprego: getfacl [OPCIÓNS]... FICHEIRO/CARPETA&lt;br /&gt;
      &lt;br /&gt;
 Opcións máis comúns&lt;br /&gt;
  -R, --recursive: opera sobre ficheiros e directorios recursivamente.&lt;br /&gt;
  -d,  amosa só as entradas herdables da lista de control de acceso.&lt;br /&gt;
&lt;br /&gt;
Exemplos: &lt;br /&gt;
  getfacl -R /u 	Amosa os permisos básicos e estendidos do directorio /u e do seu contido recursivamente.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== setfacl ===&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Descrición&amp;#039;&amp;#039;&amp;#039;: introduce, elimina ou modifica entradas da lista de control de acceso. &lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Sintaxe&amp;#039;&amp;#039;&amp;#039;:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Emprego: setfacl [OPCIÓNS] usuario/grupo:permisos FICHEIRO/CARPETA&lt;br /&gt;
      &lt;br /&gt;
 Opcións máis comúns&lt;br /&gt;
  -b –- borra tódalas entradas das acl.&lt;br /&gt;
  -k –- borra tódalas entradas herdables da acl.&lt;br /&gt;
  -d  -- modificador que afecta ás entradas herdables.&lt;br /&gt;
  -R, --recursive: opera sobre ficheiros e directorios recursivamente.&lt;br /&gt;
&lt;br /&gt;
  -m, --modifica a acl.&lt;br /&gt;
  -x,  -- elimina unha entrada da acl.&lt;br /&gt;
&lt;br /&gt;
  Usuario: u:usuario&lt;br /&gt;
  grupo: g:grupo&lt;br /&gt;
  outros: o:&lt;br /&gt;
&lt;br /&gt;
  permisos: r | w | x&lt;br /&gt;
&lt;br /&gt;
Exemplos: &lt;br /&gt;
  setfacl -Rm g:users:rx /u    Introduce na acl de /u de tódolos&lt;br /&gt;
                               seus subdirectorios e ficheiros permisos&lt;br /&gt;
                               de lectura e escritura para o grupo users. &lt;br /&gt;
                               Que o faga recursivo só afecta ás carpetas/ficheiros actuais e non ás futuras.&lt;br /&gt;
&lt;br /&gt;
  setfacl -Rdm g:users:rx /u   Igual que caso anterior, pero agora cando&lt;br /&gt;
                               se cree unha carpeta/ficheiro dentro de /u&lt;br /&gt;
                               tamén vai herdar a entrada da acl onde se&lt;br /&gt;
                               indica que os membros do grupo users podes ler e executar.&lt;br /&gt;
&lt;br /&gt;
  setfacl -dx g:users /u       Borra a entrada anterior da acl.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Facer que os usuarios de Samba4 sexan recoñecidos no servidor ==&lt;br /&gt;
&lt;br /&gt;
* Para poder establecer os permisos para os usuarios e grupos do dominio Samba4 temos que solucionar un lixeiro inconveniente: que eses usuarios e grupos existan no servidor. Se non é así, teríamos que establecer os permisos usando os ids dos usuarios e os grupos, e a xestión dos permisos sería moi incómoda e complexa.&lt;br /&gt;
&lt;br /&gt;
* Podemos comprobar no servidor executando o comando &amp;#039;&amp;#039;&amp;#039;getent passwd&amp;#039;&amp;#039;&amp;#039;, que non aparece ningún usuario do dominio (&amp;#039;&amp;#039;sol&amp;#039;&amp;#039;, &amp;#039;&amp;#039;noe&amp;#039;&amp;#039;, etc.).&lt;br /&gt;
&lt;br /&gt;
* Para conseguilo, imos utilizar o servizo [https://wiki.samba.org/index.php/Nslcd nslcd], que permite tomar os usuarios do sistema Linux dun servizo LDAP.&lt;br /&gt;
&lt;br /&gt;
* Antes de comezar coa instalación e configuración do servizo &amp;#039;&amp;#039;nslcd&amp;#039;&amp;#039;, imos facer engadir un parámetro ao final da sección &amp;#039;&amp;#039;[global]&amp;#039;&amp;#039; ficheiro de configuración de Samba (&amp;#039;&amp;#039;/etc/samba/smb.conf&amp;#039;&amp;#039;), para permitir que o servizo do LDAP de samba permita conexións de autenticación sen cifrar (téñase en conta que neste caso imos facer o autenticación dende o propio equipo, polo que a información non vai circular pola rede). Engadimos a liña que se mostra a continuación:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[global]&lt;br /&gt;
        ....&lt;br /&gt;
        ....&lt;br /&gt;
        ldap server require strong auth = no&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* E detemos e iniciamos de novo o servizo de Samba para recargar a súa configuración:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
root@dserver00:~# systemctl stop samba-ad-dc&lt;br /&gt;
root@dserver00:~# systemctl start samba-ad-dc&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Agora si, instalamos o paquete &amp;#039;&amp;#039;nslcd&amp;#039;&amp;#039;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
apt-get install nslcd&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Na instalación do paquete pedirásenos unha serie de información para obter os usuarios do LDAP de Samba4. Introduciremos os seguintes datos (moitos xa virán cos valores por defecto axeitados):&lt;br /&gt;
** Enderezo do servidor ldap: &amp;#039;&amp;#039;&amp;#039;ldap://dserver00.iescalquera.local&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
** Base de buscas LDAP: &amp;#039;&amp;#039;&amp;#039;dc=iescalquera,dc=local&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
** Servizos nos que activar o servizo LDAP no ficheiro &amp;#039;&amp;#039;&amp;#039;/etc/nsswitch.conf&amp;#039;&amp;#039;&amp;#039;: Marcar &amp;#039;&amp;#039;&amp;#039;group&amp;#039;&amp;#039;&amp;#039;, &amp;#039;&amp;#039;&amp;#039;passwd&amp;#039;&amp;#039;&amp;#039; e &amp;#039;&amp;#039;&amp;#039;shadow&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
* Pero imos facer un cambio na configuración que o paquete &amp;#039;&amp;#039;nslcd&amp;#039;&amp;#039; fai no ficheiro &amp;#039;&amp;#039;/etc/nsswitch.conf&amp;#039;&amp;#039;. Editamos este ficheiro e cambiamos para as entradas &amp;#039;&amp;#039;&amp;#039;passwd&amp;#039;&amp;#039;&amp;#039;, &amp;#039;&amp;#039;&amp;#039;group&amp;#039;&amp;#039;&amp;#039; e &amp;#039;&amp;#039;&amp;#039;shadow&amp;#039;&amp;#039;&amp;#039; a opción &amp;#039;&amp;#039;compat&amp;#039;&amp;#039; por &amp;#039;&amp;#039;files&amp;#039;&amp;#039;, para que o sistema recoñeza correctamente os usuarios e grupos do LDAP:&lt;br /&gt;
&lt;br /&gt;
[[Image:Debian9_usuariossamba4_01.png|600px|center|thumb|Modificación no ficheiro &amp;#039;&amp;#039;/etc/nsswitch.conf&amp;#039;&amp;#039;]]&lt;br /&gt;
&lt;br /&gt;
* Editamos o ficheiro de configuración do paquete nslcd, &amp;#039;&amp;#039;&amp;#039;/etc/nslcd.conf&amp;#039;&amp;#039;&amp;#039;, e engadimos ao final o seguinte contido:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# Some settings for AD&lt;br /&gt;
pagesize 1000&lt;br /&gt;
referrals off&lt;br /&gt;
&lt;br /&gt;
# Filters (only required if your accounts doesn&amp;#039;t have objectClass=posixAccount&lt;br /&gt;
# and your groups haven&amp;#039;t objectClass=posixGroup. This objectClasses won&amp;#039;t be added&lt;br /&gt;
# by ADUC. So they won&amp;#039;t be there automatically!)&lt;br /&gt;
filter  passwd  (objectClass=user)&lt;br /&gt;
filter  group   (objectClass=group)&lt;br /&gt;
&lt;br /&gt;
# Attribut mappings (depending on your nslcd version, some might not be&lt;br /&gt;
# necessary or can cause errors and can/must be removed)&lt;br /&gt;
map     passwd  uid                sAMAccountName&lt;br /&gt;
map     passwd  homeDirectory      unixHomeDirectory&lt;br /&gt;
map     passwd  gecos              displayName&lt;br /&gt;
map     passwd  gidNumber          primaryGroupID&lt;br /&gt;
&lt;br /&gt;
# LDAP bind (Account in AD that is used from nslcd to bind to the directory)&lt;br /&gt;
binddn cn=Administrator,cn=Users,dc=iescalquera,dc=local&lt;br /&gt;
bindpw abc123.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Reiniciamos o servizo &amp;#039;&amp;#039;nslcd&amp;#039;&amp;#039;:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
service nslcd restart&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* E comprobamos que xa aparecen os usuarios e grupos do dominio cos comando &amp;#039;&amp;#039;&amp;#039;getent passwd&amp;#039;&amp;#039;&amp;#039; e &amp;#039;&amp;#039;&amp;#039;getent group&amp;#039;&amp;#039;&amp;#039; respectivamente. &amp;#039;&amp;#039;&amp;#039;Fixarse en que só aparecerán aqueles usuarios e grupos que teñan asignado algún valor nos seus identificadores POSIX.&amp;#039;&amp;#039;&amp;#039; Tendo en conta que imos poñer os permisos sobre os grupos de usuarios, non pasa nada porque os usuarios non teñan establecido o &amp;#039;&amp;#039;uidNumber&amp;#039;&amp;#039;; o que si é importante é que os grupos teñan identificador asignado, polo que será necesario ter asignado un &amp;#039;&amp;#039;gidNumber&amp;#039;&amp;#039; a cada grupo sobre o que imos configurar permisos.&lt;br /&gt;
&lt;br /&gt;
* A continuación móstrase o que debería devolver o comando &amp;#039;&amp;#039;&amp;#039;getent group&amp;#039;&amp;#039;&amp;#039; nas súas últimas liñas:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; enclose=&amp;quot;div&amp;quot; highlight=&amp;quot;6&amp;quot;&amp;gt;&lt;br /&gt;
root@dserver00:~# getent group&lt;br /&gt;
...&lt;br /&gt;
...&lt;br /&gt;
g-dam1-profes:*:10002:sol&lt;br /&gt;
g-dam2-profes:*:10003:noe,sol&lt;br /&gt;
Domain Admins:*:10010:Administrator&lt;br /&gt;
g-dam1-alum:*:10005:tom,mon&lt;br /&gt;
g-dam2-alum:*:10006:paz,pia&lt;br /&gt;
g-usuarios:*:10000:&lt;br /&gt;
g-profes:*:10001:noe,sol&lt;br /&gt;
g-alum:*:10004:paz,tom,mon,pia&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Observar que tamén se lle asignou un identificador de grupo ao grupo &amp;#039;&amp;#039;&amp;#039;Domain Admins&amp;#039;&amp;#039;&amp;#039; (o 10010). Isto é necesario porque imos utilizalo para permitir que calquera usuario deste grupo poida crear as carpetas persoais dos usuarios. Se este grupo non aparece, obteremos un erro cando intentemos introducilo nos permisos dalgunha carpeta.&lt;br /&gt;
&lt;br /&gt;
== Exemplos de manexo das ACLs ==&lt;br /&gt;
&lt;br /&gt;
Para comezar a familiarizarnos coas ACLs, imos estudar con distintos exemplos a inserción, modificación e borrado de acls así como a propagación de permisos.&lt;br /&gt;
&lt;br /&gt;
* No servidor, movémonos á carpeta &amp;#039;&amp;#039;&amp;#039;/srv/samba&amp;#039;&amp;#039;&amp;#039; e comprobamos os permisos do seu contido (isto que estamos facendo agora simplemente é unha proba, así que non pasa nada porque os permisos por defecto que haxa nas carpetas non coincidan cos que aquí aparecen):&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
root@dserver00:~# cd /srv/samba/&lt;br /&gt;
root@dserver00:/srv/samba# ls -l&lt;br /&gt;
total 8&lt;br /&gt;
drwxrwx--- 6 root root 4096 Mai 17 18:20 comun&lt;br /&gt;
drwxrwx--- 5 root root 4096 Mai 17 16:51 usuarios&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Obtemos a acl de &amp;#039;&amp;#039;comun&amp;#039;&amp;#039;. Observar a información anterior disposta doutra forma.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
root@dserver00:/srv/samba# getfacl comun&lt;br /&gt;
# file: comun&lt;br /&gt;
# owner: root&lt;br /&gt;
# group: root&lt;br /&gt;
user::rwx&lt;br /&gt;
group::rwx&lt;br /&gt;
other::---&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Permitir ao grupo &amp;#039;&amp;#039;&amp;#039;g-profes&amp;#039;&amp;#039;&amp;#039; que poida ler e acceder (r-x) á carpeta &amp;#039;&amp;#039;comun&amp;#039;&amp;#039;, só a esa carpeta. (-m)&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; enclose=&amp;quot;div&amp;quot; highlight=&amp;quot;9&amp;quot;&amp;gt;&lt;br /&gt;
root@dserver00:/srv/samba# setfacl -m g:g-profes:rx comun&lt;br /&gt;
root@dserver00:/srv/samba# &lt;br /&gt;
root@dserver00:/srv/samba# getfacl comun&lt;br /&gt;
# file: comun&lt;br /&gt;
# owner: root&lt;br /&gt;
# group: root&lt;br /&gt;
user::rwx&lt;br /&gt;
group::rwx&lt;br /&gt;
group:g-profes:r-x&lt;br /&gt;
mask::rwx&lt;br /&gt;
other::---&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observar como aparece o grupo &amp;#039;&amp;#039;&amp;#039;g-profes&amp;#039;&amp;#039;&amp;#039; con permisos r-x.&lt;br /&gt;
&lt;br /&gt;
* Listamos carpetas con acls: Observar o carácter &amp;#039;&amp;#039;&amp;#039;+&amp;#039;&amp;#039;&amp;#039;, que indica que esa carpeta ten unha acl.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; enclose=&amp;quot;div&amp;quot; highlight=&amp;quot;3&amp;quot;&amp;gt;&lt;br /&gt;
root@dserver00:/srv/samba# ls -lh&lt;br /&gt;
total 8,0K&lt;br /&gt;
drwxrwx---+ 6 root root 4,0K Mai 17 18:20 comun&lt;br /&gt;
drwxrwx---  5 root root 4,0K Mai 17 16:51 usuarios&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Creamos unha subcarpeta en &amp;#039;&amp;#039;comun&amp;#039;&amp;#039;: &amp;#039;&amp;#039;&amp;#039;comun/exames&amp;#039;&amp;#039;&amp;#039;, e obtemos as acls de esa carpeta.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
root@dserver00:/srv/samba# mkdir comun/exames&lt;br /&gt;
root@dserver00:/srv/samba# &lt;br /&gt;
root@dserver00:/srv/samba# getfacl comun/exames/&lt;br /&gt;
# file: comun/exames/&lt;br /&gt;
# owner: root&lt;br /&gt;
# group: root&lt;br /&gt;
user::rwx&lt;br /&gt;
group::r-x&lt;br /&gt;
other::r-x&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Observar como ao crear a carpeta &amp;#039;&amp;#039;&amp;#039;exames&amp;#039;&amp;#039;&amp;#039; non se herdou &amp;#039;&amp;#039;&amp;#039;g-profes&amp;#039;&amp;#039;&amp;#039; de &amp;#039;&amp;#039;&amp;#039;comun&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
* Engadimos unha acl para &amp;#039;&amp;#039;&amp;#039;g-alum&amp;#039;&amp;#039;&amp;#039; con permisos (r-x), que se propaguen polas subcarpetas e arquivos existentes en &amp;#039;&amp;#039;comun&amp;#039;&amp;#039;. (-R)&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; enclose=&amp;quot;div&amp;quot; highlight=&amp;quot;10,20&amp;quot;&amp;gt;&lt;br /&gt;
root@dserver00:/srv/samba# setfacl -Rm g:g-alum:rx comun&lt;br /&gt;
root@dserver00:/srv/samba# &lt;br /&gt;
root@dserver00:/srv/samba# getfacl comun&lt;br /&gt;
# file: comun&lt;br /&gt;
# owner: root&lt;br /&gt;
# group: root&lt;br /&gt;
user::rwx&lt;br /&gt;
group::rwx&lt;br /&gt;
group:g-profes:r-x&lt;br /&gt;
group:g-alum:r-x&lt;br /&gt;
mask::rwx&lt;br /&gt;
other::---&lt;br /&gt;
&lt;br /&gt;
root@dserver00:/srv/samba# getfacl comun/exames/&lt;br /&gt;
# file: comun/exames/&lt;br /&gt;
# owner: root&lt;br /&gt;
# group: root&lt;br /&gt;
user::rwx&lt;br /&gt;
group::r-x&lt;br /&gt;
group:g-alum:r-x&lt;br /&gt;
mask::r-x&lt;br /&gt;
other::r-x&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
O grupo &amp;#039;&amp;#039;&amp;#039;g-alum:r-x&amp;#039;&amp;#039;&amp;#039; está na acl de comun e na da subcarpeta &amp;#039;&amp;#039;&amp;#039;exames&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
* Imos agora a engadir unha entrada á acl, grupo &amp;#039;&amp;#039;&amp;#039;g-profes:rwx&amp;#039;&amp;#039;&amp;#039;, que sexa herdable, de xeito que cando no futuro se cre un ficheiro ou subcarpeta-ficheiro en &amp;#039;&amp;#039;comun&amp;#039;&amp;#039; herde esa entrada automaticamente (-d).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; enclose=&amp;quot;div&amp;quot; highlight=&amp;quot;9,15,35,40&amp;quot;&amp;gt;&lt;br /&gt;
root@dserver00:/srv/samba# setfacl -dm g:g-profes:rwx comun&lt;br /&gt;
root@dserver00:/srv/samba# mkdir comun/practicas&lt;br /&gt;
root@dserver00:/srv/samba# getfacl comun/&lt;br /&gt;
# file: comun/&lt;br /&gt;
# owner: root&lt;br /&gt;
# group: root&lt;br /&gt;
user::rwx&lt;br /&gt;
group::rwx&lt;br /&gt;
group:g-profes:r-x&lt;br /&gt;
group:g-alum:r-x&lt;br /&gt;
mask::rwx&lt;br /&gt;
other::---&lt;br /&gt;
default:user::rwx&lt;br /&gt;
default:group::rwx&lt;br /&gt;
default:group:g-profes:rwx&lt;br /&gt;
default:mask::rwx&lt;br /&gt;
default:other::---&lt;br /&gt;
&lt;br /&gt;
root@dserver00:/srv/samba# getfacl comun/exames/&lt;br /&gt;
# file: comun/exames/&lt;br /&gt;
# owner: root&lt;br /&gt;
# group: root&lt;br /&gt;
user::rwx&lt;br /&gt;
group::r-x&lt;br /&gt;
group:g-alum:r-x&lt;br /&gt;
mask::r-x&lt;br /&gt;
other::r-x&lt;br /&gt;
&lt;br /&gt;
root@dserver00:/srv/samba# getfacl comun/practicas/&lt;br /&gt;
# file: comun/practicas/&lt;br /&gt;
# owner: root&lt;br /&gt;
# group: root&lt;br /&gt;
user::rwx&lt;br /&gt;
group::rwx&lt;br /&gt;
group:g-profes:rwx&lt;br /&gt;
mask::rwx&lt;br /&gt;
other::---&lt;br /&gt;
default:user::rwx&lt;br /&gt;
default:group::rwx&lt;br /&gt;
default:group:g-profes:rwx&lt;br /&gt;
default:mask::rwx&lt;br /&gt;
default:other::---&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Observar:&lt;br /&gt;
**&amp;#039;&amp;#039;&amp;#039;o grupo g-profes&amp;#039;&amp;#039;&amp;#039;: non ten permisos de escritura sobre &amp;#039;&amp;#039;&amp;#039;comun&amp;#039;&amp;#039;&amp;#039; pois só está como herdable para futuros obxectos secundarios (neste caso &amp;#039;&amp;#039;practicas&amp;#039;&amp;#039;). Co cal un usuario do grupo &amp;#039;&amp;#039;&amp;#039;g-profes&amp;#039;&amp;#039;&amp;#039; pode escribir en &amp;#039;&amp;#039;comun/practicas&amp;#039;&amp;#039;, pero non en &amp;#039;&amp;#039;&amp;#039;comun&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
**&amp;#039;&amp;#039;&amp;#039;o grupo g-profes&amp;#039;&amp;#039;&amp;#039;: non está en &amp;#039;&amp;#039;&amp;#039;comun/exames&amp;#039;&amp;#039;&amp;#039;, pero si na carpeta &amp;#039;&amp;#039;&amp;#039;practicas&amp;#039;&amp;#039;&amp;#039; que se creou despois de introducir a acl en &amp;#039;&amp;#039;comun&amp;#039;&amp;#039;. &amp;#039;&amp;#039;&amp;#039;default&amp;#039;&amp;#039;&amp;#039; indica que esa entrada é herdable. &amp;#039;&amp;#039;&amp;#039;g-profes&amp;#039;&amp;#039;&amp;#039; non aparece en &amp;#039;&amp;#039;exames&amp;#039;&amp;#039;, porque esa subcarpeta xa estaba creada antes de meter a entrada na acl.&lt;br /&gt;
&lt;br /&gt;
* Para que un usuario de &amp;#039;&amp;#039;&amp;#039;g-profes&amp;#039;&amp;#039;&amp;#039; poida escribir na carpeta &amp;#039;&amp;#039;&amp;#039;comun&amp;#039;&amp;#039;&amp;#039; é preciso modificar a súa ACL:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; enclose=&amp;quot;div&amp;quot; highlight=&amp;quot;8&amp;quot;&amp;gt;&lt;br /&gt;
root@dserver00:/srv/samba# setfacl -m g:g-profes:rwx comun&lt;br /&gt;
root@dserver00:/srv/samba# getfacl comun/&lt;br /&gt;
# file: comun/&lt;br /&gt;
# owner: root&lt;br /&gt;
# group: root&lt;br /&gt;
user::rwx&lt;br /&gt;
group::rwx&lt;br /&gt;
group:g-profes:rwx&lt;br /&gt;
group:g-alum:r-x&lt;br /&gt;
mask::rwx&lt;br /&gt;
other::---&lt;br /&gt;
default:user::rwx&lt;br /&gt;
default:group::rwx&lt;br /&gt;
default:group:g-profes:rwx&lt;br /&gt;
default:mask::rwx&lt;br /&gt;
default:other::---&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Agora si, un usuario de &amp;#039;&amp;#039;&amp;#039;g-profes&amp;#039;&amp;#039;&amp;#039; pode escribir en &amp;#039;&amp;#039;comun&amp;#039;&amp;#039; e nas subcarpetas nas que teña permisos.&lt;br /&gt;
&lt;br /&gt;
* Como borrar unha acl?: eliminarase o grupo &amp;#039;&amp;#039;&amp;#039;g-alum&amp;#039;&amp;#039;&amp;#039; da acl. Primeiro de &amp;#039;&amp;#039;comun&amp;#039;&amp;#039; e logo recursivamente de todas as subcarpetas. (-x)&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; enclose=&amp;quot;div&amp;quot; highlight=&amp;quot;24&amp;quot;&amp;gt;&lt;br /&gt;
root@dserver00:/srv/samba# setfacl -x g:g-alum comun&lt;br /&gt;
root@dserver00:/srv/samba# &lt;br /&gt;
root@dserver00:/srv/samba# getfacl comun&lt;br /&gt;
# file: comun&lt;br /&gt;
# owner: root&lt;br /&gt;
# group: root&lt;br /&gt;
user::rwx&lt;br /&gt;
group::rwx&lt;br /&gt;
group:g-profes:rwx&lt;br /&gt;
mask::rwx&lt;br /&gt;
other::---&lt;br /&gt;
default:user::rwx&lt;br /&gt;
default:group::rwx&lt;br /&gt;
default:group:g-profes:rwx&lt;br /&gt;
default:mask::rwx&lt;br /&gt;
default:other::---&lt;br /&gt;
&lt;br /&gt;
root@dserver00:/srv/samba# getfacl comun/exames&lt;br /&gt;
# file: comun/exames&lt;br /&gt;
# owner: root&lt;br /&gt;
# group: root&lt;br /&gt;
user::rwx&lt;br /&gt;
group::r-x&lt;br /&gt;
group:g-alum:r-x&lt;br /&gt;
mask::r-x&lt;br /&gt;
other::r-x&lt;br /&gt;
&lt;br /&gt;
root@dserver00:/srv/samba# getfacl comun/practicas/&lt;br /&gt;
# file: comun/practicas/&lt;br /&gt;
# owner: root&lt;br /&gt;
# group: root&lt;br /&gt;
user::rwx&lt;br /&gt;
group::rwx&lt;br /&gt;
group:g-profes:rwx&lt;br /&gt;
mask::rwx&lt;br /&gt;
other::---&lt;br /&gt;
default:user::rwx&lt;br /&gt;
default:group::rwx&lt;br /&gt;
default:group:g-profes:rwx&lt;br /&gt;
default:mask::rwx&lt;br /&gt;
default:other::---&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Observar que &amp;#039;&amp;#039;&amp;#039;g-alum&amp;#039;&amp;#039;&amp;#039; está eliminado da acl de &amp;#039;&amp;#039;comun&amp;#039;&amp;#039; pero non da subcarpeta &amp;#039;&amp;#039;exames&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
* Para eliminalo de &amp;#039;&amp;#039;comun&amp;#039;&amp;#039; e de todas as súas subcarpetas e arquivos hai que facelo recursivamente: (-Rx)&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
root@dserver00:/srv/samba# setfacl -Rx g:g-alum comun&lt;br /&gt;
root@dserver00:/srv/samba# &lt;br /&gt;
root@dserver00:/srv/samba# getfacl comun&lt;br /&gt;
# file: comun&lt;br /&gt;
# owner: root&lt;br /&gt;
# group: root&lt;br /&gt;
user::rwx&lt;br /&gt;
group::rwx&lt;br /&gt;
group:g-profes:rwx&lt;br /&gt;
mask::rwx&lt;br /&gt;
other::---&lt;br /&gt;
default:user::rwx&lt;br /&gt;
default:group::rwx&lt;br /&gt;
default:group:g-profes:rwx&lt;br /&gt;
default:mask::rwx&lt;br /&gt;
default:other::---&lt;br /&gt;
&lt;br /&gt;
root@dserver00:/srv/samba# getfacl comun/exames&lt;br /&gt;
# file: comun/exames&lt;br /&gt;
# owner: root&lt;br /&gt;
# group: root&lt;br /&gt;
user::rwx&lt;br /&gt;
group::r-x&lt;br /&gt;
mask::r-x&lt;br /&gt;
other::r-x&lt;br /&gt;
&lt;br /&gt;
root@dserver00:/srv/samba# getfacl comun/practicas/&lt;br /&gt;
# file: comun/practicas/&lt;br /&gt;
# owner: root&lt;br /&gt;
# group: root&lt;br /&gt;
user::rwx&lt;br /&gt;
group::rwx&lt;br /&gt;
group:g-profes:rwx&lt;br /&gt;
mask::rwx&lt;br /&gt;
other::---&lt;br /&gt;
default:user::rwx&lt;br /&gt;
default:group::rwx&lt;br /&gt;
default:group:g-profes:rwx&lt;br /&gt;
default:mask::rwx&lt;br /&gt;
default:other::---&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Por último, e como estas ACLs que configuramos son simplemente de proba e non son as que nos interesan para o noso esqueleto de carpetas, imos borrar todas as ACLs de &amp;#039;&amp;#039;comun&amp;#039;&amp;#039; e das súas subcarpetas:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
root@dserver00:/srv/samba# setfacl -bR comun&lt;br /&gt;
root@dserver00:/srv/samba# &lt;br /&gt;
root@dserver00:/srv/samba# getfacl comun&lt;br /&gt;
# file: comun&lt;br /&gt;
# owner: root&lt;br /&gt;
# group: root&lt;br /&gt;
user::rwx&lt;br /&gt;
group::rwx&lt;br /&gt;
other::---&lt;br /&gt;
&lt;br /&gt;
root@dserver00:/srv/samba# getfacl comun/exames&lt;br /&gt;
# file: comun/exames&lt;br /&gt;
# owner: root&lt;br /&gt;
# group: root&lt;br /&gt;
user::rwx&lt;br /&gt;
group::r-x&lt;br /&gt;
other::r-x&lt;br /&gt;
&lt;br /&gt;
root@dserver00:/srv/samba# getfacl comun/practicas/&lt;br /&gt;
# file: comun/practicas/&lt;br /&gt;
# owner: root&lt;br /&gt;
# group: root&lt;br /&gt;
user::rwx&lt;br /&gt;
group::rwx&lt;br /&gt;
other::---&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Á vista dos exemplos anteriores:&lt;br /&gt;
**Para traballar con usuarios no canto de grupos, usar: &amp;#039;&amp;#039;&amp;#039;u:usuario&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
**Non confundir recursividade (-R) con herdanza (-d). O primeiro afecta a carpeta e  subcarpetas/arquivos existentes, o segundo non afecta á carpeta senón ás subcarpetas e arquivos que se creen nun futuro.&lt;br /&gt;
**Para modificar os permisos do usuario propietario, pódese usar chmod ou: &amp;#039;&amp;#039;&amp;#039;setfacl -opcións u::permisos comun&amp;#039;&amp;#039;&amp;#039;. Para o grupo propietario sería semellante pero g:: no canto de u::.&lt;br /&gt;
&lt;br /&gt;
== Axustar permisos do noso esqueleto ==&lt;br /&gt;
&lt;br /&gt;
O seguinte esquema representa a estrutura de permisos establecido no esqueleto de carpetas que deseñamos para o noso dominio na Parte III:&lt;br /&gt;
&lt;br /&gt;
[[Image:00_Dominios_Linux_Escenarios_parte_02_Permisos_Esqueleto.jpg |600px|center|thumb|Esquema de carpetas do dominio con permisos POSIX]]&lt;br /&gt;
&lt;br /&gt;
Isto podería ser suficiente en moitos casos, pero imos presentar algunhas situacións nas que o esquema de permisos de Linux non nos permite acadar unha solución e si poderíamos resolver co uso de ACLs:&lt;br /&gt;
&lt;br /&gt;
* Coa estrutura actual de permisos, calquera usuario do grupo &amp;#039;&amp;#039;g-usuarios&amp;#039;&amp;#039; podería entrar dentro da carpeta de /home/iescalquera/alumnos e ver o seu contido. Se houbese usuarios dentro deste grupo que non fosen profes nin alumnos isto non nos interesaría, e para evitalo teríamos que permitir a entrada á carpeta ao grupo &amp;#039;&amp;#039;g-profes&amp;#039;&amp;#039; e ao grupo &amp;#039;&amp;#039;g-alum&amp;#039;&amp;#039;, e denegar o acceso ao resto de usuarios.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Un alumno de &amp;#039;&amp;#039;dam1&amp;#039;&amp;#039; pode ver o contido da carpeta &amp;#039;&amp;#039;/home/iescalquera/alumnos/dam2&amp;#039;&amp;#039; (aínda que non poida ver o contido das súas subcarpetas), cousa que non nos interesaría. O ideal é que nesa carpeta só poidan acceder os usuarios dos grupos &amp;#039;&amp;#039;g-dam2-profes&amp;#039;&amp;#039; e &amp;#039;&amp;#039;g-dam2-alum&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Máis importante é o que ocorre na carpeta de &amp;#039;&amp;#039;/comun/dam2&amp;#039;&amp;#039;, xa que un alumno de &amp;#039;&amp;#039;dam1&amp;#039;&amp;#039; podería acceder ao contido desta carpeta. Sería desexable que só puidesen entrar para ler e escribir os usuarios de &amp;#039;&amp;#039;g-dam2-profes&amp;#039;&amp;#039; e os de &amp;#039;&amp;#039;g-dam2-alum&amp;#039;&amp;#039; só para ler, mentres que o resto dos usuarios non debería poder acceder a esta carpeta.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Por último, utilizando permisos herdables poderíamos configurar os permisos por defecto adecuados para as carpetas persoais dos usuarios sen necesidade dun script que os modifique expresamente.&lt;br /&gt;
&lt;br /&gt;
O seguinte esquema de ACLs solventaría estes aspectos:&lt;br /&gt;
&lt;br /&gt;
[[Image:00_Dominios_Linux_Escenarios_parte_04_Permisos_ACL.jpg|600px|center|thumb|Esquema de carpetas do dominio con ACLs]]&lt;br /&gt;
&lt;br /&gt;
Ademais das ACLs para resolver as cuestións indicadas, inclúense dúas entradas a maiores nas ACLs para axustar os permisos das carpetas persoais dos usuarios no caso de que se creen de forma automática con RSAT:&lt;br /&gt;
* Na carpeta &amp;#039;&amp;#039;&amp;#039;Persoais&amp;#039;&amp;#039;&amp;#039;, incluímos unha entrada herdable nas ACL que permite que os usuarios do grupo &amp;#039;&amp;#039;Domain Admins&amp;#039;&amp;#039; (os administradores do dominio) poidan ler e escribir nesa carpeta e en todas as súas subcarpetas.&lt;br /&gt;
* Nas carpetas onde se crearán as carpetas persoais dos usuarios (&amp;#039;&amp;#039;profes&amp;#039;&amp;#039;, &amp;#039;&amp;#039;alumnos/curso&amp;#039;&amp;#039;), engadimos dúas entradas herdables na ACL para evitar que calquera outro usuario que non sexa o propio usuario ou dun grupo de profes dese curso que debe ter permiso de lectura poida entrar na carpeta persoal dun usuario.&lt;br /&gt;
&lt;br /&gt;
Para establecer as ACLs do esquema, podemos crear un script co seguinte contido.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;SCRIPT: 02_axustar_acls_esqueleto.sh&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
#!/bin/bash&lt;br /&gt;
&lt;br /&gt;
#Chamar ao script de variables&lt;br /&gt;
. ./00_variables.sh # Tamén podería ser: source ./00_variables.sh&lt;br /&gt;
&lt;br /&gt;
#Establecemos de forma recursiva os permisos de Linux&lt;br /&gt;
chown -R root:root $DIR_USUARIOS&lt;br /&gt;
chmod -R 770 $DIR_USUARIOS&lt;br /&gt;
chown -R root:root $DIR_COMUN&lt;br /&gt;
chmod -R 770 $DIR_COMUN&lt;br /&gt;
&lt;br /&gt;
#Cartafol de usuarios e subcartafoles&lt;br /&gt;
setfacl -m g:g-usuarios:rx $DIR_USUARIOS&lt;br /&gt;
setfacl -m g:&amp;quot;Domain Admins&amp;quot;:rwx $DIR_USUARIOS&lt;br /&gt;
setfacl -m g:g-usuarios:rx $DIR_USUARIOS/persoais&lt;br /&gt;
setfacl -m g:&amp;quot;Domain Admins&amp;quot;:rwx $DIR_USUARIOS/persoais&lt;br /&gt;
setfacl -dm g:&amp;quot;Domain Admins&amp;quot;:rwx $DIR_USUARIOS/persoais&lt;br /&gt;
setfacl -m g:g-usuarios:rwx $DIR_USUARIOS/perfisWindows&lt;br /&gt;
setfacl -m g:g-usuarios:rwx $DIR_USUARIOS/perfisLinux&lt;br /&gt;
&lt;br /&gt;
#Cartafol profes&lt;br /&gt;
setfacl -m g:&amp;quot;Domain Admins&amp;quot;:rwx $DIR_USUARIOS/persoais/profes&lt;br /&gt;
setfacl -m g:g-profes:rx $DIR_USUARIOS/persoais/profes&lt;br /&gt;
setfacl -dm o:--- $DIR_USUARIOS/persoais/profes&lt;br /&gt;
setfacl -dm g::--- $DIR_USUARIOS/persoais/profes&lt;br /&gt;
&lt;br /&gt;
#Cartafol alumnos&lt;br /&gt;
setfacl -m g:&amp;quot;Domain Admins&amp;quot;:rwx $DIR_USUARIOS/persoais/alumnos&lt;br /&gt;
setfacl -m g:g-profes:rx $DIR_USUARIOS/persoais/alumnos&lt;br /&gt;
setfacl -m g:g-alum:rx $DIR_USUARIOS/persoais/alumnos&lt;br /&gt;
&lt;br /&gt;
#Cartafoles cursos&lt;br /&gt;
for CURSO in $(cat f00_cursos.txt)&lt;br /&gt;
do&lt;br /&gt;
        setfacl -m g:g-$CURSO-alum:rx $DIR_USUARIOS/persoais/alumnos/$CURSO&lt;br /&gt;
        setfacl -m g:g-$CURSO-profes:rx $DIR_USUARIOS/persoais/alumnos/$CURSO&lt;br /&gt;
        setfacl -dm g:g-$CURSO-profes:rx $DIR_USUARIOS/persoais/alumnos/$CURSO&lt;br /&gt;
        setfacl -dm o:--- $DIR_USUARIOS/persoais/alumnos/$CURSO&lt;br /&gt;
        setfacl -dm g::--- $DIR_USUARIOS/persoais/alumnos/$CURSO&lt;br /&gt;
done&lt;br /&gt;
&lt;br /&gt;
#Cartafol comun&lt;br /&gt;
setfacl -m g:g-profes:rx $DIR_COMUN&lt;br /&gt;
setfacl -m g:g-alum:rx $DIR_COMUN&lt;br /&gt;
&lt;br /&gt;
#Subcartafol departamentos&lt;br /&gt;
setfacl -m g:g-profes:rwx $DIR_COMUN/departamentos&lt;br /&gt;
setfacl -dm g:g-profes:rwx $DIR_COMUN/departamentos&lt;br /&gt;
&lt;br /&gt;
#Subcartafoles cursos&lt;br /&gt;
# O participante no curso á vista do esquema de permisos&lt;br /&gt;
# do exemplo de arriba debe ser quen de axustar&lt;br /&gt;
# os permisos de comun/cursos&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Executamos o script:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
sh 02_axustar_acls_esqueleto.sh&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Unha vez executado o script, recoméndase comprobar con &amp;#039;&amp;#039;&amp;#039;getfacl&amp;#039;&amp;#039;&amp;#039; que cada carpeta ten a ACL que lle corresponde.&lt;br /&gt;
&lt;br /&gt;
== Permisos para as carpetas persoais dos usuarios ==&lt;br /&gt;
&lt;br /&gt;
* Con respecto ás carpetas persoais dos usuarios, agora o único necesario é que cada usuario teña permisos de lectura e escritura sobre a súa carpeta (e isto pódese facer cos permisos de Linux ou con ACLs).&lt;br /&gt;
&lt;br /&gt;
* As carpetas de perfís vanse crear automaticamente cando o usuario inicie sesión, tanto nun cliente Windows como nun cliente Linux, e dado que se van a crear coas súas propias credenciais, os permisos que se establecerán xa serán os axeitados.&lt;br /&gt;
&lt;br /&gt;
* O esquema completo incluíndo as carpetas persoais e de perfís sería o seguinte:&lt;br /&gt;
&lt;br /&gt;
[[Image:00_Dominios_Linux_Escenarios_parte_04_Permisos_Usuarios_ACL.jpg|600px|center|thumb|Esquema de carpetas persoais con ACLs]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-- [[Usuario:antonio| Antonio de Andrés Lema]] e [[Usuario:Carrion| Carlos Carrión Álvarez]]&lt;/div&gt;</summary>
		<author><name>Antonio</name></author>
	</entry>
</feed>