Follow Techotopia on Twitter

On-line Guides
All Guides
eBook Store
iOS / Android
Linux for Beginners
Office Productivity
Linux Installation
Linux Security
Linux Utilities
Linux Virtualization
Linux Kernel
System/Network Admin
Programming
Scripting Languages
Development Tools
Web Development
GUI Toolkits/Desktop
Databases
Mail Systems
openSolaris
Eclipse Documentation
Techotopia.com
Virtuatopia.com

How To Guides
Virtualization
General System Admin
Linux Security
Linux Filesystems
Web Servers
Graphics & Desktop
PC Hardware
Windows
Problem Solutions
Privacy Policy

  




 

 

NOTE: CentOS Enterprise Linux is built from the Red Hat Enterprise Linux source code. Other than logo and name changes CentOS Enterprise Linux is compatible with the equivalent Red Hat version. This document applies equally to both Red Hat and CentOS Enterprise Linux.
Linuxtopia - CentOS Enterprise Linux 4: Introduccion a la administracion de sistemas - Informaci�n espec�fica a Red Hat Enterprise Linux

6.3. Informaci�n espec�fica a Red Hat Enterprise Linux

Las secciones siguientes describen las diferentes funcionalidades espec�ficas a Red Hat Enterprise Linux que se relacionan con la administraci�n de cuentas de usuarios y recursos asociados.

6.3.1. Cuentas de usuarios, Grupos y Permisos

Bajo Red Hat Enterprise Linux, un usuario puede iniciar una sesi�n en un sistema y utilizar cualquier aplicaci�n o archivos a los cuales tengan permiso de acceso despu�s de crear una cuenta de usuario normal. Red Hat Enterprise Linux determina si un usuario o grupo puede acceder estos recursos basado en los permisos asignados a ellos.

Existen tres tipos diferentes de permisos para archivos, directorios y aplicaciones. Estos permisos son utilizados para controlar los tipos de acceso permitido. Se utilizan diferentes s�mbolos de un car�cter para describir cada permiso en un listado de directorio. Se usan los siguientes s�mbolos:

  • r — Indica que una categor�a dada de usuario puede leer un archivo.

  • w — Indica que una categor�a de usuario puede escribir a un archivo.

  • x — Indica que una categor�a de usuario puede ejecutar los contenidos de un archivo.

Un cuarto s�mbolo (-) indica que no se permite ning�n acceso.

Cada uno de estos tres permisos son asignados a tres categor�as diferentes de usuarios. Las categor�as son:

  • owner — El due�o o propietario de un archivo o aplicaci�n.

  • group — El grupo due�o del archivo o aplicaci�n.

  • everyone — Todos los usuarios con acceso al sistema.

Como se indic� anteriormente, es posible ver los permisos para un archivo invocando un listado de directorios largo con el comando ls -l. Por ejemplo, si el usuario juan crea un archivo ejecutable llamado foo, la salida del comando ls -l foo ser�a as�:

-rwxrwxr-x    1 juan     juan            0 Sep 26 12:25 foo

Los permisos para este archivo se listan al principio de la l�nea, comenzando con rwx. El primer conjunto de s�mbolos define el acceso del due�o - en este ejemplo, el due�o juan tiene acceso completo y puede leer, escribir y ejecutar el archivo. El pr�ximo conjunto de s�mbolos rwx define el acceso de grupo (una vez m�s, con acceso completo), mientras que el �ltimo conjunto de s�mbolos define el tipo de acceso permitido para todos los dem�s usuarios. Aqu�, todos los otros usuarios pueden leer y ejecutar el archivo, pero no pueden modificarlo de ninguna forma.

Otro aspecto importante a tener en mente con relaci�n a los permisos y a las cuentas de usuarios es que cada aplicaci�n ejecutada en Red Hat Enterprise Linux se ejecuta en el contexto de un usuario espec�fico. T�picamente, esto significa que si el usuario juan lanza una aplicaci�n, la aplicaci�n se ejecuta usando el contexto de juan. Sin embargo, en algunos casos la aplicaci�n puede necesitar un nivel de acceso m�s privilegiado para poder realizar la tarea. Tales aplicaciones incluyen aquellas que modifican los par�metros del sistema o que conectan usuarios. Por esta raz�n, se deben crear permisos especiales.

