Está en la página 1de 40

Sistema operativo linux

Administración de usuarios
y grupos

Por: Ing. Edwin Calle Terrazas


CREACIÓN, MODIFICACIÓN Y ELIMINACIÓN DE USUARIOS
Opciones para el comando useradd
-c Comment: Para especificar un comentario o nombre completo del usuario.
-d directory: Para establecer el directorio de trabajo del usuario
-u uid: Establece el identificador del usuario.
-s Para establecer la shell que utilizará el usuario (el shell asignado de
forma predeterminada es el bash)
-o Permite crear una cuenta de usuario con un identificador duplicado
-g Asigna el usuario a un grupo, cuyo grupo es principal.
-G Para establecer otros grupos a los que puede pertenecer el usuario. Los
asigna para formar parte de un grupo secundario

2
-e Establece la fecha de expiración de una cuenta de usuario. Coloca en
format: AAAA/MM/DD
-f Número de días que pasarán después que la contraseña ha caducado hasta
que la cuenta se desactive. (Si se especifica 0, la cuenta se desactiva
inmediatamente después que la contraseña expire. Si se especifica -1, la
cuenta se desactivará después que la contraseña expire)

3
Permite crear el usuario user1
useradd user1

Crea el usuario user2 con el código de usuario 222


useradd -u 222 user2
Crea el usuario user3 indicándole que se guarde todos sus archivos en directorio user3
useradd -d /home/user3 user3
(Si se crea sin usar –d, por defecto crea el directorio del usuario dentro de home con el mismo nombre del usuario)

Crea el usuario user4 asignándole el interprete de comandos (Shell de conexión) bash


useradd -s /bin/bach user4

Crea el usuario bruno indicando el nombre_completo


useradd -c "bruno dias" bruno

Crea el usuario peter con código de usuario 555, nombre completo, que se cree en el
directorio home/peter asignándole el interprete de comandos sh
useradd –u 555 -c “peter parker” -d /home/peter –s /bin/bach peter

Para ver cómo se crean los usuarios, usamos el comando: cat /etc/passwd 4
Creamos el usuario parker con una fecha de expiración
useradd -e 2017-04-15 parker

5
USERMOD
Podemos usar el comando usermod, para modificar las opciones de un usuario
que ya fue creado (tiene las mismas opciones que useradd)
Cambiamos el identificador del usuario user2 a 1212
usermod -u 1212 user2

Cambiamos el identificador del usuario user3 a 1313 y ponemos su nombre completo


usermod -u 1313 -c “usuario 3” user3
Permite bloquear la cuenta
Usermod –L usuario2
Permite desbloquear la cuenta
Usermod –U usuario2

Cambia el nombre del usuario user2 (nombre antiguo) a usuario2 (nuevo nombre)
usermod –l usuario2 user2
Si se le dio el comando anterior, casi seguro también cambiará el nombre del
directorio de inicio que esta el directorio home
usermod -d /home/usuario2 usuario2

Para ver cómo se creó o modificó el usuario: cat /etc/passwd


6
USERDEL
Permite eliminar usuarios. Su formato es #userdel nombreUsuario
Permite borrar el usuario user1
userdel user1

Permite borrar el usuario user2 y su directorio (donde están todos sus


archivos del usuario)
userdel -r user2

Usamos el comando passwd, se usa para asignar o cambiar contraseña a


un usuario, su formato es: #passwd nombreUsuario
Cambia o asigna la contraseña del usuario user3 Para cambiar la contraseña de
cualquier usuario. Se debe estar
passwd user3 logeado como Superusuario

Cambia la contraseña del superusuario root


passwd root (ó también solo: passwd)

Podemos ver las contraseñas a través del comando: cat /etc/shadow


Pero vemos que las contraseñas están encriptadas
7
Chage Modifica los atributos de la contraseña de un usuario.
Su parámetros disponibles son:
-l Muestra la información de un usuario con todos sus atributos.
Ej. chage -l edwin
-d Muestra la fecha del último cambio de contraseña. Si se coloca un número de
días, estable en que la fecha fue cambiada desde 01/ene/1970. Si dice nunca, la
contraseña nunca se cambió.
Ej: chage –l edwin (muestra la fecha del último cambio de contraseña)
Ej: chage -d 0 edwin (obliga el vencimiento inmediato de la contraseña)
Ej: chage –d 5 edwin (muestra 06/ene/1970 en último cambio de contraseña)

