Está en la página 1de 37

Usuarios y Grupos

• Identificación: consiste en saber quién es en el sistema a


fin de determinar los permisos de la persona.
• Todo usuario en el sistema tiene una asociación login,
UID y GUID, que serán únicos.
• UID identifica al usuario a lo largo de toda la conexión,
se utiliza para el control de sus derechos y de los
procesos que haya iniciado.
• UID con valores inferiores a 100 se asocian a cuentas
especiales con derechos extendidos.
• Según la distribución, los UID de los usuarios sin
privilegios particulares están comprendidos entre 100,
500 o 1000 y 60000.
Usuarios y Grupos
• Un login tiene en principio 8 caracteres, aunque
se aceptan un número mayor. A efectos de
visualización, muchos comandos emplean los
primeros 8 caracteres del login.
• Para el login, se aceptan la mayoría de
caracteres aunque no puede comenzar por un
carácter numérico.
• Es posible configurar la lista de caracteres
autorizados y forzar longitud y complejidad
mediante el fichero /etc/login.defs o los
mecanismos de PAM (Pluggable Authentication
Module).
Usuarios y Grupos
• Un grupo es un conjunto de usuarios de característica comunes.
• Cada usuario forma parte de al menos un grupo.
• GID es el identificador de grupo y acompaña siempre en el sistema
al usuario para controlar sus privilegios.
• Un usuario puede pertenecer a más de un grupo, en este caso,
tendrá un grupo primario y varios grupos secundarios.
• Existen grupos específicos para la gestión de algunas propiedades
del sistema, y acceso a ciertos periféricos.
• Cada vez que un usuario crea un fichero, este recibirá como
identificador de grupo el identificador del grupo principal del usuario
creador.
• El usuario dispone de todos los derechos asociados a los grupos
secundarios a los cuales pertenezca.
• En el comando id podemos conocer: UID, GUID, así como los
grupos secundarios.
Usuarios y Grupos
• grep rafa /etc/passwd
– rafa:x:1000:1000:rafa,,,:/home/rafa:/bin/bash
• grep rafa /etc/group
– cdrom:x:24:rafa
– floppy:x:25:rafa
– audio:x:29:pulse,rafa
– dip:x:30:rafa
– video:x:44:rafa
– plugdev:x:46:rafa
– rafa:x:1000:
• id
– uid=1000(rafa) gid=1000(rafa)
grupos=1000(rafa),24(cdrom),25(floppy),29(audio),30(dip),44(video),46(plugdev)
• touch k
– -rw-r--r-- 1 rafa rafa 0 ene 16 17:29 k
• ls -ln n: muestra UID
– -rw-r--r-- 1 1000 1000 0 ene 16 17:29 k
Usuarios y Grupos
• Contraseñas:
– Compromiso entre seguridad y comodidad para el
usuario.
– Están cifradas en MD5, DES, SHA-256, SHA-512.
• Muestra cifrados soportados (paquete whois)
• mkpasswd –m help
» des standard 56 bit DES-based crypt(3)
» md5 MD5
» sha-256 SHA-256
» sha-512 SHA-512
– Se deberán cambiar regularmente.
– El sistema obliga al usuario a aplicar las reglas de
creación y duración de contraseñas.
Usuarios y Grupos
• Ficheros:
– /etc/passwd -rw-r--r-- 1 root root 1748 ene 14 21:06 passwd
– /etc/group -rw-r--r-- 1 root root 1374 ene 14 21:20 group
– /etc/shadow -rw-r----- 1 root shadow 1917 ene 14 21:07 shadow
– /etc/gshadow -rw-r----- 1 root shadow 10583 ene 14 21:07
shadow