Hay tres tipos de permisos especiales dentro de Red Hat Enterprise Linux. Ellos son:

  • setuid — utilizado solamente para aplicaciones, este permiso indica que la aplicaci�n se va a ejecutar como el due�o del archivo y no como el usuario lanzando la aplicaci�n. Se indica por el car�cter s en el lugar de x en la categor�a del propietario. Si el propietario del archivo no tiene permisos de ejecuci�n, la S se coloca en may�sculas para reflejar este hecho.

  • setgid — usada principalmente por las aplicaciones, este permiso indica que la aplicaci�n se ejecutar� como el grupo que es due�o del archivo y no como el grupo del usuario lanzando la aplicaci�n.

    Si se aplica a un directorio, todos los archivos creados dentro del directorio son propiedad del grupo que posee el directorio, y no por el grupo del usuario creando el archivo. El permiso de setgid se indica por el car�cter s en el lugar de x en la categor�a de grupo. Si el grupo que posee el archivo o directorio no tiene permisos de ejecuci�n, se coloca en may�sculas la S para reflejar este hecho.

  • sticky bit — utilizado principalmente en directorios, este bit indica que un archivo creado en el directorio solamente puede ser eliminado por el usuario que cre� el archivo. Esto se indica por el car�cter t en el lugar de x en la categor�a de todo el mundo (everyone). Si la categor�a everyone no tiene permisos de ejecuci�n, la T se coloca en may�sculas para reflejar este hecho.

    Bajo Red Hat Enterprise Linux, el sticky bit se coloca por defecto en el directorio /tmp/ exactamente por esta raz�n.

6.3.1.1. Nombres de usuarios y UIDs, Grupos y GIDs

En Red Hat Enterprise Linux, los nombres de cuentas de usuarios y grupos son principalmente para la conveniencia de la gente. Internamente, el sistema utiliza identificadores num�ricos. Para los usuarios este identificador se conoce como un UID, mientras que para los grupos se conoce como GID. Los programas que hacen disponibles la informaci�n de usuarios o grupos para los usuarios, traducen los valores de UID/GID a sus equivalentes m�s legibles para el usuario.

ImportanteImportante
 

Los UIDs y los GIDs deben ser globalmente �nicos dentro de su organizaci�n si pretende compartir archivos y recursos sobre la red. De lo contrario, cualquier control de acceso que implemente no funcionar� correctamente pues estan basados en UIDs y GIDs, no en nombres de usuarios y de grupos.

Espec�ficamente, si los archivos /etc/passwd y /etc/group en un servidor de archivos y en la estaci�n de trabajo de un usuario son diferentes en los UIDs o GID que contienen, la aplicaci�n inadecuada de permisos puede llevar a problemas de seguridad.

Por ejemplo, si el usuario juan tiene un UID de 500 en un computador de escritorio, los archivos que juan cree en un servidor de archivos se crear�n con un propietario de UID 500. No obstante, si el usuario bob inicia una sesi�n en el servidor de archivos (o en otro computador), y la cuenta de bob tambi�n tiene un UID de 500, bob tendr� acceso completo a los archivos de juan y viceversa.

Por lo tanto, se deben evitar las colisiones de UID y GID a toda costa.

Hay dos instancias donde el valor num�rico real de un UID o GID tiene un significado espec�fico. El UID o GID de cero (0) se utiliza para el usuario root y se tratan de forma especial por Red Hat Enterprise Linux — autom�ticamente se le otorga acceso completo.

La segunda situaci�n es que los UIDs y los GIDs por debajo de 500 se reservan para el uso del sistema. A diferencia de UID/GID cero (0), los UIDs y GIDs por debajo de 500 no son tratados de forma especial por Red Hat Enterprise Linux. Sin embargo, estos UIDs/GIDs nunca son asignados a un usuario, pues es posible que algunos componentes de sistemas utilicen o utilizaran alguno de estos UIDs/GIDs en alg�n momento. Para m�s informaci�n sobre estos usuarios y grupos est�ndar, consulte el cap�tulo llamado Usuarios y Grupos en el Manual de referencia de Red Hat Enterprise Linux.