-E Permite establecer una fecha de expiración (caducidad) para el usuario


seleccionado.
Ej: chage -E 2017/10/30 edwin (E=expired date)
También se puede usar el número de días transcurridos desde Enero 01, 1970 en lugar de
la fecha. Ej: chage –E número_dias usuario

-R Permite ingresar al directorio de usuario root


8
-I Permite establecer la cantidad de días en que la cuenta será bloqueada
(inactiva) una vez que la contraseña haya expirado. Si el valor es 0, la cuenta no
es bloqueada después que la contraseña ha expirado.
Ej: chage – I 5 usuario (la contraseña se bloquea después de 5 días de haber expirado).

-m Permite definir el número mínimo de días entre los cuales el usuario debe
cambiar su contraseña. Si el valor es 0 la contraseña no caduca.
Ej: chage -m 30 usuario (El usuario debe cambiar su contraseña como días mínimo 30 días)

-M Especifica el número máximo de días durante los cuales la contraseña es


válida. Cuando el número de días especificado por esta opción más el número de
días especificado con la opción -d es menor que el día actual, el usuario debe
cambiar su contraseña antes de usar la cuenta. (Su valor por defecto es 99999)
Ej: chage –M 60 usuario

-W Permite establecer el número de días de aviso para cambiar la contraseña,


antes de que expire.
Ej: chage -W 2 usuario

9
chage -l usuario

10
CREACIÓN DE UNA CUENTA DE TIPO ADMINISTRADOR
Para crear una cuenta de tipo superusuario existen muchas maneras,
veremos dos de ellas. (Se debe estar logeado con el usuario root)

a. Crear el usuario a través del comando:


useradd admin
Este usuario se crea con un identificador de usuario y un identificador de grupo por
defecto (El grupo se crea con el mismo nombre del usuario)

Ingresamos al archivo: vi /etc/passwd


Y modificamos por 0 el identificado del usuario y del grupo

Luego podemos colocar la contraseña a través del comando:


passwd admin

Ing. Edwin Calle Terrazas 11


b. Crear el superusuario a través de una línea de comando:
useradd -u 0 -g 0 -o admin

Permite crear el usuario con un identificador igual a 0, el identificador del grupo


igual a 0. El comando -o permite crear usuarios con identificadores duplicados
(Todos los identificadores de los superusuarios (root) son 0, por tanto se tiene
que duplicar)

Ing. Edwin Calle Terrazas 12


ADMINISTRACIÓN DE USUARIOS

Los archivos involucrados en el mantenimiento de usuarios locales son:


/etc/passwd Cada línea guarda la información de un usuario definido
en el sistema.

/etc/shadow Archivo de acceso restringido que almacena para cada


usuario, las claves encriptadas, así como también información
relacionada con las mismas

/etc/group Cada línea guarda la información de un grupo definido


den el sistema.

/etc/gshadow Archivo de acceso restringido que permite guardar para


cada grupo las claves encriptadas.

13
/etc/passwd
Sintaxis :
usuario:x:uid:gid:comentario:HomeDirectoy:shellDeInicio

Campo Descripción
Usuario Nombre del usuario con el cual entra al sistema
x Campo que indica la contraseña del usuario (en las versiones
anteriores se guardaba la contraseña encriptada)
uid Identificador de usuario
gid Identificador del grupo. En otras palabra es el número del grupo
primario asociado al usuario.
Comentario Comentario breve del usuario
homeDirectory Directorio de trabajo del usuario
Shell de inicio Shell definida para el usuario

cat /etc/passwd

14
/etc/shadow
Sintaxis :
usuario:password:lastchg:min:max:warm:inactive:expire
Campo Descripción
Usuario Nombre del usuario (debe coincidir con el archivo /etc/passwd)
Password Contraseña encriptada
Lastchg Ultima fecha de modificación, tomada en números (último cambio de contraseña)
Min Cuanto debe esperar para permitir cambiar la contraseña al usuario
Max Cada cuanto debe cambiar la contraseña
Warm Cuantos días antes se le informará al usuario que debe cambiar la contraseña.
(Días de caducidad)
Inactive Si vale cero (0), al vencer maxdays y no cambió la contraseña se bloque la
cuenta. Si vale -1, puede ingresar y cambiar la contraseña, se ve como vacío en
la opción por defecto
Expire Cuando expira la cuenta (fecha de caducidad)

