SI06 Permisos y ACL

dam edukiak
28 Feb 202416:05

Summary

TLDREl vídeo explica cómo funcionan los permisos y listas de control de acceso (ACL) en Ubuntu para gestionar el acceso a carpetas. Crea usuarios, grupos y una estructura de carpetas, asigna permisos con 'chmod' y comprueba quién puede acceder a qué. Explica las limitaciones de los permisos del sistema e introduce las ACL para tener más control. Finalmente, muestra ejemplos de cómo configurar ACL para permitir o denegar el acceso de grupos específicos a carpetas concretas.

Takeaways

  • 😊 Vamos a ver cómo funcionan los permisos y listas de control de acceso en Ubuntu
  • 👥 Creamos grupos de usuarios (dam y da) con diferentes permisos de lectura, escritura y ejecución
  • 📁 Dam puede leer, escribir y ejecutar en su carpeta, da sólo leer y ejecutar
  • 🙍‍♀️ La profesora Ichal en el grupo dam, el alumno Gorka en da para probar permisos
  • 🚫 Con chmod cambiamos permisos de carpetas dam y da para grupos de usuarios
  • 🔐 Añadimos grupo asir sin ningún permiso con setfacl para probar listas de control de acceso
  • 📋 Las ACL nos permiten control de acceso más granular que los permisos del sistema operativo
  • 👤 Comprobamos funcionamiento con diferentes usuarios en grupos de dam, da y asir
  • 🔒 Ponemos el resto de usuarios a 0 permisos para mayor seguridad
  • ✅ Realizamos pruebas para validar que los permisos y ACL funcionan correctamente

Q & A

  • ¿Cuál es el objetivo principal del video?

    -Explicar cómo funcionan los permisos y las listas de control de acceso (ACL) en Ubuntu.

  • ¿Qué carpetas se crean inicialmente para mostrar los permisos?

    -Se crean las carpetas 'dam' y 'da' dentro de la carpeta 'birt'.

  • ¿Qué grupos de usuarios se configuran inicialmente?

    -Se configuran los grupos 'dam' y 'da'. En el grupo 'dam' se incluye el usuario 'ichar' y en el grupo 'da' se incluye el usuario 'gorka'.

  • ¿Cómo se modifican los permisos de las carpetas 'dam' y 'da'?

    -Se modifican con el comando 'chmod 775' para dar permisos de lectura, escritura y ejecución al propietario y al grupo, y solo lectura y ejecución al resto.

  • ¿Cómo se restringen los permisos para el grupo 'asir'?

    -Se utilizan las ACLs con el comando 'setfacl' para negar explícitamente los permisos de lectura, escritura y ejecución al grupo 'asir'.

  • ¿Cómo se comprueba que los permisos funcionan correctamente?

    -Se hacen pruebas iniciando sesión con diferentes usuarios y tratando de acceder y modificar archivos donde no tienen permisos configurados.

  • ¿Por qué al final se cambian los permisos para que 'resto' no tenga acceso?

    -Para mayor seguridad, evitando que otros grupos o usuarios no definidos explícitamente puedan acceder a las carpetas.

  • ¿Cómo permitir que 'dam' acceda a 'da' y viceversa?

    -Configurando ACLs explícitas con permisos de lectura, escritura y/o ejecución entre los grupos.

  • ¿Se podrían configurar permisos más granulares entre usuarios?

    -Sí, se podrían definir ACLs diferentes por cada usuario, no solo por grupos.

  • ¿Hay alguna forma de automatizar la configuración de permisos?

    -Sí, se podría crear un script que ejecute todos los comandos necesarios para configurar usuarios, grupos, permisos y ACLs.

Outlines

00:00

🗂️ Creación de la estructura de directorios dam y da con permisos diferenciados

Se crean los directorios dam y da dentro de birt. Se asignan permisos 775 a ambos directorios para que dam pueda leer, escribir y ejecutar en dam, y da pueda leer, escribir y ejecutar en da, mientras que otros usuarios solo pueden leer y ejecutar.

05:02

