2. Usuarios y Grupos en Linux
Linux es un sistema operativo multiusuario y multitarea, esto es, que más de
un usuario puede trabajar en el sistema de forma simultánea con otros,
ejecutando una o más tareas a la vez.
Cuando se ingresa al sistema, es necesario que se identifique con un login y
una contraseña, el login es un nombre que identifica de forma única al usuario.
La contraseña debe ser una combinación de letras, números y caracteres
especiales.
El sistema de contraseñas en Linux es de tipo unidireccional. Esto quiere decir
que nuestra contraseña no es almacenada como texto, sino que es cifrada y
guardada tal como es. Cuando entramos en el sistema y escribimos nuestra
contraseña, ésta es cifrada y comparada con la que está almacenada. Si
coinciden, la identificación es positiva, si no coinciden, no hay identificación.
Actualmente, en los sistemas GNU/Linux se puede escoger dos tipos de cifrado
posibles para las contraseñas de usuario: 3DES que se viene usando desde los
inicios de UNIX, tiene el inconveniente que sólo permite contraseñas de 8
caracteres, si se escriben mas se ignoran, el otro tipo es MD5 con el que
podemos usar contraseñas de la longitud que deseamos, por seguridad se
recomienda utilizar el tipo MD5.
Los grupos son siempre expresiones lógicas de organización, reuniendo
usuarios para un propósito común. Los usuarios dentro de un mismo grupo
pueden leer, escribir o ejecutar archivos que pertenecen al grupo.
3. Usuarios de Linux y el archivo /etc/passwd
• Conceptos Claves
• A un nivel inferior los usuarios son representados por un
número entero llamado Id del usuario (uid).
• Cada proceso que se desarrolla en el sistema se ejecuta
como un uid dado
• Cada archivo en el sistema de archivos es propiedad de un
uid
• El archivo /etc/passwd asigna los uids a las cuentas de
usuario.
• Las cuentas de usuarios asignan los uids al nombre del
usuario, contraseña, Id de Grupo (s), directorio de inicio y
shell de inicio.
• La contraseña se puede cambiar con el comando passwd.
4. Los usuarios de Linux y el archivo
/etc/passwd.
En Linux, usted primero se identifica al entrar con un
nombre particular de usuario nombre de usuario.
Cada proceso que se ejecuta en el sistema tiene un
nombre de usuario asociado.
El username, está asociado con las cosas que usted
hace, grabe o use.
Cada usuario en el sistema tiene un unico userid (uid)
Linux rastrea los userids como un número entero de
32bits
5. Los usuarios de Linux y el archivo
/etc/passwd.
El sistema mantiene una base de datos que asigna los
nombres de usuarios a los userids.
Esta base de datos se almacena en el archivo de
configuración /etc/passwd
[elvis@station elvis]$ tail /etc/passwd
apache:x:48:48:Apache:/var/www:/bin/bash
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
elvis:x:501:501::/home/elvis:/bin/bash
6. Archivo /etc/passwd
El archivo /etc/passwd
El archivo de texto /etc/passwd contiene nombres de usuario y
sus correspondientes userids y alguna otra información.
8. Las contraseñas y el archivo /etc/shadow.
Exponer la forma encriptada de su contraseña es
peligroso en /etc/passwd es peligroso.
Linux y Unix almacenan las contraseñas utilizando una
nueva técnica llamada "Shadow Passwords"
El archivo contiene sólo información relacionada con las
contraseñas,
Sus permisos no permiten ver su contenido.
9. Tipos de Usuarios
Usuarios Normales
– Usuarios normales representan gente real que utiliza el sistema,
– Tienen un /bin/bash como shell de inicio de sesión.
– un directorio de inicio dentro del directorio /home.
– En RHE Linux, los usuarios normales tienen uids mayores a 500.
Usuario root
– Habituaslmente es llamado el superusuario.
– El usuario root es el usuario rey del systema
– uid 0 es reservado para el usuario root
Usuarios del Systema
–Los usuarios del sistema no representan gente, sino componentes del
sistema.
–En RHE Linux, los usuarios del sistema tienen uids que van de 1 a 499.
11. Los grupos Linux y el archivo/etc/group.
Conceptos Claves
• Básicamente, un grupo es solo un group id (gid) de un
número entero
• Cada proceso que se ejecuta en el sistema opera bajo una
colección de grupos (gids).
• El archivo /etc/groupasigna gids a nombres y a
membresías de grupo.
• Cada archivo en el sistema de archivos pertenece a un
solo gid.
• Los usuarios tienen un solo grupo primario definido en el
archivo /etc/passwd.
• Los usuarios pueden ser miembros de múltiples grupos
secundarios definidos en el archivo /etc/groups.
12. Grupos de Linux
Cada proceso se ejecuta bajo el contexto de un usuario
dado.
Los usuarios, los procesos que estos operan y los
archivos que poseen, pertenecen a la colección de
grupos
Las membresías de grupo le permiten a los
administradores de sistemas manejar eficientemente las
colecciones de los usuarios que tienen objetivos
similares.
Cada usuario es miembro de un grupo primario.
13. El archivo /etc/group
Para el kernel de Linux, un grupo es nombrado usando
un id de grupo (GID) de 32 bits
El archivo /etc/group asocia nombres de grupo con GIDs
(para humanos).
Define los usuarios que pertenecen a cada grupo.
14. El archivo /etc/group
Examine su archivo /etc/group
wrestle:x:201:ventura,hogan,elvis
physics:x:202:einstein,maxwell,elvis
emperors:x:203:nero,julius,elvis
governor:x:204:ventura,pataki
music:x:205:elvis,blondie,prince,madonna
dwarfs:x:206:sleepy,grumpy,doc elvis:x:501:
prince:x:502: madonna:x:504: blondie:x:505:
16. Grupos primarios y secundarios
Debido a que cada archivo debe tener un grupo
propietario, debe haber un grupo por defecto asociado
con cada usuario.
Este grupo por defecto se convierte en el propietario del
grupo de los archivos recién creados
Este grupo se conoce como el grupo primario del usuario.
Un grupo primario de usuario se define en el cuarto campo
de una entrada de usuario /etc/passwd.
Usuarios pueden optar también por pertenecer a otros
grupos.
Estos grupos se llaman grupos secundarios
Están definidos en el cuarto campo del archivo /etc/group
file.
17. Cambio de mis membresías de grupo
Únicamente el usuario administrativo root, puede
cambiar las membresías de grupo.
Usando el comando usermod y groupmod.
O la utilidad gráfica system-config-users
El uso de estos comandos se verá en otro curso.
18. Examinando Información de Usuarios
Conceptos Claves
El comandoid muestra la información del grupo y del usuario.
El comando whoami informa el nombre del usuario actual.
Los comandos who, users, y w informan sobre usuarios con
sesiones activas.
El comando finger reporta la última vez que los usuarios
entraron al sistema y otra información adicional.
19. Identificacion de usuarios: el comando id.
Los usuarios suelen utilizar el comando id para determinar
la información sobre un usuario.
id [-g | -G | -u] [-n] [USERNAME]
Escribe información para el NOMBRE DE USUARIO o el
usuario actual.
20. El comando id.
Si se llama sin argumentos, el comando id entrega un
resumen de membresías de grupo para el usuario que lo
ejecuta.
Si está provisto del nombre de usuario, el comando id
entrega información del grupo para ese usuario específico.
21. El comando id.
Ejemplos,
Si un usuario solo quizo saber el id del grupo primario de un
usuario, el comando podría ser invocado con la opción -g.
Si el usuario quizo conocer el nombre del grupo en lugar del
número, la opción -n también podría especificarse.
De la misma manera, la opción -G reportará todos los grupos ,
no sólo el grupo primario.
22. El comando whoami
El comando whoami simplemente entrega el nombre
del usuario actual.
En Red Hat Enterprise Linux, muy pocas veces hay la
necesidad de usar el comando whoami, porque el
intérprete de comandos por defecto bash presenta de
inmediato el nombre de usuario del usuario actual.
23. ¿Quién tiene una sesión abierta? Los
comandos users, w y who.
Si un usuario quisiera saber quién más está usando una
máquina Linux o Unix en particular. Red Hat Enterprise
Linux, provee tres comandos que reportan los usuarios
actuales, cada uno con un nivel diferente de detalle.
El más sencillo de estos es el comando users.
users
Hace una lista sencilla de quienes están conectados al
sistema.
24. ¿Quién tiene una sesión abierta? Los
comandos users, w y who.
w [[-h] | [-s] | [-f]] [NOMBRE DE USUARIO]
Escribe información detallada de quien está actualmente conectado o
para el usuario USERNAME, si es dado.
Al igual que el comando users, el comando w lista los usuarios que
están conectados en el sistema, pero provee mucha más información
detallada como lo demuestra el usuario elvis:
25. ¿Quién tiene una sesión abierta? Los
comandos users, w y who.
La línea superior da la información resumida: el tiempo
actual, el tiempo en días, horas y minutos que la máquina
ha estado funcionando sin interrupciones, el número de
usuarios y el promedio actual de carga (como un promedio
de 1.5 y 15 minutos) para la máquina.
26. ¿Quién tiene una sesión abierta? Los
comandos users, w y who.
• El último de estos tres comandos similares, who,también
provee información detallada acerca de quién está conectado
en el momento. Si se llama sin argumentos, se comporta de una
manera similar al comando w.
27. Revisión de usuarios: el comando finger.
El comando fingerse puede utilizar para "chequear" al
usuario, no sólo para ver si está conectado, sino también
si ha leído su correo y la hora en que inició la sesión,
entre otras cosas.
finger [-s | -l | -p] [USER ...] [USER@HOST ...]
28. El comando finger
A manera de ejemplo, el usuario elvis usa el comando
finger para ver quién está en el sistema.
29. El comando finger
Sin argumentos el comando finger actúa de manera
muy parecida al comando who, dando información
sumaria incluyendo la de la terminal del usuario (Tty), la
hora de inicio y el tiempo de inactividad.
Elvis nota que su amiga blondie no está conectada y
decide buscar más información acerca de ella.
30. Utilización del comando finger en la red.
El comando finger también puede reportar la actividad
de un usuario en máquinas remotas. El usuario elvis
desea ver lo que va a hacer el usuario pataki en la
máquina nimbus.example.com.
31. Cambio de identidad
Conceptos Claves
El comando su le permite a un usuario cambiar el id del usuario.
El comando su, usualmente se llamado con un guión, así como
en su -para especificar que, en efecto, el usuario debería iniciar
la sesión como el nuevo usuario.
El comando newgrp, también llamado sg, permite al usuario
cambiar el id degrupo primario.
32. Cambio de Identidad
A menudo en Linux, a un usuario le gustaría convertirse
temporalmente en otro usuario.
El comando que le permite temporalmente cambiar su id
de usuario se llama su.
su [- | -c | -m, -p | -s, --shell=SHELL] [USER [ARG]]
33. Comando su
Convertirse temporalmente en otro usuario puede ser tan simple como
"su" a ese usuario.
Es necesario que elvis conociera la contraseña de prince.
Para iniciar la sesión como usuario nuevo puede llamar al comando su
con un - (un guión simple). Este especifica que la shell del nuevo usuario
debe ser una shell de inicio.
34. Convertirse en root
Un usuario debe ser root para configurar(o arreglar) una
máquina Linux.
Para convertirse de un usuario normal a un usuario root, el
usuario debe conocer la contraseña de root y usar el comando
"su". Si el comando su se utiliza sin argumentos, éste asume
que el usuario está tratando de convertirse en root.
35. Cambio de grupo primario con el comando
newgrp
Algunas veces, puede que los usuarios quieran convertir
uno de sus grupos secundarios en primario para que los
archivos recién creados, sean propiedad de ese grupo.
El comando newgrp, equivalente al comando llamado sg
hace justamente esto.
newgrp [[GROUP]]
Genera una nueva shell con GROUP como su grupo
primario. Si GROUP no se especifica, utilice el grupo
primario por defecto.
36. Cambio de grupo primario con el comando
newgrp
En la siguiente secuencia de comandos, prince creará un
nuevo archivo, luego utilizará el comando newgrp para
generar una nueva shell con un grupo primario de music.
En la nueva shell, prince creará otro archivo, el cual
pertenecerá al grupo music, prince luego abandonará la
nueva shell.
1. Observe que después
de ejecutar el comando
newgrp, el comando id
está reportando al grupo
primario de prince como
"music".
2. El archivo biz, creado
cuando el grupo primario
de prince era music, es
propiedad del grupo
music.