cat /etc/shadow
15
/etc/group
Sintaxis :
grupo:x:gid:listaUsuarios
Campo Descripción
grupo Nombre del grupo
x Campo que indica la contraseña del grupo (en las versiones anteriores se
guardaba la contraseña encriptada)
gid Identificador del grupo
listaUsuarios Lista de usuarios que tiene a este grupo como grupo secundario

16
/etc/gshadow
Sintaxis :
grupo:contraseña:administrador:user1,user2…
Campo Descripción
grupo Nombre del grupo
contraseña Campo que indica la contraseña encriptada del grupo
Administrador Administrador del grupo. El root puede colocar a un usuario como
admistrador de un grupo. Sintaxis: gpasswd –A usuario
user1, user2,… Usuarios que están asociados al grupo (los usuarios están separados por
comas)

17
passwd
Al crear un usuario, la cuenta se crear bloqueada, para que el usuario pueda
ingresar el administrador debe asignar la contraseña. Este comando involucra el
archivo /etc/shadow
Opciones Descripción
-d Usuario sin contraseña
-l Bloquea la cuenta
-u Desbloquea la cuenta
-f Fuerza de ser necesario la opción –u desbloquear
-n Tiempo que debe esperar para cambiarla
-x Tiempo máximo que permanecerá válida
-w Tiempo de advertencia
-i Plazo máximo antes de proceder al bloqueo de la cuenta y tras haber expirado
la contraseña
-S Muestra el estado de la contraseña

18
Si observamos la cuenta del usuario peter en el archivo /etc/passwd. Muestra lo siguiente:

19
ADMINISTRACIÓN DE GRUPOS

Parámetros para groupadd y groupmod

Opciones Descripción
-g Asigna o modificar el id del grupo
-o Permite duplicar el identificador del grupo
-n Permite cambiar de nombre del grupo
-r Crea un grupo del sistema con un identificador menor de 500

Comando newgrp
Cambio de grupo. Al ingresar un usuario al sistema tiene predeterminado su grupo
principal. Para cambiarse a uno de sus grupos secundarios.
Sintaxis: newgrp grupoSecundario
Para volver a su grupo primario:
exit

20
Sintaxis para crear un grupo
groupadd nombre_grupo

Sintaxis para eliminar un grupo


Sintaxis: groupdel nombreGrupo

Sintaxis para modificar el nombre de un grupo


groupmod -n nuevo_nombre viejo_nombre

Sintaxis para modificar el identificador de un grupo (el identificador es


un número)
groupmod -g identificador nombre_grupo

Sintaxis para hacer que un usuario pertenezca a varios grupos


usermod –G grupo1, grupo2 nombreUsuario
usermod -g grupo_primario -G grupo2, grupo3,… nombreUsuario

Sintaxis para ver los grupos al cual pertenece un usuario: groups usuario
O estando logeado colocamos: groups
21
Crea el grupo con nombre grupo1
groupadd grupo1

Crear el usuario user2 asinándole al grupo1


useradd -g grupo1 user2
(El grupo1 tiene que estar creado, en caso que user2 ya ha sido asignado en otro grupo, se puede
cambiar de grupo)

Crear el usuario user1 con número de identificador 111 y que pertenezca


al grupo1
useradd -u 111 -c “usuario 1” -g grupo1 user1

Crea el grupo con nombre grupo2


groupadd grupo2

Permite ver los grupos del sistema: cat /etc/group


22
Cambia el nombre del grupo_2 por el nombre grupo2
groupmod -n grupo2 grupo2

Modificar el usuario user2 cambiandolo al grupo2


usermod -g grupo2 user2

Modificar el identificador de usuario, nombre completo, cambiandolo al


grupo1 y cambiando la ubicación de sus archivos al a /home/usuarios
usermod -u 787 -c usuario_2 -g grupo1 -d /home/usuarios user2

Cambiar el identificador del grupo1 a 1001


groupmod -g 1001 grupo1

Permite ver los grupos del sistema: cat /etc/group


23
/etc/login.defs
En el archivo de configuración /etc/login.defs están definidas las variables que
controlan los aspectos de la creación de usuarios y de los campos
de shadow usadas por defecto. Algunos de los aspectos que controlan estas
variables son:
• Número mínimo de días permitidos entre los cambios de contraseña
PASS_MIN_DAYS
• Número máximo de días que una contraseña se puede utiizar
PASS_MAX_DAYS
• El número mínimo de caracteres en la contraseña
PASS_MIN_LEN
• La advertencia de número de días antes de que expire una contraseña
PASS_WARM_AGE
• Valor mínimo para usuarios normales cuando se usa useradd. UID_MIN
• Numero de intentos fallidos de logueo. LOGIN_RETRIES