🔐 Modificación de permisos para restringir acceso

Se crea el grupo asir y el usuario Xavier. Se utilizan ACLs para impedir que asir acceda a los directorios dam y da. También se restringe el acceso de otros usuarios que no sean dam y da.

10:05

🧪 Pruebas de funcionamiento de permisos

Se hacen pruebas con diferentes usuarios para validar que los permisos y ACLs funcionan según lo esperado. Por ejemplo, gorka de da puede escribir en da pero no en dam, mientras que Xavier de asir no puede acceder a ninguno de los dos directorios.

15:06

✅ Resumen final y sugerencias

Se concluye que las pruebas funcionan según lo esperado. Se sugiere seguir probando distintas configuraciones de permisos y ACLs y preguntar cualquier duda en el foro.

Mindmap

Keywords

💡permisos

Los permisos definen qué usuarios o grupos pueden leer, escribir o ejecutar archivos/directorios. En el video se configuran permisos en Linux para controlar el acceso de diferentes grupos de usuarios a ciertas carpetas.

💡listas de control de acceso

También llamadas ACLs, son una función adicional en Linux para controlar permisos de acceso más allá de los permisos básicos del sistema. Permiten especificar permisos detallados para usuarios o grupos individuales.

💡chgrp

El comando chgrp cambia el grupo propietario de un archivo/directorio. En el video se utiliza para asignar la propiedad de ciertos directorios a grupos específicos de usuarios.

💡chmod

El comando chmod modifica los permisos básicos (lectura/escritura/ejecución) de archivos y directorios del sistema Linux.

💡setfacl

El comando setfacl establece reglas ACL para controlar permisos de acceso a un archivo/directorio. Permite definir permisos detallados para usuarios/grupos específicos.

💡getfacl

Muestra las reglas ACL establecidas sobre un archivo o directorio mediante setfacl. Sirve para revisar la configuración de permisos.

💡grupos

Los grupos permiten asignar permisos y propiedad sobre archivos/directorios a conjuntos de usuarios en lugar de a usuarios individuales.

💡propietario

El usuario propietario de un archivo/directorio tiene permisos totales sobre el recurso. El video muestra cómo asignar propietarios de grupos a directorios.

💡lectura

Uno de los 3 permisos básicos. Permite a un usuario/grupo ver el contenido de archivos y listar los contenidos de un directorio.

💡escritura

Otro permiso básico. Permite a un usuario/grupo modificar archivos o crear/eliminar archivos dentro de un directorio al que tienen acceso.

Highlights

Vamos a ver cómo funcionan los permisos y las listas de control de acceso en Ubuntu

Vamos a tener dos carpetas dam y da. dam va a tener permiso de lectura, escritura y ejecución. da tan solo va a tener lectura y ejecución

La profesora Ichal en el grupo dam. Yo, Gorka, en el grupo da

Cambiamos el grupo propietario a dam y da respectivamente

Con chmod cambiamos permisos a 775 para que de solo pueda leer y ejecutar, no escribir

Comprobamos que los permisos funcionan: gorka puede escribir en da pero no en dam, e ichal al reves

Creamos el grupo asil y el usuario Xavier para darle acceso restringido

Usamos setfacl para quitar todos permisos al grupo asil en dam y da

Comprobamos que Xavier no puede acceder a dam ni da ahora

Ponemos permisos 000 al resto de usuarios y luego dam y da solo lectura entre ellos con setfacl

Volvemos a comprobar con Xavier, Gorka e Ichal que los permisos están bien configurados

Los permisos del sistema operativo tienen limitaciones, las ACL nos dan más control

Podemos configurar permisos para que unos grupos accedan a unas carpetas si y otros grupos no

Hay que probar distintas combinaciones de permisos para entender bien cómo funciona

Se puede preguntar en el foro si hay alguna duda sobre permisos y ACLs en Ubuntu

Transcripts

play00:10

en este vídeo vamos a ver cómo funcionan

play00:12

los permisos y las listas de control de

play00:14

acceso en ubun entonces para ello vamos

play00:17

