#4sysadmins

Inicio » Comandos para modificar cuentas de usuarios y grupos

Comandos para modificar cuentas de usuarios y grupos

usermod: Modifica cuentas de usuario

usermod [opciones] login

Opciones: En realidad utiliza las mismas opciones que cuando un usuario es creado con useradd: -c, -d, -u, -g, -o, -f, -e y -p. Aunque existen otras o algunas que cambian como:

  • Si acompañamos la opción -d con -m en vez de ordenar crear el directorio lo que hará será mover todo el contenido del antiguo directorio al nuevo directorio indicado con -d.
  • Cambiar el nombre de la cuenta del usuario: -l, –login <nuevo nombre>
  • Bloquear o desbloquear una cuenta (en realidad añade o elimina el caracter ‘!‘ del campo de contraseña): -L y -U respectivamente
  • Podemos añadir usuarios a un grupo si acompañamos la opción -G <grupo1,grupo2…> con -a, –append. Para añadir un usuario a un grupo de esta manera, deberemos de nombrar además de los nuevos grupos todos aquellos a los que el usuario ya pertenecía, de lo contrario el usuario abandonará el grupo no indicado. Esto puede servir para eliminar al usuario de diferentes grupos.

groupmod: Modificar la configuración de un grupo.

groupmod [opciones] grupo

Opciones:

  • Modificar el GID de un grupo: -g, –gid <id>
  • Si el nuevo GID no es único usar: -o, –non-unique
  • Darle un nuevo nombre al grupo: -n, –new-name <nombre>
  • Crear una contraseña de grupo: -p <password>

chsh: Cambiar el shell de un usuario. Podemos emplear este comando en lugar de usermod -s <nueva shell>

chfn: Podemos modificar la información de usuario con chfn y sus opciones avanzadas, mejor que con usermod -c <comentarios>

chfn [opciones] login

Opciones:

  • Cambiar el nombre completo del usuario: -f, –full-name <Nombre Apellidos>
  • Crear un número de teléfono: -h, –home-phone <número> o -w, –work-phone <número>
  • Añadir un número de habitación: -r, –room <número>
  • Añadir información extra: -o, –other <info>

passwd: Cambia la contraseña de un usuario

passwd [opciones]  login

Opciones:

  • Bloquear o Desbloquear la contraseña de un usuario: -l, –lock o -u, –unlock
  • Eliminar la contraseña para una cuenta: -d, –delete
  • Podemos forzar a que un usuario cambie su contraseña, haciéndola que expire inmediatamente: -e, –expire
  • Dejar una cuenta inactiva si el usuario no ha modificado una contraseña que ha expirado en un determinado plazo de días: -i, –inactive <días>
  • Permitir el cambio de una contraseña solo si esta a caducado: -k
  • Indicar el número mínimo de días entre cambios de contraseña. Un 0 indica que podemos cambiar la contraseña varias veces en un día: -n <días>
  • Indica el número máximo de días entre cambios de contraseña. Una vez sobrepasado estos días la contraseña deberá ser cambiada: -x <días>
  • Avisar con un determinado número de días sobre el cambio de la contraseña, antes de que esta esté bajo la obligación de ser modificada: -w <días>
  • Muestra el estado de una contraseña: -S, –status
  • Si acompañamos -S de -a, –all veremos el estado de las contraseñas de todas las cuentas.

chage: Con este comando podremos modificar los valores dados a una contraseña con el comando passwd, o crear unos nuevos

chage [opciones] login

