SEGURIDAD DEL SISTEMA DE ARCHIVOS
OBJETIVO GENERAL
El alumno será capaz de regular el acceso de los archivos y directorios del sistema de archivos.
OBJETIVOS ESPECÍFICOS
Comprender el funcionamiento de los permisos de acceso en el sistema de archivos
GNU/Linux.
Cambiar la propiedad de los archivos y directorios.
Cambiar los permisos de acceso de los archivos y directorios.
SUMARIO
2.1. Permisos.
2.1.1. Efectos los permisos sobre archivos y directorios.
2.2. Cambiar al usuario y grupo propietario.
2.2.1. Comando chown.
2.2.2. Comando chgrp.
2.3. Cambiar permisos de acceso.
2.3.1. Método nivel de control de acceso.
2.3.2. Método octal.
2.4. Laboratorio.
2.5. Glosario de términos.
2.6. Bibliografía y enlaces recomendados.
Sistemas Operativos I 1
INTRODUCCIÓN
En todo sistema GNU/Linux los archivos pertenecen a quien los crea, por lo tanto es el único que
puede borrarlos, ejecutarlos, etc. Esto es así porque Unix/Linux estaba pensado para ser
manejado por muchos usuarios a la vez y de esta forma nadie podía acceder a sus archivos sin su
consentimiento.
Sistemas Operativos I 2
DESARROLLO DEL CONTENIDO
2.1. Permisos
Los permisos regulan el acceso al archivo en los niveles de usuario propietario, grupo propietario y
los otros usuarios. Para ver los permisos de los archivos, ejecutamos (Ver Figura 1):
ls -l
Figura 1. Listado del directorio raíz
Los signos que aparecen al comienzo a la izquierda de la pantalla son los permisos de acceso.
Para entenderlos hay que tomarlos de 3 en 3, menos el guion del comienzo, que indica si es
archivo, directorio o enlace. (Ver Figura 2)
Sistemas Operativos I 3
Figura 2. Permisos de acceso
Los permisos siguientes tomados de tres en tres significan:
r (read) : Permiso de lectura.
w (write) : Permiso de escritura
x (execute) : Permiso de ejecución.
Su distribución de 3 en 3 se debe a que los 3 primeros corresponden al propietario del archivo, los
3 siguientes al grupo al que ese usuario pertenezca y los últimos al resto de usuarios.
2.1.1. Efectos de los permisos sobre archivos y directorios
La interpretación de estos permisos de acceso varía de acuerdo al tipo de archivo, en la Tabla 1
se detallan estos (Ver Tabla 1):
Permisos Archivo Directorio
r El contenido del El contenido del directorio
archivo puede ser puede ser leído (listado).
leído.
w El contenido del Crear o eliminar archivos y/o
archivo puede ser directorios en el directorio.
modificado.
x El archivo puede ser Buscar y acceder al
ejecutado (asumiendo directorio.
Sistemas Operativos I 4
que un archivo
binario).
Tabla 1. Efecto de los permisos
Sin el permiso ejecución en el directorio, solamente puede listar los nombres de los
archivos del directorio.
2.2. Cambiar al usuario y grupo propietario
Los usuarios y grupos propietarios de archivos y directorios son gobernados por las siguientes
reglas:
Cuando un archivo es creado, el usuario que lo creó es el propietario.
Cuando un archivo es creado, pertenece al grupo del usuario que lo creó.
2.2.1. Comando chown
Es usado para cambiar al usuario propietario del archivo. (Ver Figura 3)
Sintaxis:
chown nuevo_propietario nombre_archivo
Figura 3. Comando chown
2.2.2. Comando chgrp
Es usado para cambiar al grupo propietario del archivo. (Ver Figura 4)
Sistemas Operativos I 5
Sintaxis:
chgrp nuevo_grupo nombre_archivo
Figura 4. Comando chgrp
Solamente el super-usuario puede cambiar la propiedad del archivo. (Ver Figura 5)
Figura 5. Cambiando al usuario y grupo propietario
Los comandos chown y chgrp soportan la opción –R, la cual permite cambiar la propiedad
de un árbol de directorios completo. (Ver Figura 6)
Sintaxis:
chown –R nuevo_propietario directorio
Sistemas Operativos I 6
Figura 6. Cambiando al usuario y grupo propietario de un directorio
2.3. Cambiar permisos de acceso
El comando que permite cambiar los permisos de acceso a los archivos es chmod, se tiene dos
métodos para realizar los cambios de permisos:
Método nivel de control de acceso.
Método octal.
2.3.1. Método nivel de control de acceso (usuario, grupo, otros - UGO)
El método puede apreciarse en la Tabla 2.
Sintaxis:
chmod <nivel_control_acceso><acción><permiso_acceso> archivo
Opciones Descripción
nivel_control_acceso u usuario propietario
g grupo propietario
o otros usuarios
a todos los usuarios
acción + otorga el permiso
- elimina el permiso
= únicos permisos
permiso_acceso r lectura
w escritura
x ejecución
Tabla 2. Opciones del comando chmod
Sistemas Operativos I 7
Ejemplo1:
Agregar el permiso escritura al grupo propietario y a los otros usuarios del archivo postres. (Ver
Figura 7)
chmod go+w postres
Figura 7. Comando chmod
Ejemplo2:
Remover el permiso de lectura al grupo propietario de todos los archivos que tiene como primer
carácter la letra “ d “. (Ver Figura 8)
chmod g-r d*
Figura 8. Comando chmod
2.3.2. Método octal
Sistemas Operativos I 8
El comando chmod también puede manipular los permisos de acceso por código de números
(método octal). En la representación numérica, los tres bits de permisos (r, w, x) en cada nivel de
control de acceso (usuario, grupo y otros) son leídos como un número binario de tres bits.
Este método es frecuentemente el medio más conveniente para la manipulación de los permisos
de acceso.
A cada permiso de acceso se le asigna un valor (Ver Tabla 3):
Permiso de Valor
acceso
r 4
w 2
x 1
Tabla 3. Valor otorgado a cada permiso
Ejemplos:
rw- = 4+2=6
r-x = 4+1=5
- -x = 1
El valor más grande posible (rwx) es 7, cada conjunto de permisos puede ser representado por un
sólo dígito octal entre 0 y 7. La colección de todos los tres conjuntos de los bits rwx es entonces
representado como un número octal de tres dígitos.
Ejemplos:
rw-rw -r- - = 664
rw-r- - - - - = 640
r- -r- --r- - = 444
Sintaxis:
chmod <numero> archivo
Sistemas Operativos I 9
Ejemplo 1:
Otorgar el permiso lectura y escritura al usuario propietario; al grupo propietario el permiso de
lectura y a otros usuarios denegar todos los permisos del archivo desayunos. (Ver Figura 9)
chmod 640 desayunos
Figura 9. Comando chmod – método octal
Ejemplo 2:
Otorgar todos los permisos al usuario propietario, al grupo propietario otorgar los permisos lectura
y ejecutar y a otros usuarios únicamente otorgarle el permiso ejecutar del archivo dietas. (Ver
Figura 10)
chmod 751 dietas
Figura 10. Comando chmod – método octal
Sistemas Operativos I 10
2.4. Laboratorio
Duración:
30 minutos
Objetivos:
Uso de comandos para cambiar al usuario y grupo propietario de archivos y directorios.
Uso de comandos para cambiar los permisos de acceso a los archivos y directorios.
Recursos a utilizar:
Un computador con GNU/Linux en modo texto (consolas virtuales)
Un nombre de usuario y su contraseña respectiva (super-usuario = “root”)
Procedimiento de ejecución:
1. Usando el comando chmod, con el método nivel de control de acceso (UGO):
a. Otorgar el permiso ejecución al usuario propietario del archivo doc1.txt
b. Remover el permiso de lectura a todos los usuarios del archivo doc2.txt
c. Remover el permiso de escritura a todos los usuarios, entonces otorgar a l usuario y
grupo propietario los permisos de lectura y escritura del archivo doc3.txt
d. Otorgar a todos los usuarios el permiso de escritura del archivo doc4.txt
Sistemas Operativos I 11
2. Usando el comando chmod, con el método octal (numérico):
a. Otorgar el permiso de lectura y escritura al usuario propietario, al grupo propietario
el permiso de lectura y a los otros usuarios denegar todos los permisos del archivo
doc5.txt
b. Otorgar todos los permisos al usuario propietario, al grupo propietario lectura y
ejecución y a los otros usuarios únicamente otorgarle el permiso de ejecución del
archivo doc6.txt
c. Denegar todos los permisos al usuario propietario y a los otros usuarios, otorgar al
grupo propietario todos los permisos y que todos los archivos creados en el
directorio dir1 sean de propiedad del grupo propietario del directorio dir1.
Sistemas Operativos I 12
2.5. Glosario de términos
Buffer Es una palabra inglesa que se refiere a un espacio reservado en memoria
para guardar alguna información temporalmente.
2.6. Bibliografía y enlaces recomendados:
Teach Yourself UNIX in 24 hours-Dave Taylor and James C. Amstrong Jr.-1997
Linux: Rute user’s tutorial and exposition- Paul Sheer-2001
www.tldp.org
www.ibiblio.org
www.linuxgazette.net/
www.gacetadelinux.com
Sistemas Operativos I 13