miércoles, 13 de enero de 2010

Administración de Usuarios en GNU/Linux

Los usuarios en Unix/Linux se identifican por un número único de usuario, User UID y pertenecen a un grupo principal de usuario, identificado también por un número único de grupo. El usuario puede pertenecer a uno o más grupos.

Es posible identificar tres tipos de usuarios en Linux, estos son los siguientes:
Usuario root:
  • También llamado súper usuario o administrador.
  • Su UID es cero.
  • Es la única cuenta de usuario con privilegios de todo el sistema.
  • Acceso total a todos los archivos y directorios con independencia y permisos.
  • Controla la administración de cuentas de usuarios.
  • Ejecuta tareas de mantenimiento del sistema.
  • Puede detener el sistema.
  • Instalar aplicaciones dentro el sistema operativo.
  • Puede modificar o reconfigurar el kernel o núcleo, controladores etc.

Usuarios especiales:
  • Ejemplos de usuarios especiales: bin, daemon, adm, lp, sync, shutdown, mail, operator, squid, apache, etc.
  • Se les conoce como cuentas del sistema operativo.
  • No tienen todos los privilegios del usuario root, pero dependiendo de la cuenta asumen distintos privilegios que controla el usuario root.
  • No tienen contraseñas pues son cuentas que no están diseñadas para iniciar sesiones con ellas.
  • También se les conoce como cuentas de “no inicio de sesión” (nologin).
  • Se crean automáticamente al momento de la instalación del Sistema Operativo.
  • Generalmente se les asigna un UID entre 1 y 100 (definido en /etc/login.defs).

Usuarios Normales:
  • Se usan para usuarios individuales.
  • Cada usuario dispone de un directorio de trabajo, ubicado generalmente en /home.
  • Cada usuario puede personalizar su entorno de trabajo.
  • Tienen solo privilegios completos en su directorio de Trabajo o Home.
  • Por seguridad, es siempre mejor trabajar con un usuario normal en vez del usuario root, y cuando se requiera hacer uso de comandos solo de root, utilizar el comando su.

Archivo de Configuración /etc/passwd
Cualquiera que sea el tipo de usuario, todas las cuentas se encuentran definidas en el archivo de configuración “passwd”, ubicado dentro del directorio /etc. Este archivo es de texto tipo ASCII, se crea al momento de la instalación con el usuario root y las cuentas especiales, más las cuentas de usuarios normales que se hayan indicado al momento de la instalación.
El archivo /etc/passwd contiene una línea para cada usuario, similar a las siguientes:

La información de cada usuario está dividida en 7 campos delimitados cada uno por el símbolo de los dos puntos “:


Archivo de Configuración /etc/shadow
Anteriormente (en sistemas Unix) las contraseñas cifradas se almacenaban en el mismo /etc/passwd. El problema es que “passwd” es un archivo que puede ser leído por cualquier usuario del sistema, aunque solo puede ser modificado por el usuario root. En cualquier computadora potente de hoy en día, un buen programa de descifrado de contraseñas y paciencia es posible “crackear” contraseñas débiles (por eso la conveniencia de cambiar periódicamente la contaseña del root y de otras cuentas importantes). El archivo “shadow”, resuelve el problema ya que solo puede ser leido por root. Shadow es una extension de “passwd” ya que no solo almacena la contraseña encriptada, sino que tiene otros campos de control de contraseñas.
El archivo /etc/shadow contiene una línea para cada usuario similar a las siguientes:


La información de cada usuario está dividida en 9 campos delimitados cada uno por “:


Archivo de Configuración /etc/group
Este archivo guarda la relación de los grupos a los que pertenecen los usuarios del sistema, contiene una línea para cada usuario con tres o cuatro campos de usuario:

root:x:0:root
Ligia:x:501:
Luis:x:503:Ventas, Ana




Generalmente, al crear el usuario “useradd” se crea también automáticamente su grupo principal de trabajo GID, con el mismo nombre del usuario. Es decir, si se añade el usuario “luis” también se crea el /etc/group el grupo “luis”.

Añadir usuarios con Useradd
Useradd o adduser es el comando que permite añadir nuevos usuarios al sistema desde la línea de comandos. Sus opciones más comunes o importantes son las siguientes:
  •  -c: Añade un comentario al momento de crear al usuario.
  •  -d: Específica el directorio de trabajo o home del usuario.
  •  -e: Fecha de expiración de la cuenta, formato AAA-MM-DD.
  •  -g: Número de grupo principal del usuario (GID).
  •  -G: Otros grupos a los que puede pertenecer el usuario, separados por comas.
  •  -u: UID del usuario, si no se indica esta opción, automáticamente se establece el siguiente número disponible a partir del último usuario creado.

Ejemplo añadimos un nuevo usuario, con el siguiente comando:

#>useradd carlos

Se creará el usuario y su grupo, así como las entradas correspondientes en /etc/passwd, /etc/shadow y /etc/group. También se creará el directorio de inicio o de trabajo: /home/carlos.

Ahora crearemos un nuevo usuario y establecemos un comentario, esto lo haremos de la siguiente manera:
#>useradd –c “Ana María López” Ana

Siempre el nombre del usuario es el último parámetro del comando.

Modificar usuarios con Usermod.
Como su nombre lo indica, usermod permite modificar o actualizar un usuario o cuenta ya existente. Sus opciones más comunes o importantes son las siguientes:

  • -c: Añade o modifica el comentario.
  • -d: Modifica el directorio de trabajo o home del usuario.
  • -e: Cambia o establece la fecha de expiración de la cuenta, formato AAAA-MM-DD.
  • -g: Cambia el número del grupo principal del usuario (GID).
  • -G: Establece otros grupos a los que puede pertenecer el usuario, separados por comas.
  • -L: Bloquea la cuenta de usuario, no permitiéndole que ingrese al sistema. (No borra ni cambia nada del la cuenta del usuario, solo lo deshabilita).
  • -u: Cambia el UID del usuario.
  • -U: Desbloquea una cuenta previamente bloqueada con la opción –L.

Por Ejemplo: Si quisiéramos cambiar el nombre al usuario “Ana” por “Anita”, tendríamos que hacer lo siguiente:
#>usermod –1 Anita Ana

Para bloquear la cuenta de usuario anterior, haremos lo siguiente:
#>usermod –L Anita

Eliminar usuarios con Userdel.
Como su nombre lo indica, userdel elimina una cuenta del sistema, userdel puede ser invocado de tres maneras:

 


0 comentarios:

Publicar un comentario

Suscribirse a Enviar comentarios [Atom]

<< Inicio