Curso 2004-2005 Ramón Manjavacas Ortiz Web: http://www.inf-cr.uclm.es/www/rmanjava Email: Ramon.Manjavacas@uclm.es
Usuarios y grupos.: 1 Administración de usuarios en UNIX.: 2 Administración de usuarios en Windows 2000 Server.: 3 Transp. 2
Cuentas de usuario Conceptos básicos Mecanismo para acceder a los recursos de un dominio o estación de trabajo de una forma controlada Usuarios Entidades que permiten acceder a un sistema Disponen de: Perfil de acceso (programas y archivos) Entorno de trabajo Identificador único y contraseña de acceso Transp. 3
Conceptos básicos Grupos Entidades lógicas que reúnen un conjunto de usuarios Control sobre todas las características del grupo Facilita la tarea de administración Perfiles Información sobre la configuración y apariencia del espacio de trabajo asociado a una cuenta de usuario Transp. 4
Conceptos básicos Gestión y administración Las tareas relacionadas con la gestión de usuarios, grupos de trabajo y perfiles sólo pueden ser realizadas por usuarios con privilegios de administración Estudiaremos como casos particulares Windows 2000 Server Unix Transp. 5
Conceptos básicos Usuarios y grupos en Unix Un usuario se caracteriza por: Perfil de acceso Entorno de trabajo Identificador único y contraseña Un grupo se caracteriza por: Identificador único Perfil definido para todos los usuarios Transp. 6
Identificación UID (User Identification) Entero con rango entre 0 y 32767 El intervalo se divide en rangos según el tipo de usuario El superusuario es el UID=0 GID (Group Identification) Entero con rango entre 0 y 32767 El superusuario es el GID=0 Por sencillez se asocian nombres a los UID y GID UID=0, GID=0 usuario root, grupo root Transp. 7
Creación de un usuario Decidir a que grupo o grupos pertenecerá Darlo de alta en /etc/passwd Darlo de alta en /etc/group Crear directorio de trabajo Archivo de usuarios Archivo de grupos /etc/passwd /etc/group Transp. 8
El archivo /etc/passwd Contenido ASCII Cada línea corresponde a un registro de un usuario Cada registro está dividido en 7 campos separados por : login: No tendrá más de 8 caracteres clave: Aparecerá codificada UID y GID: El UID debe ser único Información administrativa: Nombre completo, teléfono, etc. HOME: Directorio de entrada al sistema. Generalmente coincide con el login. SHELL: Intérprete de comandos con el que trabajará Transp. 9
Registros en /etc/passwd login:clave:uid:gid:información Adm:HOME:SHELL Ejemplo luis:xhmwu2uyha:300:100:yo:/home/luis:/bin/sh Transp. 10
El archivo /etc/group Contenido ASCII Cada línea corresponde con la descripción de un grupo (formada por cuatro campos) nombre del grupo: Debe ser único clave: Usado en versiones antiguas GID: Debe ser único lista de miembros: Nombres de los usuarios (login) separados por comas Registros en /etc/group nombre:clave:gid:lista_de_miembros Transp. 11
Ejemplo Registros para un usuario de login (alumno1) que pertenece al grupo de alumnos /etc/passwd alumno1:xhmwu:301:100:el:/home/alumno1:/bin/sh /etc/group alumnos::100:alumno1,alumno2,alumno3,... Transp. 12
Proceso de alta de un usuario Elegir un identificador (login), UID Decidir el grupo al que va a pertenecer, GID Determinar directorio de trabajo Editar el archivo /etc/passwd Editar el archivo /etc/group Crear el directorio de trabajo y asignarle la propiedad al usuario (chown, chgrp) Proporcionar una configuración mínima para el intérprete de comandos Asignarle contraseña Transp. 13
Problemas en el proceso de alta de un usuario Condiciones de carrera en la edición del archivo /etc/passwd Solución: edición de forma exclusiva En la mayoría de los sistemas existen shell scripts para dar de alta usuarios y grupos (useradd, groupadd) Contraseñas Cualquier usuario puede leer /etc/passwd - Puede ser sometido a un programa de detección de claves SVR4 contiene un archivo /etc/shadow - Almacena las claves cifradas e información sobre su caducidad - Permiso de lectura solo para root - /etc/passwd almacena una x en el campo de la clave Transp. 14
El archivo /etc/shadow Contenido ASCII Cada línea es un registro con 8 campos login Clave cifrada Periodo en el que no puede cambiarse Fecha a partir de la cual debe cambiarse Fecha de aviso de caducidad Periodo de gracia después de caducar Fecha de baja Campo reservado Transp. 15
Precauciones con respecto a las palabras clave Se recomienda utilizar conexiones de red seguras En conexiones de red estamos expuestos a ser escuchados El cifrado se produce en el sistema UNIX y no antes La clave viaja por la red sin cifrar Utilización de telnet seguro: ssh La palabra clave del administrador no debe utilizarse en otro lugar que no sea la consola El sistema debería impedir conexiones del usuario root mediante la red Alternativa: conexión al sistema como un usuario cualquiera y ejecución del comando su Transp. 16
Proceso de baja de un usuario Hacer copia de seguridad de su directorio de trabajo Editar el archivo /etc/passwd Editar el archivo /etc/group Eliminar el directorio principal y sus subdirectorios rm -r HOME Comprobar otros servicios donde el usuario podría estar dado de alta: correo, impresión, web, etc. Problemas Condiciones de carrera. Solución userdel Transp. 17
Proceso de baja temporal de un usuario En las primeras versiones de UNIX Colocar un * en el campo de la clave en el archivo /etc/passwd Con los nuevos servicios de red la medida anterior no es suficiente rlogin, rsh, etc Solución Colocar como intérprete de comandos un programa que escriba un mensaje informando que la cuenta está temporalmente bloqueada o inhibida Transp. 18
Adaptación del Entorno Archivos de personalización Particular para cada cuenta de usuario Personalización de los comandos y utilidades mediante archivos de configuración en HOME Los nombres de estos archivos suelen comenzar por. Se escriben en el lenguaje de programación del Shell Momentos de lectura de los archivos de configuración: Acceso al sistema (proceso de login) Arranque de un nuevo intérprete (shell) Salida del sistema (proceso de logout) Transp. 19
Adaptación del Entorno Ejemplos para el shell bash Nombres de archivos de configuración Sistema /etc/profile Entrada.bash_profile,.bash_login,.profile Salida del sistema.bash_logout Arranque de un nuevo shell.bashrc Ejemplo de.profile umask 022 PATH=/usr/ucb:/bin:/usr/bin; export PATH TERM=vt100; export TERM Transp. 20
Adaptación del Entorno Si la shell es... Korn(/bin/ksh) Bourne(/bin/sh) Posix(/bin/posix/sh) Restricted(/bin/rsh,/bin/krsh) C(/bin/csh) Si la shell es... Korn(/bin/ksh) Bourne(/bin/sh) Posix(/bin/posix/sh) Restricted(/bin/rsh,/bin/krsh) C(/bin/csh) Script de login del sistema /etc/profile /etc/profile /etc/profile /etc/profile /etc/csh.login Script local de entrada al sistema.profile.profile.profile.profile.login Transp. 21
Usuarios que: No encajan en un perfil estándar Tipos: De sistema -Realizan una tarea específica (p.e. gestionar impresión, lp) Suelen pertenecer al grupo root De aplicaciones -Las aplicaciones que se ejecutan disponen de un usuario propio bajo el que se ejecutan pero que no es de acceso P.e., oracle, apache, ftp De correo electrónico -No utilizan el intérprete de comandos -En las versiones modernas no es necesario que los usuarios estén dados de alta en /etc/passwd Usuarios especiales en UNIX Transp. 22