Respecto a los elementos de los sistemas operativos
describiremos las siguientes: ususarios, procesos, memoria y
ficheros.
Usuarios
Varia según sistemas
operativos, si el sistema operativo és multiusuario se requiere
de un username y una
pasword. Cada usuario
tiene un identificador y un nombre de usuario que será el
username, el identificador és
un número que va
asociado a un único username y este és el que utiliza internamente
el ordenador, el username
és cara al usuario.
Un ejemplo seria (nombre, identificador) -- (joseL, 3553)
La identificación
se realiza mediante el username y la autentificación mediante la
passeord, que no és el
identificador.
La pasword debe ser secreta,
solo la debe conocer el usuario, y se aconseja que sea como mínimo
de 6 caracteres.
Hay algunos sistemas que
requieren varias paswords.
Las paswords se guardan
en el ordenador pero no deben guardarse a la vista, deben cifrarse, para
ello se le aplica
una funciíon unidireccional
( apartir del texto cifrado és imposible sacar el texto original)
como el MD5 y se guardan
cifradas. Para comprobar
si una pasword és la correcta, esta se cifra con el MD% y se comprueba
con la password
cifrada guardada anteriormente,
si esta el igual la pasword és correcta, en caso contrario, és
incorrecta.
En el sistema operativo
UNIX las paswords se guardan en el fichero /etc/passwd. El contenido de
este fichero és el
siguiente:
usuario:pasword:identificador:gid:nombre y apellidos:direccion home:shell
La pasword se compone de 8 caracteres que se tranforman a 11 cifrados y
se añaden 2 más que forman la semilla,
un total de 13 caracteres.
En la actualidad, las paswords
no se guardan en este fichero, si no en otro llamado /etc/shadow, la pasword
en este
fichero se guarda junto
al username y unas variables de fechas de cambio de pasword o de acceso...
Procesos
Cada proceso lleva asodiado
un identificador, los identificadores posibles son estos:
EUID: identificador de usuario efectivo, és del propietario.
EGID: identificador de grupo efectivo, és del propietario.
UID: identificador de usuario, és del que ejecuta el proceso.
GID: identificador de grupo, és del que ejecuta el proceso.
Memoria
La memoria está dividida
en páginas, cada proceso és asignado a una o varias páginas,
si hay algun proceso
asignado a una página
que no le corresponde, se produce un error.
Ficheros
Un fichero puede ser compartido
por varios usuarios, cada uno de ellos con sus permisos. Existen unas listas
de
control de acceso, llamadas
ACL, donde se encontrarán los permisos de cada usuario respecto
a un fichero o un
conjunto de ficheros. Este
és el caso del sistema operativo Windows NT, los permisos existentes
son:
lectura R
escritura W
propietairo O
borrado D
ejecución X
En UNIX es distinto, aqui
cada fichero tiene permisos para el propietario, grupo y
otros y estos perimsos son:
lectura R
escritura W
ejecución X
Tambien hay dos atributos
que se describen a continuación y se utilizan encima del permiso
de ejecución:
t: solo deja trabajar si eres el propietario del fichero, un ejemplo:
en el directorio /temp rwx rwx rwt
(propietario, grupo, otros)
s: se aplica a propietario y grupo, solo afecta a ficheros ejecutables
y realiza lo siguiente: cuando un proceso con
atributo s és ejecutado por alguien que no és el propietario,
el proceso tiene como UID el identificador del que
lo ejecuta pero tiene como UIDE el identificador del propietario. Un ejmplo:
rws r-s --x (propietario, grupo, otros)
Aclaración: Si aparece algo como rwS r-S --x (propietario,
grupo, otros) és porque hay un error debido al no
tener permiso de ejecución y llevar el atributo s.
Un ejemplo de utilización
del atributo s sería el siguiente:
En nuestra cuenta de usuario de la UJI para poder cambiar la pasword accedemos
al programa passwd, el propietario
de este programa és el root pero tiene el atributo s, nosotros podemos
acceder a él como root para cambiar la
pasword, pero sólo para eso, en ese momento el UIDE será
el 0, perteneciente al root, y el UID será el nuestro.
rws r-x --x root root
/usr/bin/passwd
Para poder acceder como root todos los del grupo sería:
r-s r-s r-x root root
/bin/sh