a tener este ejemplo primero vamos a

play00:20

hacer solo los permisos y vamos a

play00:22

suponer que dentro de la carpeta birl

play00:25

vamos a tener dos carpetas vale que van

play00:28

a ser dam y da y entonces a la carpeta

play00:31

de dam va a tener permiso el grupo de

play00:34

dam tanto de lectura escritura como

play00:37

ejecución pero el grupo de da tan solo

play00:40

va a tener lectura y ejecución no va a

play00:42

poder escribir vale he añadido aquí que

play00:44

en el grupo de dan va a estar la

play00:47

profesora ichar y en el grupo de da pues

play00:50

yo work vale Y luego ya veremos cóm

play00:53

estos permisos se nos van a quedar

play00:55

cortos y Entonces tendremos que utilizar

play00:57

las

play00:58

acls entonces entonces Bueno vamos a

play01:00

empezar lo primero vamos a abrir un

play01:04

terminal y aquí nos aparece que estamos

play01:07

que en el usuario virt V Entonces vamos

play01:10

a

play01:15

hacer vale nos vamos a loguear como Root

play01:18

para ir metiendo estos comandos que

play01:20

tengo aquí en la parte derecha

play01:21

simplemente Esto no es un Script ni es

play01:23

nada eh simplemente lo tengo aquí

play01:25

apuntado pues para ir recordándolos ya

play01:28

veremos en otros vdeos como hacer un

play01:30

Script Entonces ahora lo primero que

play01:33

vamos a hacer es vamos a dirigirnos a

play01:34

Home y vamos a crear la estructura vale

play01:37

aquí tenemos una carpeta se llama birt

play01:39

que es del usuario ese pero nosotros

play01:41

vamos a crear una que sea birt lh y

play01:47

dentro de

play01:50

birth vamos a

play01:52

crear Tanto

play01:54

dam he escrito mal es

play01:58

MK

play02:01

Ahora sí y mcad down Vale entonces ahora

play02:05

si hacemos ls tenemos ahí y vamos a ver

play02:09

qué permisos tiene cada una de las

play02:11

carpetas entonces aquí ya nos está

play02:13

apareciendo tien los mismos porque no

play02:15

hemos especificado nada y lo primero

play02:18

tenemos que fijarnos es el propietario

play02:19

va a ser Root esto no lo vamos a tocar

play02:21

porque es el usuario con el que hemos

play02:23

creado la carpeta Y aunque se puede

play02:25

modificar no nos interesa en este caso y

play02:27

después nos dice que el grupo va a ser

play02:30

Root también entonces cómo debemos estos

play02:32

permisos pues nos dice que el

play02:33

propietario tiene permiso para todo es

play02:36

decir puede leer escribir y ejecutar y

play02:39

después el grupo que en este caso como

play02:42

Root pues no tiene mucho sentido Pero ya

play02:44

vamos a ver más adelante cómo sí tendría

play02:46

lectura y escritura y luego estas que

play02:48

vienen aquí sería el resto de usuarios

play02:50

que también tendrían lectura y escritura

play02:53

Entonces ahora vamos a dirigirnos y

play02:55

vamos a empezar con esto vamos a crear

play02:57

los grupos que nos interesan Vale

play02:59

entonces pues como veis ahí add Group y

play03:02

vamos a crear un grupo para

play03:04

Adam y un grupo para

play03:08

Adam una vez que tenemos ya los grupos

play03:11

hechos vamos a crear los usuarios ad

play03:14

user pues vamos a empezar por por

play03:17

ejemplo y ya sé que en otro vídeo hemos

play03:19

visto cómo se utiliza user ad Pero bueno

play03:21

para que veáis el ad user nos pide ya la

play03:28

contraseña

play03:31

y el nombre entonces aquí sí que podemos

play03:34

ponerle con mayúscula nos pide algún

play03:37

dato más no vamos a rellenarlo y le

play03:39

vamos a decir que sí que es correcto y

play03:41

de la misma manera vamos a crear

play03:46

borka bien Ahora que ya tenemos los

