Tema 3 - ADMINISTRACION DE USUARIOS Y GRUPOS
1. Administracion de usuarios y grupos
La administración de un sistema Linux se puede realizar a través de interfaces gráficas, la terminal (permitiendo la flexibilidad de crear Shell scripts) o modificando directamente los ficheros de configuración.
1.1. Ficheros de configuración:
Mensajes:
/etc/issue: Mensaje de bienvenida antes de iniciar la sesión (muestra la versión de la distribución)./etc/motd: Mensaje que aparece después de iniciar sesión (solo vía SSH/Telnet).
Configuración Global:
/etc/profile: Configuración que se aplica a todos los usuarios, haciendo referencia al intérprete de comandos (es un Shell script ejecutable)./etc/login.defs: Establece valores por defecto para variables y órdenes que afectan a todos los usuarios (ej: posicionar al usuario en su directorio personal al iniciar sesión).
Perfiles de Usuario:
.profile: Se guarda en el home de cada usuario para configurar su entorno e inicializar variables..bashrc: Se usa tradicionalmente para ejecutar scripts o programas de forma automática, se ejecuta después de .profile..bash_logout: Se procesa al terminar la sesión (ej: borrar ficheros temporales).
1.2. Tipos de Usuarios y sudo:
Tipos:
root (administrador, UID 0), posee el identificador de usuario (UID) 0 y el identificador de grupo (GID) 0.
Usuarios «normales» (sesión limitada)
Usuarios asociados a servicios (no pueden iniciar sesión, se usan para establecer privilegios en un servicio, como apache).
Comando sudo: Permite lanzar una orden con privilegios de root. Sus reglas de acceso, alias y opciones se guardan en el archivo /etc/sudoers. Debe editarse con el comando visudo para evitar conflictos y comprobar la sintaxis.
1.3. Gestión de Usuarios y Grupos
Creación/Eliminación de Usuarios: Se usan los comandos
adduserouseradd(para crear) ydeluser(para eliminar).Ficheros Actualizados al Crear/Eliminar:
/etc/passwd: Listado de usuarios, ID, GID, shell./etc/shadow: Contraseñas encriptadas y datos de caducidad./etc/group: Grupos dados de alta y sus miembros.
Administración de Grupos: Se usa
addgrouppara crear un grupo ydelgrouppara eliminarlo.
2. Permisos y Listas de Control de Acceso (ACL)
2.1 Permisos Básicos
Se manipulan con el comando chmod y se especifican para tres entidades:
Propietario del archivo/directorio.
Grupo propietario.
Resto de usuarios (otros)
Permiso |
Archivo |
Directorio |
|---|---|---|
Lectura (r) |
Ver el contenido del archivo. |
Ver el nombre de los archivos. |
Escritura (w) |
Crear, modificar o eliminar el archivo. |
Agregar, eliminar y renombrar archivos. |
Ejecución (x) |
Ejecutar el archivo. |
Recorrer su árbol para acceder a subdirectorios (cd). |
2.2. Permisos Especiales
Bit SUID (4xxx): Asignable a ejecutables. Permite que el proceso adquiera los permisos del propietario del fichero al ser ejecutado (ejemplo: su). Se ve como una s en el permiso de ejecución del propietario.
Bit SETGID (2xxx): Hace que el proceso adquiera los privilegios del grupo asignado al fichero. En directorios, los ficheros creados heredarán el grupo del directorio. Se ve como una s en el permiso de ejecución del grupo.
Sticky Bit (1xxx): Indicado solo para directorios. Los ficheros almacenados solo pueden ser renombrados o borrados por su propietario, el propietario del directorio o root (ejemplo: /tmp). Se ve como una t o T en el permiso de ejecución de «otros».
2.3. ACL y umask
Listas de Control de Acceso (ACL): Permiten especificar permisos a múltiples usuarios y/o grupos que no son el propietario o el grupo principal, superando la limitación de los permisos básicos. Se gestionan con los comandos
getfacl(ver) ysetfacl(crear/modificar).umask: Establece los permisos por defecto para los nuevos archivos y directorios creados. El valor de umask desactiva permisos (un bit a “1” desactiva un permiso). Un valor común es 022.
Cambio de Propiedad: El propietario y el grupo de un archivo/directorio se cambian con
chownychgrprespectivamente.
3. Sistemas de Ficheros (SF)
El sistema de ficheros determina cómo se almacena lógicamente la información en el disco y define características como la estructura de directorios.
3.1. Creación, Chequeo y Reparación
Creación: El comando
mkfsse usa para crear un SF. Se puede especificar el tipo con la opción -t (por defecto es ext2).Inconsistencias: La causa más común de corrupción es el apagado indebido del equipo.
Reparación:* Se utiliza el comando
fscko las órdenes específicas de su familia (e2fsck, fsck.ext3). La partición a chequear no debe estar montada. También se puede usar badblocks para buscar sectores dañados.Superbloque e Inodos: El Superbloque describe el estado del SF. Los Inodos (bloque de información de nodo) almacenan los metadatos del fichero (permisos, propietario, fechas, etc.) y un puntero a los bloques de datos.
4. Montaje y Monitorización
Montaje y Desmontaje
Montaje: Para usar cualquier dispositivo, se le debe asignar un punto de montaje (un directorio vacío). Se realiza con el comando
mount [-t tipo_sf]dispositivo directorio.Desmontaje: El comando
umountdesmonta un dispositivo, una acción crucial para dispositivos extraíbles ya que Linux guarda el acceso a los SF en caché.UUID de Particiones: Es un identificador hexadecimal único para cada partición, más robusto que el nombre de dispositivo (/dev/sdXY) porque no cambia si se añaden o quitan discos. Se obtiene con blkid.
Montaje Automático: Para montar un SF de forma permanente en cada inicio, se edita el fichero /etc/fstab. Una línea típica incluye: dispositivo o UUID, punto de montaje, tipo de SF, opciones, dump y pass.
5. Monitorización
df (disk free):Muestra el espacio libre de los sistemas de ficheros montados.du (disk usage):Muestra el espacio que están utilizando los directorios o archivos.dmesg:Muestra la lista de mensajes del kernel, útil para ver información de arranque o nuevos dispositivos (ej:dmesg | grep -i usb).