Con el comando useradd [nombre_usuario] podemos crear usuarios nuevos. Al crear un usuario nuevo los campos del archivo /etc/passwd se crean con los valores default.
Algunos de estos valores default están definidos en el archivo /etc/login.defs
Con el comando usermod podemos modificar usuarios existentes, para ellos tenemos las siguientes opciones:
-c, --comment: Para agregar valores como el nombre completo al campo GECOS
-g, --gid: Para especificar el grupo primario del usuario
-G, --groups: Para especificar una lista de grupos secundarios
-a, --append: Se usa con la opción -G para agregar grupos secundarios a la lista sin eliminar los existentes
-d, --home: Para especificar un nuevo directorio home para el usuario
-m, --move: Para mover el directorio home a una nueva ubicación. Debe usarse con la opción -d
-s, --shell: Para especificar una nueva shell de login para el usuario
-L, --lock: Para bloquear al usuario
-U, --unlock: Para desbloquear al usuario
Ejemplo:
usermod -aG wheel student
Con el comando userdel [nombre_usuario] podemos eliminar usuarios del archivo /etc/passwd
Con userdel -r también eliminamos los elementos del directorio home del usuario
Para cambiar el password de un usuario utilizamos el comando passwd [nombre_usuario]
Los passwords para usuarios deben seguir ciertas reglas, al menos 8 caracteres, que no sean palabra de diccionario, el nombre del usuario o passwords anteriores
Como dato adicional, existen UID de usuario reservados y son los siguientes:
- 0: root
- 1-200: usuarios de sistema
- 201-999: usuarios de sistema para procesos de sistema que no son dueños de archivos en el filesystem
Al igual que passwd, shadow tiene campos separados por símbolos ":" y son los siguientes:
- Login Name: Debe ser una cuenta del sistema
- Password Encriptado: Es el passwords divididos en tres partes por signos de "$":
- La primera parte: Es el algoritmo utilizado para el hash. Si tenemos un 1 por ejemplo sería MD5. El 6 es un SHA-152
- Entre el segundo y el tercero símbolo de "$": Encontramos el "salt" que es una variable aleatoria utilizada para generar el hash
- En la tercer parte: Encontramos finalmente el hash encriptado
- Fecha para cambio del password
- Mínimo número de días anets de que el password tenga que ser cambiado
- Máximo número de días antes de que el password deba ser cambiado
- Periodo en días para alertar que el password va a expirar
- Número de días que una cuenta permanece activa después de que el password expiró
- La fecha de expiración de una cuenta
- Campo que no se usa actualmente (tal vez en un futuro)
-l: Para listar los parámetros que tiene configurados el usuario
-d: Fecha de expiración (con un cero forzaría a cambiar el password en el siguiente login)
-m: Mínimo de días antes de que el password sea cambiado
-M: Máximo de días antes de que el password sea cambiado
-W: Días para el warning o alertamiento
-I: Días para marcar al usuario como inactivo al expirar
-E: Fecha de expiración de una cuenta
Ejemplos:
- chage -l student
- chage -d 0 student
- chage -E 2019-02-11 student
En esos casos podemos crear el usuario y con el comando usermod indicar que no tendrá acceso al shell de ésta forma:
usermod -s /sbin/nologin student
No hay comentarios:
Publicar un comentario