play03:49

usuarios y los grupos lo que vamos a

play03:51

hacer es meter dentro de los grupos los

play03:53

usuarios entonces utilizamos El Comando

play03:56

user mod menos a para decir que añadimos

play04:00

y menos G para decirle que es grupo

play04:02

entonces en da vamos a meter a

play04:07

gorka y en dam vamos a meter

play04:12

aer

play04:15

listo ahora lo que vamos a hacer es

play04:17

cambiar el grupo propietario es decir

play04:19

aquí cuando hemos venido y hemos visto

play04:22

Vale Nos aparece que este es rot y a mí

play04:24

me interesa que aquí sea d y en este sea

play04:27

Now Vale entonces lo que vamos a hacer

play04:30

es eh con change Group ch grp y le

play04:37

decimos que va a ser D en cuál Pues en

play04:41

el en el directorio home birt y

play04:47

d vamos a hacer lo mismo con da y

play04:51

revisamos que esté

play04:57

bien vale ahora ya nos ha cambiado vale

play05:01

pero todavía no tiene mucha

play05:03

funcionalidad Por qué Porque estamos

play05:05

diciendo que damy da puedan leer y no

play05:08

puedan escribir pero el resto de

play05:11

usuarios tiene lo mismo entonces no nos

play05:13

está sirviendo vale cómo vamos a

play05:15

modificar esto con con ch mod vale

play05:18

cambiándole los permisos que es este 775

play05:21

que vemos aquí Cómo podemos calcular eso

play05:23

Pues mira existe un recurso como es esta

play05:27

calculadora vale que es muy sencillita

play05:29

Entonces le decimos el propietario qué

play05:31

queremos que tenga pues le vamos a decir

play05:33

que pueda hacer todo vale el grupo en

play05:37

este caso para la carpeta de dam Pues el

play05:40

grupo de dam qué va a tener Pues todo

play05:42

también entonces ya nos va modificando

play05:44

veis aquí abajo nos convierte este siete

play05:46

quiere decir que puede leer escribir y

play05:49

ejecutar este siete lo mismo y el último

play05:52

el resto que va a poder hacer pues tan

play05:54

sol va a poder leer y ejecutar Entonces

play05:57

nos dice podríamos meter bien sea esto o

play06:01

más sencillo el

play06:03

775 entonces volvemos aquí y hacemos ch

play06:07

mod

play06:09

775 dónde Pues lo mismo home

play06:15

bir tanto en dam como da lo mismo

play06:18

entonces lo metemos y ponemos en dam

play06:21

Exactamente lo mismo hacemos un ls vemos

play06:25

y ahora ya tiene más sentido vale porque

play06:28

d poder escribir en estas carpetas pero

play06:32

si hacemos al revés da en dam no va a

play06:35

poder hacerlo y dam es del grupo del dam

play06:37

en da tampoco vale vamos a hacer una

play06:40

prueba para ver qué funciona voy a poner

play06:43

el gráfico que teníamos vale para ver lo

play06:46

que estamos haciendo es decir

play06:48

ichar en la carpeta de dam va a poder

play06:51

escribir y gorka va a poder ver lo que

play06:53

ha escrito ichal pero no va a

play06:56

poder escribir y al revés es lo mismo

play06:59

Vale entonces Bueno pues vamos aquí a

play07:02

Iniciar sesión le decimos su gorka por

play07:08

ejemplo bien y ahora ya veis que aquí me

play07:10

ha cambiado en vez de bir ya estoy con

play07:12

gorka Vale entonces estamos en la

play07:15

carpeta de no vamos a CD home le decimos

play07:19

bir y vamos a ver aquí tenemos dam y da

play07:24

y gorka recordemos que pertenecía a da

play07:27

Entonces si vamos a da debería de poder

play07:30

escribir vamos a crear una carpeta que

play07:33

se llame prueba

play07:35

gorca y funciona correctamente ahí la

play07:39

tenemos vale Pero si ahora voy para

play07:41

atrás y me meto en el grupo de

play07:43

dan no me debería de