Cuando se a�aden nuevas cuentas de usuario usando las herramientas est�ndar de Red Hat Enterprise Linux, a las nuevas cuentas de usuario se les asigna el primer UID y GID disponible comenzando por 500. La pr�xima cuenta de usuario se le asignar� un UID/GID de 501, seguido de UID/GID 502 y as� sucesivamente.

M�s adelante en este cap�tulo se hace una breve descripci�n de las herramientas disponibles bajo Red Hat Enterprise Linux para la creaci�n de usuarios. Pero antes de revisar estas herramientas, la secci�n siguiente revisa los archivos que Red Hat Enterprise Linux utiliza para definir cuentas y grupos del sistema.

6.3.2. Archivos que controlan Cuentas de Usuarios y Grupos

En Red Hat Enterprise Linux la informaci�n sobre cuentas de usuarios y grupos es almacenada en varios archivos de texto dentro del directorio /etc/. Cuando un administrador del sistema crea una nueva cuenta de usuario, estos archivos deben ser editados manualmente o se deben usar las aplicaciones para hacer los cambios necesarios.

La secci�n siguiente documenta los archivos en el directorio /etc/ que almacenan informaci�n de usuarios y grupos bajo Red Hat Enterprise Linux.

6.3.2.1. /etc/passwd

El archivo /etc/passwd es un archivo legible por todo el mundo y contiene y una lista de usuarios, cada uno en una l�nea separada. En cada l�nea hay una lista delimitada por dos puntos (:) conteniendo la informaci�n siguiente:

  • Nombre de usuario — El nombre que el usuario escribe cuando se conecta al sistema.

  • Contrase�a — Contiene la contrase�a encriptada (o una x si se utilizan contrase�as shadow - m�s detalles sobre esto enseguida).

  • ID del usuario (UID) — El equivalente num�rico del nombre de usuario el cual es referenciado por el sistema y las aplicaciones cuando se determinan los privilegios de acceso.

  • ID de Grupo (GID) — El equivalente num�rico del nombre principal de grupo que utiliza el sistema y las aplicaciones para referenciar el grupo cuando se determinan los privilegios de acceso.

  • GECOS — Nombrado por razones hist�ricas, el campo GECOS[1] es opcional y se utiliza para almacenar informaci�n adicional (tal como el nombre completo del usuario). Se pueden almacenar m�ltiples entradas en este campo, en una lista limitada por comas. Las utilidades como finger acceden a este comando para proporcionar informaci�n adicional del usuario.

  • Directorio principal — La ruta absoluta al directorio principal del usuario, tal como /home/juan/.

  • Shell — El programa lanzado autom�ticamente cada vez que un usuario se conecta. Usualmente es un int�rprete de comandos (a menudo llamado shell). Bajo Red Hat Enterprise Linux, el valor por defecto es /bin/bash. Si se deja este campo en blanco, se utilizar� /bin/sh. Si se deja a un archivo que no existe, entonces el usuario no podr� conectarse al sistema.

He aqu� un ejemplo de una entrada en /etc/passwd:

root:x:0:0:root:/root:/bin/bash

Esta l�nea muestra que el usuario root tiene una contrase�a shadow, as� como tambi�n un UID y GID de 0. El usuario root tiene /root/ como directorio principal y utiliza /bin/bash como int�rprete de comandos.

Para m�s informaci�n sobre /etc/passwd, consulte la p�gina man de passwd(5).

6.3.2.2. /etc/shadow

Debido a que el archivo /etc/passwd debe ser legible por todo el mundo (la raz�n principal es que este archivo se utiliza para llevar a cabo la traducci�n del UID al nombre de usuario), hay un riesgo relacionado en almacenar las contrase�a de todo el mundo en /etc/passwd. Cierto, las contrase�as estan encriptadas. Sin embargo, es posible realizar ataques contra contrase�as si las contrase�as encriptada est�n disponibles.