– gshadow (no soportado por la mayoría de


distribuciones)
Usuarios y Grupos
• Fichero /etc/passwd:
– Login:password:UID:GUID:comentario:homedir:shell
– Login: nombre de usuario.
– Passwd: en antiguas versiones, la contraseña cifrada Si hay
una x, se coloca la contraseña en /etc/shadow
– UID: identificador de usuario
– GID: identificador del grupo principal del usuario.
– Comentario: descripción del usuario. chfn cambia el comentario
– Homedir: directorio de trabajo personal del usuario. Es que que se
le presenta al usuario cuando se conecta.
– Shell: shell por defecto del usuario, puede ser un comando, o
incluso un comando que prohíbe la conexión. chsh cambia la shell
por defecto
Usuarios y Grupos
• Fichero /etc/group:
– Group:password:GID:usuario1,usuario2,……
– Group: nombre de grupo.
– Password: contraseña de grupo.
– GID: identificador de grupo.
– Comentario: descripción del usuario.
– Usuario1,usuario2…: usuarios que pertenecen al grupo.
• No podemos conectarnos como grupo.
• Este campo, password, es utilizado en comando newgrp, utilizado para los
casos en los que queramos temporalmente cambiar el grupo principal de
pertenencia del usuario sin pertenecer al grupo.
– gpasswd nomgrupo
– Si conocemos la contraseña nos añadirá nomgrupo como grupo ppal.
– groups visualizamos los grupos a los que pertenecemos
• En el caso en el que el usuario quiera poner un grupo secundario al cual
pertenece como grupo principal, en la sesión, utilizaríamos:
– newgrp grupoSecundario
Usuarios y Grupos
• Fichero /etc/shadow:
– Trabaja junto con /etc/passwd.
– Contiene la contraseña cifrada de usuario y la validez de la contraseña en el tiempo.
– usuario:$6$7vtrdQFY$IQ7Xq9E3tlNUzbLBnQMCcXWIrkL6IipAlEHV/
tEj.SKFvqJ9Oi4Mksq5B3U5WhjJqwRX46M1K3zj8h2LT2VKa.:15616:0:99999:7:::
– $xx$ indica el tipo de cifrado. $1$=MD5 (22 caracteres) $2$=blowfish $5$=SHA-256 (43
Caracteres) $6$=SHA-512 (86 Caracteres)
– $7vtrdQFY$ Sal
– 15616: número de días desde el 1 de enero de 1970 al último cambio de contraseña.
– 0: número de días sin poder cambiar la contraseña, en este caso 0 se puede cambiar en
cualquier momento.
– 99999: número de días a partir de los cuales se debe cambiar la contraseña.
– 7:número de días después del vencimiento de la contraseña tras los cuales se desactiva la
cuenta.
– Penúltimo campo: número de días desde el 1 de enero de 1970 hasta el momento en el
cual se desactivo la cuenta.
– Último campo: reservado.
• Consultar /etc/login.defs grep ^ENCRYPT_METHOD /etc/login.defs
Usuarios y Grupos
• Fichero /etc/shadow:
– Para consultar fechas en función 1/1/1970:
– date --date "1 jan 1970 + 15696 days"
Usuarios y Grupos
• Encriptación “condimentada”
– Se genera un grano de sal aleatorio y se encripta.
– Se solicita la clave de usuario durante su creación.
– El algoritmo encripta la clave de usuario junto con 
el grano de sal encriptado previamente.
– En el archivo shadow guardamos el 
grano de sal encriptado concatenado al hash
$nº$grano de sal$clave encriptada
Usuarios y Grupos
• Encriptación “condimentada”
– Cuando un usuario se autentica:
Tecleamos la clave.
– El algoritmo lee el grano de sal de /etc/shadow.
– Pasa al algoritmo como entradas la clave en claro y la
 sal.