Opciones:

  • Mostrar información sobre la contraseña de un usuario: -l, –list
  • Normalmente con el comando chage podremos indicar una fecha de dos formas diferentes, bien con el número de días transcurridos desde el 1 de Enero de 1970 hasta el día en el que queramos dejar constancia de algo (último día en el que se cambió la password, último día para usar una cuenta sin antes modificar su contraseña, etc…  o bien con el formato ‘YYYY-MM-DD‘. Entonces si queremos setear el último día en el que la contraseña fue modificada: -d, –lastday <fecha>
  • Indicar el último día en el que una cuenta será accesible es decir, será bloqueada de forma definitiva y solo el administrador podrá restablecerla: -E, –expiredate <fecha>
  • Indicar el número de días en los que una cuenta estará inactiva antes de ser bloqueada: -I, –inactive <fecha>
  • Indicar el número mínimo de días entre cambios de contraseñas: -m, –mindays <días>
  • Indicar el número máximo de días que pueden transcurrir sin cambiar una contraseña: -M, –maxdays <días>
  • Avisar con unos días de antelación al usuario de que su contraseña debe de ser modificada: -W, –warndays <días>

Nota: En muchas de las opciones si utilizamos los valores -1 estaremos indicando la inhabilitación de esa función.

chpasswd: Cambiar las contraseñas de varias cuentas de una sola vez. Para invocar a chpasswd basta con nombrarlo y acompañarlo con una lista de nombre_usuario:contraseña (una cuenta por cada línea). Podremos crear un archivo con varias lineas y pasarselo mediante la redirección < archivo. Para encriptar las contraseñas chpasswd utiliza PAM. Este comando acepta varias opciones pero que su uso no está recomendado como:

  • Indicar un método distinto de encriptación (por defecto SHA512): -c <método>
  • Pasar contraseñas ya encriptadas: -e
  • Usar el método md5 para encriptar las contraseñas: -m, –md5

gpasswd: Administrar los archivos /etc/group y /etc/gshadow. Crear administradores de grupo, añadir usuarios a grupos y crear una password para un grupo.

gpasswd [opciones] grupo

Opciones:

  • Un grupo puede tener uno o varios usuarios administradores, para definir uno o una lista de ellos usamos: -A user1,user2…userN
  • De igual forma podemos añadir usuarios a un grupo en forma de lista: -M user1,user2…userN
  • Por defecto cualquier usuario perteneciente a un grupo puede hacer que este sea su grupo principal temporal mediante el comando newgrp, no así, usuarios que no pertenecen al grupo. Si añadimos una contraseña al grupo los usuarios que ya pertenecían al grupo pueden seguir usando newgrp, pero añadimos la posibilidad de que un usuario NO perteneciente al grupo, pueda utilizar newgrp para hacer de este su grupo principal temporal siempre y cuando conozca la contraseña del grupo. Para activar una contraseña en un grupo bastará con pasarle al comando gpaswd el nombre del grupo y se nos pedirá que introduzcamos la nueva contraseña. Deberemos de ser root o administradores del grupo.
  • Si queremos hacer que los usuarios que NO pertenecen a un grupo no puedan asignarse este como grupo principal temporal aun conociendo la contraseña, es decir solo los miembros del grupo podrán usar newgrp: -R, –restrict
  • Para eliminar la password de un grupo: -r, –remove-password
  • Añadir un usuario a un grupo: -a, –add <usuario> <grupo>
  • Eliminar un usuario de un grupo: -d, –delete <usuario> <grupo>

pwconv y grpconv: Implementar contraseñas shadow y gshadow respectivamente en un sistema. Esto es, las contraseñas de /etc/passwd y /etc/group pasan a los archivos /etc/shadow y /etc/gshadow de manera que solo root pueda leer las contraseñas encriptadas de los usuarios.

pwuncov y grpunconv: Realizan la acción inversa de los 2 comandos anteriores respectivamente..

Nota: El comportamiento de estos comandos es determinado a partir de los valores de las variables del archivo /etc/login.defs

newgrp: Con este comando podemos hacer que un usuario cambie su grupo principal de forma temporal. Tiene limitaciones según la configuración del grupo. Por regla general el usuario que usa este comando tiene que pertenecer previamente al grupo en cuestión. Si el grupo tiene contraseña, un usuario que no pertenezca de antemano al grupo podrá hacer de este grupo su grupo principal temporal siempre y cuando conozca la contraseña. Si el grupo tiene password pero además tiene marcada la opción -R (restrict) el usuario deberá pertenecer si o si al grupo previamente, aun conociendo la password de este.

Para cambiar de grupo bastará con pasarle de argumento a newgrp el nombre del grupo. Podremos volver a nuestro grupo anterior invocando sin parámetro alguno a newgrp o, opcionalmente pasarle un guión ‘‘ para simular un nuevo inicio de sesión para el usuario.

smbpasswd: Este comando es utilizado cuando tenemos un servidor samba el cual incluye a usuarios y contraseñas en su base de datos. Con este comando y el parámetro -x podremos eliminar la cuenta de un usuario de samba si no queremos hacerlo de forma manual a través de su archivo /etc/samba/smbpasswd.

Nota: El servicio samba no entra dentro del contenido del examen LPIC 1 pero estaría bien conocerlo.

 

 


Deja un comentario, Gracias!