Si un atacante puede obtener una copia de /etc/passwd, este puede llevar a cabo un ataque en secreto. En vez de arriesgar la detecci�n teniendo que intentar un inicio de sesi�n con cada contrase�a potencial generada por un descifrador de contrase�as, el atacante puede utilizar un descifrador de contrase�as de la forma siguiente:

  • Un descifrador de contrase�as genera una contrase�a potencial

  • Cada contrase�a potencial es encriptada utilizando el mismo algoritmo que utiliza el sistema

  • La contrase�a potencial encriptada es comparada con las contrase�as encriptadas en /etc/passwd

El aspecto m�s peligroso de este ataque es que puede ocurrir en un sistema muy lejos de su organizaci�n. Debido a esto, el atacante puede utilizar hardware con el m�s alto rendimiento disponible, haciendo posible pasar a trav�s de n�meros masivos de contrase�as r�pidamente.

Por esta raz�n, el archivo /etc/shadow solamente est� disponible por el usuario root y contiene contrase�as (e informaci�n opcional de caducidad) para cada usuario. Como en el archivo /etc/passwd, cada informaci�n de usuario est� en una l�nea separada. Cada una de estas l�neas es una lista delimitada por dos puntos (:) incluyendo la informaci�n siguiente:

  • Nombre de usuario — El nombre que el usuario escribe cuando se conecta al sistema. Esto permite que la aplicaci�n login de inicio de sesi�n, recupere la contrase�a del usuario (y la informaci�n relacionada).

  • Contrase�a encriptada — La contrase�a encriptada con 13 a 24 car�cteres. La contrase�a es encriptada usando bien sea la biblioteca de funciones crypt(3) o el algoritmo de hash md5. En este campo, los valores diferentes a una contrase�a encriptada o en hash, se utilizan para controlar la conexi�n del usuario y para mostrar el status de la contrase�a. Por ejemplo, si el valor es ! o *, la cuenta es bloqueada y al usuario no se le permite conectarse. Si el valor es !!, nunca se ha establecido una contrase�a (y el usuario, como no ha establecido una contrase�a, no se podr� conectar).

  • Ultima fecha en que se cambi� la contrase�a — El n�mero de d�as desde el 1 de enero, 1970 (tambi�n conocido como epoch) en que la fecha fue modificada. Esta informaci�n es utilizada en conjunto con los campos de caducidad de la contrase�a.

  • N�mero de d�as antes de que la contrase�a debe ser modificada — El n�mero m�nimo de d�as que deben pasar antes de que la contrase�a se pueda cambiar.

  • N�mero de d�as antes de que se requiera un cambio de contrase�a — El n�mero de d�as que deben pasar antes de que se deba cambiar la contrase�a.

  • N�mero de d�as de advertencia antes de cambiar la contrase�a — El n�mero de d�as antes que el usuario es notificado de que la contrase�a v� a expirar.

  • N�mero de d�as antes de desactivar la contrase�a — El n�mero de d�as despu�s que una contrase�a expira antes de desactivar la cuenta.

  • Fecha desde que la cuenta fue desactivada — La fecha (almacenada como el n�mero de d�as desde epoch) desde que la cuenta del usuario ha sido desactivada.

  • Un campo reservado — Un campo que es ignorado en Red Hat Enterprise Linux.

He aqu� un ejemplo de una l�nea de /etc/shadow:

juan:$1$.QKDPc5E$SWlkjRWexrXYgc98F.:12825:0:90:5:30:13096:

Esta l�nea muestra la informaci�n siguiente para el usuario juan:

  • La �ltima vez que se cambi� la contrase�a fue el 11 de febrero, 2005

  • No hay in m�nimo de tiempo requerido antes de que la contrase�a debe ser cambiada

  • La contrase�a se debe modificar cada 90 d�as

  • El usuario recibir� una notificaci�n cinco d�as antes de que la contrase�a deba ser modificada

  • La cuenta ser� desactivada 30 d�as despu�s que expire la contrase�a si no se realiza ninguna conexi�n

  • La cuenta caduca el 9 de noviembre del 2005

Para m�s informaci�n sobre el archivo /etc/shadow, consulte la p�gina man shadow(5).

6.3.2.3. /etc/group