play07:49

dejar efectivamente funciona

play07:52

correctamente de la misma manera si

play07:54

hacemos con ichar pero al revés vale eso

play07:57

no vamos a probarlo si que seguís el

play08:00

ejercicio y podéis probarlo vosotros en

play08:03

casa vale entonces ahora vamos a suponer

play08:06

como viene aquí que aparece un nuevo

play08:08

grupo que sería los alumnos o profesores

play08:12

de asil Vale entonces nos dicen en dam

play08:17

va a poder leer escribir y ejecutar el

play08:20

grupo de dam el grupo de D va a seguir

play08:23

leyendo

play08:24

y y ejecutando pero el grupo de asir no

play08:29

ni siquiera ver el contenido Vale

play08:33

entonces nos dirigimos aquí y qué vamos

play08:35

a hacer pues vamos a crear el grupo de

play08:39

asir para ello Pues igual que hemos

play08:41

hecho antes

play08:43

Group

play08:46

asir creamos también un usuario en este

play08:49

caso vamos a crear a

play08:54

Xavier vale Y entonces ahora que tenemos

play08:57

Pues lo mismo vamos a añadirle user mod

play09:02

Añadir en el grupo asir a

play09:08

saber ya Lo tendríamos dentro por cierto

play09:10

antes no lo he hecho pero podemos ir y

play09:13

revisar que esto esté bien vale vamos a

play09:16

etc Cat

play09:19

Group y aquí nos aparece Y entonces nos

play09:22

está diciendo en el grupo dam pertenece

play09:24

ichar quién pertenece a d gorka y ahora

play09:28

tenemos que

play09:29

también pertenece saber Vale entonces

play09:32

Bueno pues siguiendo con lo que

play09:35

estábamos haciendo vamos a ir

play09:41

home y aquí tenemos entonces ponemos

play09:46

otra vez el dibujo y analizamos qu es lo

play09:48

que está pasando dentro de la carpeta de

play09:51

dam efectivamente d va a poder escribir

play09:56

porque es el grupo

play09:58

vale Pues los usuarios de da como es son

play10:01

el resto si que van a poder leer no van

play10:04

a poder escribir y van a poder ejecutar

play10:06

pero ahora queremos que asir no pueda ni

play10:08

siquiera ver entonces ya aquí no tenemos

play10:11

manera de jugar con eso vale vamos a

play10:14

utilizar las listas de control de acceso

play10:16

entonces para ello es bastante

play10:18

sencillito como vamos a ver vamos a

play10:20

decirle setfacl

play10:22

y le decimos men m g del grupo le por

play10:29

ejemplo

play10:31

da no da no le vamos a decir asir está

play10:35

mal en La Chuleta esta

play10:38

aquí esto sería asir para quitarle los

play10:42

permisos Ahí está y luego le decimos los

play10:47

tres permisos vale lo que mismo que

play10:48

hemos puesto antes 775 pero como no

play10:50

queremos que tenga ninguno pues ponemos

play10:52

las tres rayas y ahora le decimos el

play10:55

directorio que

play10:58

queremos

play11:00

y da igual que sea dam o da porque

play11:02

ninguno de ellos va a poder tener

play11:03

Entonces lo voy a hacer en los dos y así

play11:06

me aseguro Entonces ahora si hacemos ls

play11:09

men la aquí no vamos a ver nada pero sí

play11:12

que nos aparece este Plus vale que nos

play11:13

está diciendo que hay algo más Entonces

play11:16

cómo vamos a poder revisarlo Pues con el

play11:18

get

play11:22

faac si vamos al

play11:27

directorio

play11:30

nos dice lo siguiente nos dice los

play11:32

usuarios pueden leer escribir y tal el

play11:35

usuario propietario vale el grupo puede

play11:38

hacer lo mismo pero el grupo asir no

play11:40

puede hacer nada y todo el resto va a

play11:42

poder leer Vale y ejecutar Entonces

play11:46

ahora vamos a hacer la prueba y vamos a

play11:49

abrir una pestaña nueva con su

