42
Linux 1 Linux RHC030 Modulo Usuarios y Grupos Relator : Carlos Villanueva

Linux1 Linux RHC030 Modulo Usuarios y Grupos Relator : Carlos Villanueva

Embed Size (px)

Citation preview

Page 1: Linux1 Linux RHC030 Modulo Usuarios y Grupos Relator : Carlos Villanueva

Linux 1

Linux RHC030

Modulo Usuarios y Grupos

Relator : Carlos Villanueva

Page 2: Linux1 Linux RHC030 Modulo Usuarios y Grupos Relator : Carlos Villanueva

2© 2007 Linux. Todos los derechos reservados.

Unidad 3 – Usuarios y Grupos

Usuarios Linux y el archivo /etc/passwd

Grupos Linux y el archivo /etc/group

Examinando Información de Usuario

Cambio de Identidad

Page 3: Linux1 Linux RHC030 Modulo Usuarios y Grupos Relator : Carlos Villanueva

3© 2007 Linux. Todos los derechos reservados.

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.

Usuarios de Linux y el archivo /etc/passwd

Page 4: Linux1 Linux RHC030 Modulo Usuarios y Grupos Relator : Carlos Villanueva

4© 2007 Linux. Todos los derechos reservados.

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

Page 5: Linux1 Linux RHC030 Modulo Usuarios y Grupos Relator : Carlos Villanueva

5© 2007 Linux. Todos los derechos reservados.

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

Page 6: Linux1 Linux RHC030 Modulo Usuarios y Grupos Relator : Carlos Villanueva

6© 2007 Linux. Todos los derechos reservados.

Archivo /etc/passwd

El archivo /etc/passwdEl archivo de texto /etc/passwd contiene nombres de usuario y sus correspondientes userids y alguna otra información.

Page 7: Linux1 Linux RHC030 Modulo Usuarios y Grupos Relator : Carlos Villanueva

7© 2007 Linux. Todos los derechos reservados.

Archivo /etc/passwd

Page 8: Linux1 Linux RHC030 Modulo Usuarios y Grupos Relator : Carlos Villanueva

8© 2007 Linux. Todos los derechos reservados.

Archivo /etc/passwd

El archivo /etc/passwdEl archivo de texto /etc/passwd contiene nombres de usuario y sus correspondientes userids y alguna otra información.

Page 9: Linux1 Linux RHC030 Modulo Usuarios y Grupos Relator : Carlos Villanueva

9© 2007 Linux. Todos los derechos reservados.

Archivo /etc/passwd

Page 10: Linux1 Linux RHC030 Modulo Usuarios y Grupos Relator : Carlos Villanueva

10© 2007 Linux. Todos los derechos reservados.

Reglas a tener en cuentaEl UID de cuenta 0, pertenece al administrador (root), por debajo de UID 500 esta reservado para el sistema y por encima de UID 500 para los usuarios del sistema.

No hace falta decir que solo el administrador del sistema tiene que tener ID's 0 en estos dos campos. Lo contrario significaría estar dando permisos de administración (root) a otra cuenta.

Lo único que identifica a una cuenta root del resto es una identificación UID igual a 0. Podemos tener por ejemplo una cuenta llamada "pepito" pero con UID igual a 0, esta cuenta tendría permisos de administrador (root) y muchos programas que hacen referencia al nombre de la cuenta (ej: who, w, etc) no nos darían información sobre que la cuenta "pepito" tiene permisos de root.

Esto es lo primero que un hacker suele hacer para instalar una puerta trasera en un sistema.

Page 11: Linux1 Linux RHC030 Modulo Usuarios y Grupos Relator : Carlos Villanueva

11© 2007 Linux. Todos los derechos reservados.

Las contraseñas y el archivo /etc/shadow. Exponer la forma encriptada de su contraseña en el

archivo /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.

Page 12: Linux1 Linux RHC030 Modulo Usuarios y Grupos Relator : Carlos Villanueva

12© 2007 Linux. Todos los derechos reservados.

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– Habitualmente 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.

Page 13: Linux1 Linux RHC030 Modulo Usuarios y Grupos Relator : Carlos Villanueva

13© 2007 Linux. Todos los derechos reservados.

Ids de usuarios de Red Hat Enterprise Linux

Page 14: Linux1 Linux RHC030 Modulo Usuarios y Grupos Relator : Carlos Villanueva

14© 2007 Linux. Todos los derechos reservados.

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/group asigna 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.

Page 15: Linux1 Linux RHC030 Modulo Usuarios y Grupos Relator : Carlos Villanueva

15© 2007 Linux. Todos los derechos reservados.

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.

Page 16: Linux1 Linux RHC030 Modulo Usuarios y Grupos Relator : Carlos Villanueva

16© 2007 Linux. Todos los derechos reservados.

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.

Page 17: Linux1 Linux RHC030 Modulo Usuarios y Grupos Relator : Carlos Villanueva

17© 2007 Linux. Todos los derechos reservados.

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:

Page 18: Linux1 Linux RHC030 Modulo Usuarios y Grupos Relator : Carlos Villanueva