El archivo /etc/group es un archivo legible por todo el mundo y contiene una lista de los grupos, cada uno en una l�nea separada. Cada l�nea es una lista de cuatro campos, delimitados por dos puntos (:) que incluye la informaci�n siguiente:

  • Nombre del grupo — El nombre del grupo. Utilizado por varios programas de utilidades como un identificador legible para el grupo.

  • Contrase�a de grupo — Si se configura, esto permite a los usuarios que no forman parte del grupo a unirse a el usando el comando newgrp y escribiendo la contrase�a almacenada aqu�. Si hay una x min�scula en este campo, entonces se est�n usando contrase�as shadow.

  • ID del grupo (GID) — El equivalente num�rico del nombre del grupo. Lo utilizan el sistema operativo y las aplicaciones para determinar los privilegios de acceso.

  • Lista de miembros — Una lista delimitada por comas de los usuarios que pertenecen al grupo.

He aqu� una l�nea de ejemplo de /etc/group:

general:x:502:juan,shelley,bob

Esta l�nea muestra que el grupo general est� utilizando contrase�as shadow, tiene un GID de 502, y que juan, shelley y bob son miembros.

Para m�s informaci�n sobre /etc/group, consulte la p�gina man de group(5).

6.3.2.4. /etc/gshadow

El archivo /etc/gshadow es un archivo legible solamente por el usuario root y contiene las contrase�as encriptadas para cada grupo, as� como tambi�n informaci�n de los miembros del grupo y de administraci�n. De la misma forma que en el archivo /etc/group, cada informaci�n de grupos est� en una l�nea separada. Cada una de estas l�neas es una lista delimitada por s�mbolos de dos puntos (:) incluyendo la informaci�n siguiente:

  • Nombre del grupo — El nombre del grupo. Utilizado por varios programas de utilidades como un identificador legible para el grupo.

  • Contrase�a encriptada — La contrase�a encriptada para el grupo. Si est� configurada, los que no sean miembros del grupo pueden unirse a este escribiendo la contrase�a para ese grupo usando el comando newgrp. Si el valor de este campo es !, entonces ning�n usuario tiene acceso al grupo usando el comando newgrp. Un valor de !! se trata de la misma forma que un valor de ! — sin embargo, tambi�n indica que nunca se ha establecido una contrase�a para el grupo. Si el valor en nulo, solamente los miembros del grupo pueden conectarse al grupo.

  • Administradores del grupo — Los miembros del grupo listados aqu� (en una lista delimitada por comas) pueden a�adir o eliminar miembros del grupo usando el comando gpasswd.

  • Miembros del grupo — Los miembros del grupo listados aqu� (en una lista delimitada por comas), son miembros normales, no administrativos, del grupo.

He aqu� una l�nea de ejemplo de /etc/gshadow:

general:!!:shelley:juan,bob

Esta l�nea muestra que el grupo general no tiene contrase�a y no permite a los no miembros a unirse al grupo usando newgrp. Adem�s, shelley es el administrador del grupo y juan y bob son miembros normales, no administrativos.

Puesto que la edici�n manual de estos archivos incrementa las posibilidades de errores sint�cticos, se recomienda que se utilicen las aplicaciones suministradas con Red Hat Enterprise Linux para este prop�sito. La secci�n siguiente revisa las herramientas principales para realizar estas tareas.

6.3.3. Aplicaciones para Cuentas de Usuarios y Grupos

Hay dos tipos b�sicos de aplicaciones que se pueden utilizar cuando se administran cuentas de usuarios y grupos en sistemas Red Hat Enterprise Linux:

  • La aplicaci�n gr�fica Administrador de usuarios

  • Un conjunto de herramientas de l�nea de comandos

Para ver las instrucciones detalladas sobre el uso de Administrador de usuarios, revise el cap�tulo llamado Configuraci�n de Usuarios y Grupos en el Manual de administraci�n del sistema de Red Hat Enterprise Linux.

Mientras que tanto la aplicaci�n Administrador de usuarios y las utilidades de l�nea de comandos esencialmente ejecutan la misma tarea, las herramientas de l�nea de comandos tienen la ventaja de ser de tipo script y por lo tanto m�s f�ciles de automatizar.

La tabla siguiente describe algunas de las herramientas de l�nea de comandos m�s utilizadas para crear y administrar cuentas de usuarios y grupos:

Aplicaci�nFunci�n
/usr/sbin/useraddA�ade cuentas de usuarios. Esta herramienta tambi�n es utilizada para especificar membrecias primaria y secundarias a grupos.
/usr/sbin/userdelElimina cuentas de usuarios.
/usr/sbin/usermodModifica los atributos de las cuentas incluyendo algunas funciones relacionadas a la expiraci�n de contrase�as. Para un control m�s refinado, utilice el comando passwd. Tambi�n se utiliza usermod para especificar membrecias de grupos primaria y secundaria.
passwdConfigura una contrase�a. Aunque se utiliza principalmente para modificar la contrase�a de un usuario, esta tambi�n puede controlar todos los aspectos de la expiraci�n de contrase�as.
/usr/sbin/chpasswdLee un archivo que consiste de pares de nombres de usuarios y contrase�as, y actualiza cada contrase�a de usuario de acuerdo a este.
chageCambia las pol�ticas de envejecimiento de contrase�as. Tambi�n se puede utilizar el comando passwd para este prop�sito.
chfnCambia la informaci�n GECOS de un usuario.
chshCambia el int�rprete de comandos por defecto de un usuario.

Tabla 6-2. Herramientas de l�nea de comandos para la Administraci�n de Usuarios

La tabla siguiente describe algunas de las herramientas de l�nea de comandos m�s comunes utilizadas para crear u administrar grupos:

Aplicaci�nFunci�n
/usr/sbin/groupaddA�ade grupos, pero no asigna usuarios a estos grupos. Se deben utilizar los programas useradd y usermod para asignar usuarios a un grupo dado.
/usr/sbin/groupdelElimina grupos.
/usr/sbin/groupmodModifica nombres de grupos o GIDs, pero no cambia la membrecia del grupo. Se tiene que utilizar useradd y usermod para asignar usuarios a un grupo determinado.
gpasswdCambia la membrecia de un grupo y configura contrase�as para permitir a los usuarios que no sean miembro que conocen la contrase�a, unirse al grupo. Tambi�n se utiliza para especificar administradores de grupos.
/usr/sbin/grpckVerifica la integridad de los archivos /etc/group y /etc/gshadow.

Tabla 6-3. Herramientas de l�nea de comandos para Administrar Grupos

Las herramientas listadas proporcionan gran flexibilidad a los administradores de sistemas para controlar todos los aspectos de las cuentas de usuarios y grupos. Para conocer a�n m�s sobre su funcionamiento, consulte sus p�ginas del manual.

Sin embargo, estas aplicaciones no determinan sobre qu� recursos estos usuarios y grupos tienen control. Para esto, el administrador del sistema debe utilizar aplicaciones de permisos de archivos.

6.3.3.1. Aplicaciones de Permisos de Archivos

Los permisos de archivos son una parte integral del manejo de recursos dentro de una organizaci�n. La tabla siguiente describe algunas de las herramientas de l�nea de comandos m�s comunes para este prop�sito.

Aplicaci�nFunci�n
chgrpCambia el grupo que posee un archivo.
chmodCambia los permisos de acceso para un archivo dado. Es capaz de asignar permisos especiales.
chownCambia la propiedad de un archivo (y tambi�n puede cambiar el grupo).

Tabla 6-4. Herramientas de l�nea de comandos para la Administraci�n de Permisos

Tambi�n es posible alterar estos atributos en los entornos gr�ficos GNOME y KDE. Pulse con el bot�n derecho sobre el �cono de un archivo (por ejemplo, mientras se muestra el �cono en un administrador de archivos gr�fico o en el escritorio), y seleccione Propiedades.

Notas

[1]

GECOS viene de General Electric Comprehensive Operating Supervisor. Este campo fue utilizado en Bell Labs, en la implementaci�n original de UNIX. El laboratorio tenia muchas computadoras diferentes, incluyendo una ejecutando GECOS. Este campo se utiliz� para almacenar informaci�n cuando el sistema UNIX enviaba trabajos por lotes o de impresi�n al sistema GECOS.

 
 
  Published under the terms of the GNU General Public License Design by Interspire