24
• Registro de inicio de sesión exitosos. LOG_OK_LOGINS
• Tiempo máximo en segundos para el inicio de sesión. LOGIN_TIMEOUT
• Método de escriptación. ENCRIPT_METHOD
• El valor umask por defecto UMASK
• Si el comando useradd debe crear el directorio home por defecto CREATE_HOME

25
26
UMASK
El comando umask, es la abreviatura de user file-creation mode mask. Sirve para
establecer los permisos por defecto que tendrán los nuevos ficheros y directorios que
creemos.
Por defecto se le asignan permisos de lectura y escritura. Los permisos pueden ser
modificados para que se asignen otros permisos distintos a los que vienen por defecto.
Esto se logra mediante el comando umask
Generalmente el valor por defecto es 022 en casi todas las distribuciones de linux.
.
Quizás lo más confuso de umask sea el modo octal que se utiliza para asignar las
mascaras, la forma más sencilla es la siguiente, tenemos que restar el valor de los
archivos menos el valor de la mascara. Valor de los permiso de los archivos
es 666 y 777 para directorios

Archivos:
Valor de la máscara : 666 (valor por defecto que tienen los archivos)
Valor de umask para archivos : 022 (valor umask)
Permisos que queremos asignar : 644 (permisos predeterminados que tendrán
los archivos al comento de crearse)

27
Directorios:
Valor de la máscara : 777
Valor de umask para directorios : 022
Permisos que queremos asignar : 755 (permiso predeterminados que
tendrán los directorios al momento de crearse)

28
/etc/sudoers
Muestra usuarios privilegiados y grupos privilegiados. Así se puede saber que cuentas
son como el root.
Se puede saber que grupos son privilegiados para luego averiguar los usuarios que
pertenecen a dicho grupo.
Sintaxis: cat /etc/sudoers

29
PERMISOS DE
ARCHIVOS y Directorios

Por: Ing. Edwin Calle Terrazas


30
PERMISO DE ARCHIVOS
El sistema de archivos de Linux es uno de los más sólidos, conocido como ext2, ext3 y
desde tiempos recientes su nueva versión ext4. Los permisos a los que da soporte sobre
los archivos son: lectura, escritura, ejecución, además maneja propiedades de un
usuario dueño, grupos y otros (resto de los usuarios), como así también otros estándares
de Unix.
Todas estas características son almacenadas en una tabla que es donde Linux guarda
información administrativa acerca de la: fecha de creación del archivo, modificación, la
fecha en que se cambio y además los datos en los que radica la seguridad del estándar de
Unix: el usuario o dueño del archivo, el grupo del archivo y los permisos.
Los tipos de permisos que se pueden dar a un archivo o directorio son:
r=read (lectura) w=write(escritura) x=execute(ejecución)

Para listar archivos o carpetas, con sus correspondientes permisos se utiliza el comando:
ls -l

31
El primer caracter al extremo izquierdo, representa el tipo de archivo, los posibles
valores para esta posición son los siguientes:

Un guión representa un archivo común (de texto, html, mp3, jpg, etc.)
d=directorio, representa un directorio
l=link, es decir un enlace o acceso directo
b=binario, un archivo generalmente ejecutable,

32
Todos los archivos pertenecen obligatoriamente a un usuario y a un grupo. Cuando
un usuario crea un nuevo archivo, el propietario (dueño) del archivo será el usuario
que lo ha creado y el grupo del archivo será el grupo principal de dicho usuario.

Los permisos solamente pueden ser otorgados a tres tipos o grupos de usuarios.
 Al usuario dueño del archivo
 Al grupo propietario del archivo
 Al resto de usuarios del sistema (todos menos el propietario)

Usuario Grupo Otros r=read (lectura)


w=write (escritura)
x=execute (ejecusión)
Se puede dar permiso de lectura, escritura, ejecución o combinación de los 3 al usuario
propietario del archivo, al grupo dueño del archivo o al resto (otros) de usuarios del sistema.

