Gestión de permisos, usuarios y grupos – Introducción – I
Este pequeño artículo no va orientado a profundizar sobre el diseño de un sistema operativo, técnicas e implementaciones. Sino a dar una visión global del tema para conocer cómo funcionan algunos aspectos y las herramientas de las que disponemos.
Un sistema operativo no deja de ser un programa que se ejecuta sobre un equipo, y sobre el cuál funcionan en diversas capas diferentes servicios.
Centrándonos en el caso de Linux, similar a UNIX en muchos aspectos, explicaremos qué es POSIX más adelante.
¿Qué entendemos por usuario? ¿Para qué se necesita?
Una identidad que nos permite autenticarnos en el sistema, y que lleva consigo perfiles y configuraciones de diferentes tipos. Es necesario llevar un registro y control de acceso para la ejecución de los programas.
¿Qué es un proceso?
Es una instancia de un programa ejecutable. Un programa puede llegar a generar más de un proceso.
Cada uno de ellos es independiente de los demás, con su espacio reservado y propiedades.
Cada proceso tiene asignado un identificador que le indica quién es un propietario (UID), que no tiene porqué ser el mismo que el propietario del fichero ya que es quién invoca al fichero.
De igual manera tienen asignado un identificador del grupo al cual pertenece (GID)
Existen dos tipos de UID y GID : real y efectivo.
Ahora bien, para entender como funciona esto hay que distinguir entre quién "se supone" (efectivo) que ejecuta un proceso y quién "realmente" lo ha invocado (real).
Un usuario a la hora de invocar un programa puede suplantar a otro (ejemplo: para obtener privilegios de administrador, limitar un servicio, utilizar la configuración propia de un usuario, etc ...)
El comando sudo permite hacer precisamente esto. El sistema consulta si el usuario tiene autorización para hacerlo, en el fichero /etc/sudoers (del que ya hablamos en una ocasión)
Y su nos proporciona una shell (interprete), o ejecutar directamente otra aplicación (no recomendado), como el usuario indicado.
[$] su usuario
albireo@hyperion:~$ su alcaudon
Introducimos la contraseña de ese usuario y podemos ver en el prompt el usuario:
alcaudon@hyperion:/home/albireo$
De la misma forma para obtener en una terminal, acceso como administrador (root) podemos utilizar [$] su
Al no indicarlo de forma explicita, entiende root.
2258 suscriptores. ¡
4 May 2009 a las 8:49
Información Bitacoras.com…
Valora en Bitacoras.com: Este pequeño artículo no va orientado a profundizar sobre el diseño de un sistema operativo, técnicas e implementaciones. Sino a dar una visión global del tema para conocer cómo funcionan algunos aspectos y las herramient…
4 May 2009 a las 21:29
Interesante tema. Estaré pendiente de que lo cumplimentes, si es que lo tienes pensado.
7 Ago 2009 a las 9:50
Hola, he instalado en un PC Ubuntu con un usuario con todos los permisos y otros tres con perfil de desktop, es decir, sin permisos administrativos. El caso es que ahora no se como pueden instalar aplicaciones en el espacio de los usuarios que no son administradores ya que no se puede entrar en synaptic ni instalar nada.
Gracias por la ayuda.