18© 2007 Linux. Todos los derechos reservados.

Archivo /etc/group

Page 19: Linux1 Linux RHC030 Modulo Usuarios y Grupos Relator : Carlos Villanueva

19© 2007 Linux. Todos los derechos reservados.

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.

Page 20: Linux1 Linux RHC030 Modulo Usuarios y Grupos Relator : Carlos Villanueva

20© 2007 Linux. Todos los derechos reservados.

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.

Page 21: Linux1 Linux RHC030 Modulo Usuarios y Grupos Relator : Carlos Villanueva

21© 2007 Linux. Todos los derechos reservados.

Examinando Información de Usuarios

Conceptos Claves– El comando id 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.

Page 22: Linux1 Linux RHC030 Modulo Usuarios y Grupos Relator : Carlos Villanueva

22© 2007 Linux. Todos los derechos reservados.

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.

Page 23: Linux1 Linux RHC030 Modulo Usuarios y Grupos Relator : Carlos Villanueva

23© 2007 Linux. Todos los derechos reservados.

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.

Page 24: Linux1 Linux RHC030 Modulo Usuarios y Grupos Relator : Carlos Villanueva

24© 2007 Linux. Todos los derechos reservados.

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.

Page 25: Linux1 Linux RHC030 Modulo Usuarios y Grupos Relator : Carlos Villanueva

25© 2007 Linux. Todos los derechos reservados.

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.

Page 26: Linux1 Linux RHC030 Modulo Usuarios y Grupos Relator : Carlos Villanueva

26© 2007 Linux. Todos los derechos reservados.

¿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.

Page 27: Linux1 Linux RHC030 Modulo Usuarios y Grupos Relator : Carlos Villanueva

27© 2007 Linux. Todos los derechos reservados.

¿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:

Page 28: Linux1 Linux RHC030 Modulo Usuarios y Grupos Relator : Carlos Villanueva

28© 2007 Linux. Todos los derechos reservados.

¿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.

Page 29: Linux1 Linux RHC030 Modulo Usuarios y Grupos Relator : Carlos Villanueva

29© 2007 Linux. Todos los derechos reservados.

¿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.

Page 30: Linux1 Linux RHC030 Modulo Usuarios y Grupos Relator : Carlos Villanueva

30© 2007 Linux. Todos los derechos reservados.

Revisión de usuarios: el comando finger. El comando finger se 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 ...]

Page 31: Linux1 Linux RHC030 Modulo Usuarios y Grupos Relator : Carlos Villanueva

31© 2007 Linux. Todos los derechos reservados.

El comando finger

A manera de ejemplo, el usuario elvis usa el comando finger para ver quién está en el sistema.

Page 32: Linux1 Linux RHC030 Modulo Usuarios y Grupos Relator : Carlos Villanueva

32© 2007 Linux. Todos los derechos reservados.

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.

Page 33: Linux1 Linux RHC030 Modulo Usuarios y Grupos Relator : Carlos Villanueva

33© 2007 Linux. Todos los derechos reservados.

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.

Page 34: Linux1 Linux RHC030 Modulo Usuarios y Grupos Relator : Carlos Villanueva

34© 2007 Linux. Todos los derechos reservados.

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 de grupo primario.

Page 35: Linux1 Linux RHC030 Modulo Usuarios y Grupos Relator : Carlos Villanueva

35© 2007 Linux. Todos los derechos reservados.

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]]

Page 36: Linux1 Linux RHC030 Modulo Usuarios y Grupos Relator : Carlos Villanueva

36© 2007 Linux. Todos los derechos reservados.

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.

Page 37: Linux1 Linux RHC030 Modulo Usuarios y Grupos Relator : Carlos Villanueva

37© 2007 Linux. Todos los derechos reservados.

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.

Page 38: Linux1 Linux RHC030 Modulo Usuarios y Grupos Relator : Carlos Villanueva

38© 2007 Linux. Todos los derechos reservados.

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.

Page 39: Linux1 Linux RHC030 Modulo Usuarios y Grupos Relator : Carlos Villanueva

39© 2007 Linux. Todos los derechos reservados.

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 grupoprimario de prince como "music".

2. El archivo biz, creado cuando el grupo primario de prince era music, es propiedad del grupo music.

Page 40: Linux1 Linux RHC030 Modulo Usuarios y Grupos Relator : Carlos Villanueva

40© 2007 Linux. Todos los derechos reservados.

Cambio de grupo primario con el comando newgrp

Page 41: Linux1 Linux RHC030 Modulo Usuarios y Grupos Relator : Carlos Villanueva

41© 2007 Linux. Todos los derechos reservados.

Page 42: Linux1 Linux RHC030 Modulo Usuarios y Grupos Relator : Carlos Villanueva

42© 2007 Linux. Todos los derechos reservados.

Para averiguar cuentas con nombre diferente de root, pero permisos de root existen programas, pero a falta de uno podemos utilizar el siguiente comando:

awk -F: '{if ($3==0) print $1}' /etc/passwd