33
El permiso de lectura permite a un usuario leer el contenido del archivo
o en el caso de un directorio, listar el contenido del mismo (usando ls)
El permiso de escritura permite a un usuario escribir y modificar el
archivo (inclusive eliminarlo). Para directorios, el permiso de escritura
permite crear nuevos archivos o borrar archivos ya existentes en el
mismo.
El permiso de ejecución permite a un usuario ejecutar el archivo si es un
programa. Para directorios, el permiso de ejecución permite al usuario
ingresar al mismo (con el comando cd).

Veamos los permisos del archivo texto

rw- r-- r-- rw- Permisos de lectura y escritura para el Usuario (dueño)
r-- Permisos de solo lectura para el Grupo
r-- Permisos de solo lectura para Otros (resto de los usuarios)

Ing. Edwin Calle Terrazas 34


chmod 644 archivo

Otorga permisos de lectura (r) y escritura (w) al usuario (dueño), permisos de lectura (r)
al grupo y permisos de lectura (r) a otros usuarios.

chmod 420 archivo

Otorga permisos de lectura (r) al usuario (dueño) y permisos de escritura (w) al grupo

35
EJEMPLO
Tenemos dos usuarios que pertenecen al grupo1, edwin y jose. El usuario edwin es
dueño de practico1 y el usuario jose es dueño de practico2. Creamos los siguientes
archivos y directorios

El usuario edwin puede modificar los permisos de r, w y x para los 3 tipos: dueño, grupo
y otros, porque el es dueño (propietario) del archivo o carpeta. El superusuario puede
cambiar los privilegios de un archivo o carpeta de cualquier usuario. En los siguientes
ejemplos no necesitamos ser superusuario

Cambiar los privilegios de solo lectura para el archivo practico1.


chmod 444 practico1

Verificamos que el usuario edwin (propietario) solo podrá leer el archivo practico1 y logeándonos
como jose veremos que también podremos leer el archivo, porque pertenece al mismo grupo.

36
Otorgar privilegios de lectura y escritura para el grupo al archivo practico1.
chmod 464 practico1

Nos logeamos como jose y veremos que el archivo practico1 se puede modificar (escritura),
porque pertenece al mismo grupo

37
OTRA FORMA DE DAR Y QUITAR PERMISOS A LOS ARCHIVOS
En la siguiente estructura de directorios vamos dar y quitar permisos al archivo practico1

chmod -rw practico1 Quita los privilegios para leer y escribir (para el usuario)
chmod +w practico1 Otorga privilegios para escribir (para el usuario)
chmod +r practico1 Otorga privilegios de lectura
chmod g+x practico1 Otorga privilegios de ejecución del archivo para el grupo
chmod u–rw practico1 Quitar los privilegios de lectura y escritura al usuario (dueño)
chmod ugo+rw practico1 Otorga privilegios de lectura y escritura al usuario, grupo y otros
chmod o-rw practico1 Quita privilegios de lectura y escritura a otros usuarios

Ing. Edwin Calle Terrazas 38


FORMA DE DAR Y QUITAR PERMISOS A LAS CARPETAS (DIRECTORIOS)
Dar permisos de lectura (r) y escritura (w) al usuario(u), al grupo (g) sobre el directorio
practicos
chmod ug+rw practicos

Otros ejemplos:
chmod go+rw practicos
chmod u+w practicos
chmod ugo+rw practicos

Quitar permiso de lectura (r), escritura (w) y (x) ejecución al grupo (g) y otros (o) sobre
el directorio practicos
chmod go-rwx practicos
chmod u-w practicos

Permite quitar privilegios de lectura, escritura y ejecución de un directorio y de todos


los ficheros y directorios contenidos dentro (La R significa recursivo)
chmod -R ugo-rwx sistemas

39
Otorga los privilegios de lectura, escritura y ejecución de un directorio y de todos sus
archivos y directorios contenidos dentro.
chmod -R ugo+rwx sistemas

Comando CHOWN
Permite cambiar el dueño de un archivo
chown usuario1 practico1 (usuario1 es el nuevo dueño del archivo practico1)

Permite cambiar de grupo a un archivo


chgrp grupo1 practico1 (El archivo practico1 pertenece al grupo1)

Permite cambiar de dueño y grupo al mismo tiempo (Lo mismo que los anteriores comandos)
chown usuario1:grupo1 practico1 (Cambia al mismo tiempo, dueño y grupo a un archivo)

Cambia el dueño de un directorio y de todos los archivos y directorios contenidos dentro.


chown -R user1 sistemas

40

También podría gustarte