play11:53

Xavier vamos para atrás

play11:57

abrimos hacemos ls vemos que están d y

play12:00

da y en principio Xavier no debería

play12:04

poder acceder a nada y así nos lo dice

play12:06

Vale entonces

play12:08

bueno quizá tendría más sentido en vez

play12:11

de hacerlo de esta manera porque aquí

play12:14

tan solo se nos dice que asir no va a

play12:17

tener permisos

play12:18

eh si existiese ahora un nuevo grupo

play12:22

imagínense que salen no sé unos

play12:25

certificados o otro asir do cualquier a

play12:29

otro Grupo nuevo que se supone que no

play12:31

podría hacer nada o que tendría solo

play12:33

lectura y escritura pues seguramente no

play12:36

tendría ningún acceso Entonces lo más

play12:38

seguro que sería pues venir aquí y en

play12:41

vez de decir que en las carpetas de dam

play12:45

y de daw el resto de usuarios tenga eh

play12:49

lectura y ejecución Lo más seguro sería

play12:53

decirle que vamos a ir al ch mod que lo

play12:56

tendremos por aquí todavía

play12:59

decirle que el resto de usuarios tenga

play13:04

cero lo mismo en la de

play13:09

dam Vale ahora ya el resto de usuarios

play13:12

no puede hacer nada pero nos faltaría

play13:14

añadirle que en la carpeta de dam los de

play13:17

da puedan leer y viceversa Entonces eso

play13:20

lo haríamos con la AC y sería decirle en

play13:27

setac el grupo aquí le vamos a decir en

play13:31

vez de asir

play13:32

dam va a poder qué va a poder hacer

play13:35

eh leer escribir no y ejecutar sí y en

play13:40

qué carpeta Pues si estamos diciendo dam

play13:43

en la de

play13:46

da y Exactamente lo mismo pero al revés

play13:50

el grupo de

play13:51

da en la carpeta

play13:54

de

play13:56

D Entonces ahora hacemos es menos la

play14:00

vemos que el resto no va a poder nada

play14:02

Entonces ahora asir si venimos aquí

play14:05

tampoco va a poder entrar si está

play14:07

funcionando bien

play14:09

bueno tendríamos que escribirlo bien

play14:11

aquí y sigue sin poder entrar en ninguna

play14:15

de las dos carpetas que tenemos y vamos

play14:19

a comprobar ahora con gorka vale vamos

play14:22

para

play14:23

atrás vemos que tenemos dos y vamos a

play14:26

probar gorca es de da entonces en

play14:29

principio en da debería de tener

play14:31

permisos tal y como hemos hecho

play14:34

antes prueba gorka

play14:38

2 nos ha dejado y si vamos

play14:44

a

play14:49

dam vemos Que no hay nada y que no nos

play14:53

deja crear ninguna carpeta vale solo nos

play14:57

faltaría comprobar con ich Per bueno ya

play14:59

os digo que en principio va a funcionar

play15:02

porque todas las pruebas han sido

play15:05

satisfactorias entonces Bueno vamos a

play15:08

probarlo vemos así y podría ver lo que

play15:12

tenemos

play15:14

en vale eso puede pero no puede crear

play15:18

una carpeta Y si vamos a

play15:23

d hacemos y

play15:27

ahs Supongo que hagáis todo estas

play15:31

pruebas que he ido haciendo yo y luego

play15:33

pues que también configuré por ejemplo

play15:34

asir para que pueda escribir los del

play15:38

grupo asir y no puedan los de damid o

play15:40

que juguéis un poquito no y que si

play15:42

puedan unos y no otros pero que probéis

play15:44

tanto una cosa Vale tanto los permisos

play15:47

que nos proporciona el sistema operativo

play15:49

de base como las permisos que nos

play15:52

proporcionan las listas de control de

play15:54

acceso y si tenéis cualquier duda Pues

play15:56

como siempre al Foro o al correra nos

play15:59

podéis

play16:03

preguntar

Rate This

5.0 / 5 (0 votes)

Do you need a summary in English?