– El algoritmo genera la clave encriptada y compara
Si hay coincidencia entonces ‐> lógin OK
– Generación de contraseñas:
• pwgen, gpw, apg
Usuarios y Grupos
• Ejemplo de encriptación con mkpasswd.
– Instalamos el paquete whois, ya que necesitamos el comando
mkpasswd.
– mkpasswd -m help
Available methods:
des standard 56 bit DES-based crypt(3)
md5 MD5
sha-256 SHA-256
sha-512 SHA-512
– mkpasswd -m sha-512 -S asdfghjk
– Password: debian
– $6$asdfghjk$L0V6I9gTf.4WjQbjmpCvECpEd/
g91q3BMwcZ7LJnC8U/.YdV3NskS4FnWMSXLkpl5Z8
9I4.L6x1c38/3NzAIZ0
Usuarios y Grupos
• Creación de usuarios:
– Se añade una entrada en /etc/passwd
– Se añade una entrada en /etc/shadow
– Se añade una entrada si fuese el caso en
/etc/group
– Se crea el directorio personal y se actualiza
su contenido con el contenido de /etc/skel/
– Se cambian los permisos y el propietario del
directorio personal.
Usuarios y Grupos
• Creación de usuarios:
– Editando manualmente /etc/passwd, no aconsejable pero posible.
– Comando vipw, vigr
• -p: edita /etc/passwd
• -g: edita /etc/group
• -s: edita /etc/shadow
– Cambio del editor por defecto:
– update-alternatives --config editor
– Comprobar coherencia de passwd,shadow,group
• pwck
• grpck
– Comando useradd, adduser
Usuarios y Grupos
• Creación de usuarios: useradd
– Sin opciones se recuperan los valores de:
• /etc/default/useradd
• useradd kk
• -m: Crea el directorio personal
• -u: especifica el UID numérico del usuario, se cambia en
función del fichero login.defs y los UID existentes.
• -g: especifica el grupo principal del usuario.
• -G: especifica los grupos secundarios, separado por comas.
• -d: ruta del directorio personal.
• -c: comentario de la cuenta.
• -s: shell por defecto del usuario.
• -p: contraseña, deberá estar ya cifrada.
Usuarios y Grupos
• Creación de usuarios: adduser
– Es un script basado en useradd.
– Introducción interactiva de parámetros de usuario
– Fichero de configuración:
• /etc/adduser.conf
Usuarios y Grupos
• Creación de usuarios: passwd
– Cambia los campos de /etc/shadow
– l: Lock bloquea la cuenta, añade un ! Delante de la contraseña cifrada.
– -u: Unlock, desbloque la cuenta.No es posible activar una cuenta que no
tenga contraseña. Hay que utilizar-f para tal fin.
– -d: suprime la contraseña de la cuenta.
– -n: vida mínima en días de la contraseña.
– -x: vida máxima en días de la contraseña.
– -w: número de días antes de un aviso.
– -i: Periodo de gracia antes de la desactivación, si ha vencido la
contraseña.
– -S: estado de la contraseña.
– passwd -aS Muestra el estado de todos los usuarios
– Passwd -S usuario Muestra info de usuario.
– Comando chage usuario hace lo mismo.
• chage usuario -l
Usuarios y Grupos
• Manipulación por lotes de cuentas
– newusers: añade usuarios al sistemas en
modo procesamiento por lotes.
– Sintaxis: newusers archivo
– Lee archivo de mismo formato /etc/passwd
– IDusuario:contraseña:UID:GID:GCOS:dir_ppal:shell
– Contraseñas estarán en texto plano, que se
codificarán y se ubicarán en /etc/passwd o
/etc/shadow según sea el soporte de contraseñas
shadow.
Usuarios y Grupos
• Manipulación por lotes de cuentas
– Si no existe grupos en /etc/group con GID
dado, se creará uno nuevo con ese GID.
– Se creará el directorio de usuario si no existe,
pero no se copiará nada de /etc/skel ni
/etc/skel.d en él.
Usuarios y Grupos
• Manipulación por lotes de cuentas
– chpasswd actualización fichero de
contraseñas en modo batch.
– Lee pares de usuario:contraseña de la
entrada estándar.
– Sintaxis: chpasswd < fichero
– Se codificarán las contraseñas
Usuarios y Grupos
– Modificación de usuarios:usermod:
• - L: bloquea la cuenta como passwd –l
• -U: Desbloqueo de cuenta como passwd –u
• -e: la cuenta expira en n días después de 1/1/1970
• -u UID: Modifica el UID asociado al login, se modifica el
propietario de los ficheros que pertenecen al antiguo UID
dentro del directorio personal.
• -l login: modifica el nombre de usuario.
• -d dir: Cambia el directorio principal del usuario.
• -s shell: Cambia el shell de usuario.
• -g grupo: Cambia el grupo inicia de usuario por grupo.
• -G grupo1,grupo2,..: Convierte a usuario en miembro de los
grupos especificados. Grupos deben existir.
Usuarios y Grupos
– Modificación de usuarios: chage
• Chage, modifica parámetros de la cuenta de usuario dada.
• -m DÍAS_MINestablece el número mínimo de días antes
de cambiar la contraseña a DÍAS_MIN
• -M DÍAS_MAX establece el número máximo de días
antes de cambiar la contraseña a DÍAS_MAX
• -I INACTIVA deshabilita la cuenta después de INACTIVA
días de la fecha de caducidad
• -W DÍAS_AVISO establece los días de aviso de expiración
a DÍAS_AVISO
• -E FECHA_CAD establece la fecha de caducidad a
FECHA_CAD
• Ver información parámetro del usuario chage usuario -l
• chage -d 0 usuario Forzar a que usuario cambie su password
Usuarios y Grupos
– Borrado de usuarios:userdel:
• Elimina el usuario especificado, no se borra el
directorio home del usuario.
• -r: suprime el directorio home del usuario.
• Antes de borrar al usuario, sopesar si no es más
útil desactivar su cuenta. usermod -L usuario ó
passwd -l usuario
Usuarios y Grupos
• Creación de grupos:
– Editando /etc/group no recomendado.
– vigr o vipw –g
– groupadd, addgroup
– -f grupo: no crea grupo si ya existe.
– -g gid: especifica gid de grupo.
– Creación o modificación de contraseña a
grupo:
• gpasswd nomgrupo
Usuarios y Grupos
• Modificación de grupos:
– groupmod opciones:
• -n nombre: renombra al grupo.
• -g GID: Modifica el GID, no se modifica el grupo al
que pertenecen los ficheros correspondientes.
• -A usuario: Añade el usuario en el grupo
(secundario).
• -R usuario: suprime el usuario especificado el
grupo.
Usuarios y Grupos
• Eliminación de grupos: userdel, deluser
– Se comprueba si el grupo a borrar es grupo primario
de un usuario, si es el caso no permite borrar el
grupo.
– En caso de que se pueda únicamente, se borra la
entrada correspondiente en el fichero /etc/group. Le
corresponde al usuario comprobar el sistema de
ficheros.
• Visualización de grupos de pertenencia:
– groups grupos del usuario actual.
– groups nomusuario
Usuarios y Grupos
• Cambio de grupo primario:
– newgrp: permite cambiar de grupo primario de
manera temporal, el nuevo grupo especificado
debería ser un grupo secundario del usuario o de que
el usuario disponga de la contraseña de grupo.
– Las modificaciones son temporales, no se modifica el
fichero de las contraseñas.
– Cuando salgamos de la sesión, o tecleemos exit,
perderemos la pertenencia del grupo en el supuesto
de que no perteneciéramos a él originariamente.
Usuarios y Grupos
• Cambio de identidad:
– Comando su permite abrir una sesión, ejecutar un
comando con otra identidad o ejecutar un shell.
– su –c [comando] –s [shell] [–] [usuario]
• - carga el entorno completo del usuario
• Los shells disponibles están en /etc/shells.
sudo comando. Ejecuta como root un comando
cada vez, utilizando para ello su propia
contraseña.
Usuarios y Grupos
• Conexiones:
– lastlog –u usuario
• Se basa en la información de /var/log/lastlog
– last
• Se basa en la información de /var/log/wtmp
• -N: muestra últimas N líneas.
• -i: muestra ips en lugar de nombres de hosts
• -x: muestra cierres de sesión y cambios de nivel
de ejecución.
Usuarios y Grupos
• Conexiones:
– finger [usuario]: imprime información de
usuarios conectados en formato breve.
– logname. Imprime el nombre de inicio de
sesión.
– whoami. Imprime el nombre de usuario
actual.
– users. Imprime listado de usuarios con
sesiones activadas.
Usuarios y Grupos
• Conexiones:
• who. Muestra usuarios conectados.
– -u : imprime también el tiempo de inactividad.
– -T: indica si se puede escribir en el terminal de
cada usuario. + indica que si, - indica que no.
Con mesg y ó n activamos o desactivamos la
entrada de mensajes enviados con write.
• w. Muestra usuario conectados, y que hacen
Usuarios y Grupos
• Acciones de usuario:
– Cambiar la Shell:
• chsh -s /bin/sh
• La modificación se realiza sobre /etc/passwd
• El cambio se produce en el próximo inicio.
• Los shells disponibles listados en /etc/shells
– Cambiar el comentario de usuario:
• chfn
• La modificación se realiza sobre /etc/passwd
• -consultar chfn - -help.
Usuarios y Grupos
• Acciones de usuario:
– Cambiar la grupo primario:
• newgrp nomgrupo
– Cambiar de identidad:
• su –c [comando] –s [shell] [–] [usuario]
– su –c “ls –la”
• sg grupo –c [comando]
– sg amiguetes -c "ls -la“
– Nos pedirá la contraseña del grupo amiguetes.
Usuarios y Grupos
• Notificaciones al usuario:
– Cuando un usuario se conecta al sistema se
visualizará en mensaje de bienvenida de /etc/issue
– Se puede especificar otro mensaje de bienvenida en
el caso de que el usuario se conecte desde consola
remota, será el contenido en /etc/issue.net
– Una vez que el usuario se haya conectado al sistema,
de forma local o remota, se mostrará el mensaje
contenido en /etc/motd, se puede notificar a los
usuarios acciones importantes y así evitar mails.
Usuarios y Grupos
• Entorno de usuario:
– En el momento de crear un usuario, se
implementa el entorno de usuario.
– Se copiaran los ficheros de configuración
desde el directorio /etc/skel hacia el
directorio personal de usuario.
Usuarios y Grupos
• Configuración avanzada:
– /etc/default/useradd
– /etc/default/passwd
– /etc/default/su
– /etc/login.defs

También podría gustarte