You are on page 1of 23

14.

1 IntroducciónEn el capítulo anterior, se vio que la información de la cuenta de usuario se


almacena en el directorio / etc / passwd información de autenticación del archivo y de usuario
passwd (datos de la contraseña(passwd)) se almacena en el archivo / etc / shadow. Creación
de un nuevo usuario se puede lograr mediante la adición manual de una nueva línea para cada
uno de estos archivos, pero que por lo general no es la técnica recomendada. Mediante el uso
de un comando adecuado para agregar un nuevo usuario, estos archivos se pueden modificar
de forma automática y segura. Si se va a modificar manualmente estos archivos, usted corre el
riesgo de cometer un error que podría impedir que todos los usuarios de la posibilidad de
iniciar sesión normalmente.En algunas distribuciones, la creación de una nueva cuenta de
usuario también crea automáticamente una cuenta de grupo para el usuario, llamado Grupo
Privado (UPG) del usuario. En estos sistemas, el nombre del grupo y el usuario sería el mismo y
el único miembro de este nuevo grupo sería el nuevo usuario.Para distribuciones que no crean
un UPG, los nuevos usuarios se dan típicamente los "usuarios" de grupo como su grupo
principal. El administrador puede crear manualmente las cuentas de grupo que son privadas
para el usuario, pero es más común que el administrador crear grupos para múltiples usuarios
que necesitan colaborar. Las cuentas de usuario pueden ser modificadas en cualquier
momento para añadir o eliminarlos de la cuenta en Grupos, pero los usuarios deben
pertenecer a al menos un grupo para su uso como su grupo principal.Antes de comenzar la
creación de usuarios, debe planificar cómo va a utilizar grupos. Los usuarios pueden crear con
membresías en grupos que ya existen o usuarios existentes pueden ser modificados para tener
membresías en grupos existentes.Si ya ha planeado qué usuarios y grupos que desee, que es
más eficiente para crear sus grupos primero y crear sus usuarios con sus pertenencias a
grupos. De lo contrario, si crea sus usuarios primero, y luego sus grupos, tendrá que dar un
paso más para modificar sus usuarios para que sean miembros de sus grupos.

14.2 Linux Fundamentos Objetivos del examen En este capítulo se hará cargo de los temas de
los siguientes objetivos del examen Linux Essentials: Tema 5: Seguridad y permisos de archivos
(peso: 7) 5.2 Creación de usuarios y grupos Peso: 2 Descripción: Creación de usuarios y grupos
en un sistema Linux. Principales Áreas de Conocimiento: • Los comandos de usuario y de grupo
• ID de usuario La siguiente es una lista parcial de los usados archivos, términos y utilidades: •
/ etc / passwd, / etc / shadow, / etc / group • Identificación, última • useradd, groupadd •
passwd Las cosas que son bueno saber: • usermod, userdel • groupmod, groupdel

14.2 Linux Essentials Exam Objectives


This chapter will cover the topics for the following Linux Essentials exam objectives:
Topic 5: Security and File Permissions (weight: 7)
 5.2 Creating Users and Groups
 Weight: 2
 Description: Creating users and groups on a Linux system.
 Key Knowledge Areas:
 User and group commands
 User IDs
 The following is a partial list of the used files, terms, and utilities:
 /etc/passwd, /etc/shadow, /etc/group
 id, last
 useradd, groupadd
 passwd
 Things that are nice to know:
 usermod, userdel
 groupmod, groupdel

14.3 Creación de un grupo La razón más común para crear un grupo es proporcionar una
manera para que los usuarios compartir archivos. Un ejemplo de esto podría ser donde hay
varias personas que trabajan juntos en el mismo proyecto y la necesidad de ser capaces de
colaborar en documentos almacenados en archivos para el proyecto. En este escenario, el
administrador puede hacer que estas personas miembros de un grupo común, cambiar la
propiedad directorio para el nuevo grupo y establecer permisos en el directorio que sólo
permitirán miembros del grupo para acceder a los archivos. Después de crear o modificar un
grupo, puede verificar los cambios mediante la visualización de la información de
configuración del grupo en el archivo / etc / group con el comando grep. Si se trabaja con
servicios de autenticación basados en la red, entonces el comando getent puede mostrar tanto
locales como grupos basados en la red. Para uso local, estos comandos muestran el mismo
resultado, en este caso para el grupo root:

[root@localhost ~]# grep root /etc/group


root:x:0:
[root@localhost ~]# getent group root

root:x:0

El comando groupadd puede ser ejecutado por el usuario root para crear un nuevo grupo. El
comando requiere sólo el nombre del grupo que se creará. La opción -g se puede utilizar para
especificar un ID de grupo para el nuevo grupo

[root@localhost ~]# groupadd -g 506 research


[root@localhost ~]# grep research /etc/group
research:x:506:

Si no se proporciona la opción -g, el comando groupadd proporcionará automáticamente un


GID para el nuevo grupo. Para lograr esto, el comando groupadd mira el archivo / etc / group y
utiliza un número que es un valor más alto que el actual número más alto GID. La ejecución de
los siguientes comandos ilustra este

[root@localhost ~]# grep research /etc/group


research:x:506:
[root@localhost ~]# groupadd development
[root@localhost ~]# grep development /etc/group
development:x:507:

Consideraciones ID 14.3.1 Grupo En algunas distribuciones de Linux, en particular los basados


en Red Hat, cuando se crea un identificador de usuario (UID), un grupo privado de usuario
(UPG) también se crea con ese usuario como su único miembro. En estas distribuciones, UID
del usuario y el ID de grupo privado se supone que deben coincidir (tenga el mismo número).
Por lo tanto, se debe evitar la creación de GID en los mismos rangos numéricos donde se
espera para crear los ID de usuario (UID), con el fin de evitar un conflicto entre un GID se crea
frente a un número UPG que se crea para que coincida con un UID. Recordemos que GIDs
menos de 500 están reservados para uso del sistema. Puede haber momentos en los que
desea asignar un GID menos de 500. Para lograr esto, utiliza la -r. La opción -r asignará el
nuevo grupo un GID que será menor que el UID estándar más bajo:

[root@localhost ~]# groupadd -r sales


[root@localhost ~]# getent group sales
sales:x:491:

Grupo 14.3.2 Nombrando Consideraciones Siguiendo estas pautas para nombres de grupo le
ayudará a seleccionar un nombre de grupo que será portátil (función correctamente con otros
sistemas o servicios): • El primer carácter del nombre debe ser un guión bajo (_) o un carácter
alfabético en minúsculas (az). • Hasta 32 caracteres se permiten en la mayoría de las
distribuciones de Linux, pero el uso de más de 16 pueden ser problemático, ya que algunas
distribuciones pueden no aceptar más de 16. • Después del primer carácter, los caracteres
restantes pueden ser alfanuméricos, el guión (-) o un guión bajo (_). • El último carácter no
debe ser un guión (-). Por desgracia, estas directrices no siempre se cumplen. El problema no
es que el comando groupadd necesariamente fracasar, pero que otros comandos o servicios
del sistema no funcione correctamente.

14.4 Modificación de un grupo

El comando groupmod se puede utilizar ya sea cambiar el nombre del grupo


(con la opción -n) o cambiar el GID (con la opción -g) para el grupo.

ADVERTENCIA: Cambiar el nombre del grupo puede causar confusión para los
usuarios que estaban familiarizados con el nombre de edad y no estén
informados acerca del nuevo nombre. Sin embargo, cambiar el nombre del
grupo no causará ningún problema con los archivos de acceso, ya que los
archivos son realmente propiedad de GID, y no los nombres de grupo. Por
ejemplo:

[root@localhost ~]# ls -l index.html


-rw-r-----. 1 root sales 0 Aug 1 13:21 index.html
[root@localhost ~]# groupmod -n clerks sales
[root@localhost ~]# ls -l index.html
-rw-r-----. 1 root clerks 0 Aug 1 13:21 index.html

Después de que el comando anterior groupmod, el archivo index.html tiene un nombre


propietario del grupo diferente. Sin embargo, todos los usuarios que estaban en el grupo de
ventas se encuentran ahora en el grupo de empleados, por lo que todos aquellos usuarios
todavía pueden acceder al archivo index.html. De nuevo, esto se debe a que el grupo se define
por el GID, no el nombre del grupo. Por otro lado, si se cambia el GID para un grupo, a
continuación, todos los archivos que se asociaron a ese grupo ya no se asocian con ese grupo.
De hecho, todos los archivos que se asociaron a ese grupo ya no estarán asociados con
cualquier nombre de grupo. En cambio, estos archivos serán propiedad de sólo GID, como se
muestra a continuación:

[root@localhost ~]# groupmod -g 10003 clerks


[root@localhost ~]# ls -l index.html
-rw-r-----. 1 root 491 13370 Aug 1 13:21 index.html

Estos archivos sin nombre de grupo son llamados archivos "huérfanos". Como usuario root, es
posible que desee buscar todos los archivos que son propiedad de sólo un GID (no asociado
con un nombre de grupo). Esto se puede lograr con la opción -nogroup para el comando find:

These files with no group name are called "orphaned" files. As the root user, you may want
to search for all files that are owned by just a GID (not associated with a group name). This
can be accomplished with the -nogroup option to the find command:

[root@localhost ~]# find / -nogroup


/root/index.html

14.5 Eliminación de un grupo Si decide eliminar un grupo con el comando groupdel, tenga en
cuenta que todos los archivos que pertenecen a ese grupo se convertirá en
"huérfanos(orphaned )". Sólo los grupos complementarios se pueden eliminar, por lo que si un
grupo es el grupo primario para cualquier usuario, no se puede eliminar. El administrador
puede modificar qué grupo es el grupo principal de un usuario, por lo que un grupo que se está
utilizando como un grupo primario se puede convertir en un grupo suplementario y luego se
puede eliminar. Mientras el grupo que desea eliminar no es el grupo principal de un usuario,
eliminar el grupo se lleva a cabo mediante el comando groupdel junto con el nombre del grupo

[root@localhost ~]# groupdel clerks

14.6 / etc / default / useradd Archivo Antes de empezar a crear usuarios para el sistema, debe
verificar o establecer valores prácticos que se utilizarán de forma predeterminada con el
comando useradd. Esto se puede lograr mediante la modificación de la configuración en los
archivos de configuración que son utilizados por el comando useradd. Asegurar que los valores
de estos archivos de configuración son razonables antes de agregar usuarios pueden ayudarle
a ahorrar tiempo y la molestia de tener que corregir los ajustes de la cuenta de usuario después
de la adición de los usuarios. La opción -D al comando useradd le permitirá ver o cambiar
algunos de los valores por defecto utilizados por el comando useradd. Los valores mostrados
por -D useradd también se pueden ver o actualizan manipulando el archivo / etc / default /
useradd:

[root@localhost ~]# useradd -D


GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=
SHELL=/bin/bash
SKEL=/etc/skel
CREATE_MAIL_SPOOL=yes
GRUPO 100
En distribuciones no usar UPG, este será el grupo principal predeterminado para un usuario
nuevo, si no se especifica con el comando useradd. Este es normalmente el grupo "users" con
un GID de 100. Este ajuste afecta a la configuración por defecto del archivo / etc / passwd
destacan a continuación: bob: x: 600: 600: bob: / home / bob: / bin / bash La opción -g al
comando useradd permite el uso de un grupo primario diferente de la predeterminada al crear
una nueva cuenta de usuario

Casa Casa (home/home)


El directorio / home es el directorio base predeterminado en virtud del cual se creará el
directorio home nueva del usuario. Esto significa que un usuario con un nombre de cuenta de
"bob" tendría un directorio principal de / home / bob. Este ajuste afecta a la configuración por
defecto del archivo / etc / passwd destacan a continuación: bob: x: 600: 600: bob: / home / bob:
/ bin / bash La opción -b al comando useradd le permite utilizar un grupo directorio base
diferente a la predeterminada cuando se crea una nueva cuenta de usuario

INACTIVO -1
Este valor representa el número de días después de que la contraseña caduca que la cuenta
está deshabilitada. Un valor de -1 significa que esta función no está activada por defecto y sin
valor "inactivo" se proporciona nuevas cuentas por defecto. Este ajuste afecta a la
configuración por defecto del archivo / etc / shadow destacan a continuación en: bob: pw:
15020: 5: 30: 7: 60: 15.050: La opción -f al comando useradd le permite utilizar un valor
INACTIVO diferente al predeterminado al crear una nueva cuenta de usuario.

EXPIRAR(EXPIRE)
De forma predeterminada, no hay ningún valor establecido para la fecha de caducidad. Por lo
general, una fecha de caducidad se encuentra en una cuenta individual, no todas las cuentas
por defecto. Por ejemplo, si usted tenía un contratista que fue contratado para trabajar hasta el
final del día el 1 de noviembre de 2013, entonces se podría asegurar que no podrían hacer
login después de esa fecha utilizando el campo de expirar. Este ajuste afecta a la configuración
por defecto del archivo / etc / shadow resaltados en rojo: bob: pw: 15020: 5: 30: 7: 60: 15.050:
La opción -e para el comando useradd le permite utilizar un valor EXPIRAR diferente al
predeterminado al crear una nueva cuenta de usuario

SHELL / bin / bash


El entorno SHELL indica el shell por defecto para el usuario cuando inicie
sesión en el sistema.

Este ajuste afecta a la configuración por defecto del archivo / etc / passwd
destacan a continuación:

bob: x: 600: 600: bob: / home / bob: / bin / bash

La opción -s del comando useradd le permite utilizar un shell de entrada


diferente al predeterminado al crear una nueva cuenta de usuario.

SKEL / etc / skel El valor SKEL determina lo tendrá el directorio "esqueleto" de


sus contenidos copiados en el nuevo directorio personal del usuario. El
contenido de este directorio se copian en el directorio home del usuario nuevo y
el nuevo usuario se le da la propiedad de los archivos nuevos. Esto
proporciona a los administradores una manera fácil de "rellenar" una nueva
cuenta de usuario con los archivos de configuración importantes. La opción -k
al comando useradd le permite utilizar un directorio SKEL diferente al
predeterminado al crear una nueva cuenta de usuario.
SKEL/etc/skelThe SKEL value determines what "skeleton" directory will have its contents
copied into the new users home directory. The contents of this directory are
copied into the new user's home directory and the new user is given
ownership of the new files.
This provides administrators with an easy way to "populate" a new user
account with key configuration files.
The -k option to the useradd command allows you to use a different SKEL
directory than the default when creating a new user account.
CREATE_MAIL_SPOOL
sí Una "cola de correo ("mail spool )" es un archivo donde se encuentra el correo
electrónico entrante. Actualmente el valor de la creación de una cola de correo
es "sí", lo que significa que los usuarios de forma predeterminada se configuran
con la capacidad de recibir y almacenar el correo local. Si usted no está
planeando sobre el uso de correo local, este valor podría ser cambiado a "no".

Para modificar uno de los valores useradd defecto, el archivo / etc / default /
useradd podría ser editado con un editor de texto. Otra técnica (más seguro) es
usar el comando useradd -D. Por ejemplo, si desea permitir que los usuarios
tienen contraseñas caducadas que todavía podían ingresar con hasta por
treinta días, entonces usted podría ejecutar

[root@localhost ~]# useradd -D -f 30


[root@localhost ~]# useradd -D
GROUP=100
HOME=/home
INACTIVE=30
EXPIRE=
SHELL=/bin/bash
SKEL=/etc/skel
CREATE_MAIL_SPOOL=yes

14.7 /etc/login.defs Archivo El archivo /etc/login.defs también contiene los


valores que se aplicarán por defecto a los nuevos usuarios que se crean con el
comando useradd. A diferencia del / etc / default / useradd, que se puede
actualizar con el comando useradd -D, los /etc/login.defs suele editadas
directamente por el administrador para modificar sus valores. Este archivo
contiene muchos comentarios y líneas en blanco, así que si lo que desea es
ver las líneas que no son comentarios o líneas en blanco (los ajustes de
configuración real), a continuación, puede utilizar el siguiente comando grep

14.7 /etc/login.defs File


The /etc/login.defs file also contains values that will be applied by default to new users
you create with the useradd command. Unlike the /etc/default/useradd, which can be
updated with the useradd -D command, the /etc/login.defs is usually edited directly by
the administrator to alter its values.
This file contains many comments and blank lines, so if you just want to view lines that are
not comments or blank lines (the real configuration settings), then you can use the following
grep command:

[root@localhost ~]# grep -Ev '^#|^$' /etc/login.defs


MAIL_DIR /var/spool/mail
PASS_MAX_DAYS 99999
PASS_MIN_DAYS 0
PASS_MIN_LEN 5
PASS_WARN_AGE 7
UID_MIN 500
UID_MAX 60000
GID_MIN 500
GID_MAX 60000
CREATE_HOME yes
UMASK 077
USERGROUPS_ENAB yes
ENCRYPT_METHOD SHA512
MD5_CRYPT_ENAB no

El ejemplo anterior representa un típico fichero CentOS 6 /etc/login.defs de distribución con


sus valores. La siguiente tabla describe cada uno de estos valores:
El campoEjemploDescripciónMAIL_DIR / var / mail / spool
El directorio en el que se creará archivo de cola de correo del usuario
PASS_MAX_DAYS 99999
Este valor determina el número máximo de días que un usuario puede seguir utilizando la
misma contraseña. Dado el valor predeterminado es 99999 días, o más de 200 años,
significa que efectivamente los usuarios nunca tienen que cambiar su contraseña.Las
organizaciones con políticas efectivas para el mantenimiento de contraseñas seguras
comúnmente cambiar este valor a 60 o 30 días.Este ajuste afecta a la configuración por
defecto del archivo / etc / shadow destacan a continuación:bob: pw: 15020: 5: 30: 7: 60:
15.050:
PASS_MIN_DAYS 0
Con este conjunto de un valor predeterminado de 0 (cero), el menor tiempo que se
requiere un usuario mantener una contraseña es de cero días, lo que significa que pueden
cambiar inmediatamente la contraseña que acaban de establecer.Si el valor
PASS_MIN_DAYS se establece en 3 días, a continuación, después de establecer una
nueva contraseña, el usuario tendría que esperar tres días antes de que pudieran cambiar
de nuevo.Este ajuste afecta a la configuración por defecto del archivo / etc / shadow
destacan a continuación:bob: pw: 15020: 3: 30: 7: 60: 15.050:
PASS_MIN_LEN 5
Esto indica el número mínimo de caracteres que debe contener una contraseña.
PASS_WARN_AGE 7
Este es el valor predeterminado para el campo de advertencia. Como usuario se acerca al
número máximo de días que pueden usar su contraseña, el sistema comprobará si es hora
de empezar a advertir al usuario acerca de cómo cambiar la contraseña al iniciar la
sesión.Este ajuste afecta a la configuración por defecto del archivo / etc / shadow destacan
a continuación:bob: pw: 15020: 3: 30: 7: 60: 15.050:
UID_MIN 500
El UID_MIN determina el primer UID que será asignado a un usuario normal. Cualquier
usuario con un UID que sería menor que este valor podría ser o bien para una cuenta de
sistema o la cuenta de root.
UID_MAX 60,000
Un UID técnicamente podría tener un valor de más de cuatro millones de dólares. Para
conseguir la máxima compatibilidad se recomienda dejarlo en su valor predeterminado de
60.000
GID _MIN 500
El GID _MIN determina la primera GID que se asignará a un grupo ordinario. Cualquier
grupo con un GID que sería menor que este valor sería ser o bien para un grupo de
sistemas o el grupo de la raíz.
GID _MAX 60,000
Un GID como un UID podría tener un valor de más de cuatro millones de dólares.
Cualquiera que sea el valor que utiliza para su UID_MAX, debe ser utilizado para
GID_MAX con el fin de apoyar UPG.
CREATE_HOME sí
El valor de este determina si es o no un nuevo directorio se creará para el usuario, al crear
su cuenta
.UMASK 077
Este UMASK funciona en el momento se está creando el directorio de inicio del usuario;
que determinará cuáles son los permisos predeterminados estarán en este directorio.
Utilizando el valor predeterminado de 077 para UMASK significa que sólo el propietario
usuario tendrá ningún tipo de permiso para acceder a su directorio.UMASK será cubierto
con más detalle en un capítulo posterior.
USERGROUPS_ENAB sí
En distribuciones que cuentan con un grupo privado para cada usuario, como este
ejemplo CentOS muestra, la USERGROUPS_ENAB tendrá un valor de "sí". Si UPG no se
utiliza en la distribución, entonces esto tendrá un valor de "no"
.ENCRYPT_METHOD SHA512
El método de cifrado que se utiliza para cifrar las contraseñas de los usuarios en el archivo
/ etc / shadow. El ajuste ENCRYPT_METHOD anula la configuración MD5_CRYPT_ENAB
(véase la siguiente fila)
.MD5_CRYPT_ENAB no
Este ajuste obsoleta originalmente permitía al administrador especificar mediante el
cifrado de las contraseñas MD5 en lugar de la original de cifrado DES. Ahora se sustituyó
por el ajuste del ENCRYPT_METHOD
The above example represents a typical CentOS 6 distribution /etc/login.defs file with
its values. The following table describes each of these values:
Field Example Description

The directory in which the user's mail spool file will


MAIL_DIR /var/mail/spool
be created.

This setting determines the maximum number of


days that a user can continue to use the same
password. Since it defaults to 99999 days, or over
200 years, it effectively means users never have to
change their password.
PASS_MAX_DAYS 99999 Organizations with effective policies for maintaining
secure passwords commonly change this value to 60
or 30 days.
This setting affects the default setting of the
/etc/shadow file highlighted below:

bob:pw:15020:5:30:7:60:15050:
With this set to a default value of 0 (zero), the
shortest time that a user is required to keep a
password is zero days, which means that they can
immediately change a password that they have just
set.
If the PASS_MIN_DAYS value was set to 3 days,
PASS_MIN_DAYS 0
then after setting a new password, the user would
have to wait three days before they could change it
again.
This setting affects the default setting of the
/etc/shadow file highlighted below:

bob:pw:15020:3:30:7:60:15050:
This indicates the minimum number of characters
PASS_MIN_LEN 5
that a password must contain.
This is the default for the warning field. As a user
approaches the maximum number of days that they
can use their password, the system will check to see
if it is time to start warning the user about changing
PASS_WARN_AGE 7 their password at login.
This setting affects the default setting of the
/etc/shadow file highlighted below:

bob:pw:15020:3:30:7:60:15050:
The UID_MIN determines the first UID that will be
assigned to an ordinary user. Any user with a UID
UID_MIN 500
that would be less than this value would either be for
a system account or the root account.
A UID technically could have a value of over four
UID_MAX 60000 billion. For maximum compatibility it's recommended
to leave it at its default value of 60000.

GID _MIN 500 The GID _MIN determines the first GID that will be
assigned to an ordinary group. Any group with a GID
Field Example Description

that would be less than this value would either be for


a system group or the root group.
A GID like a UID could have a value of over four
billion. Whatever value you use for your UID_MAX,
GID _MAX 60000
should be used for GID_MAX in order to support
UPG.
The value of this determines whether or not a new
CREATE_HOME yes directory will be created for the user, when their
account is created.
This UMASK works at the time the user home
directory is being created; it will determine what the
default permissions will be on this directory. Using
the default value of 077 for UMASK means that only
UMASK 077 the user owner will have any kind of permission to
access their directory.
UMASK will be covered in more detail in a later
chapter.
In distributions that feature a private group for each
user, as this CentOS example shows, the
USERGROUPS_ENAByes USERGROUPS_ENAB will have a value of "yes". If
UPG is not used in the distribution, then this will have
a value of "no".
The encryption method that is used to encrypt the
users' passwords in the /etc/shadow file. The
ENCRYPT_METHOD SHA512
ENCRYPT_METHOD setting overrides the
MD5_CRYPT_ENAB setting (see next row).
This deprecated setting originally allowed the
administrator to specify using MD5 encryption of
MD5_CRYPT_ENAB no passwords instead of the original DES encryption. It
is now superseded by the setting of the
ENCRYPT_METHOD

14.8 Creación de un usuarioDurante el proceso de instalación, la mayoría de


los instaladores crearán un usuario normal y, o bien darle este usuario el
permiso para ejecutar comandos administrativos con sudo ni requiere la
contraseña de la cuenta de usuario root se configura como parte del proceso
de instalación. Esto significa que la mayoría de los sistemas Linux se pueden
configurar para permitir un solo sin privilegios (no root) de usuario para iniciar la
sesión, así como tener la capacidad de ejecutar con eficacia los comandos
como usuario root, ya sea directa o indirectamente.Si el equipo es para ser
utilizado por una sola persona, y luego tener una sola cuenta de usuario normal
puede ser suficiente. Sin embargo, si un equipo tiene que ser compartida por
varias personas, entonces es deseable tener una cuenta separada para cada
persona que lo utiliza. Hay varias ventajas a las personas que tienen sus
propias cuentas separadas:• Las cuentas pueden ser utilizados para permitir el
acceso selectivo a los archivos o servicios. Por ejemplo, el usuario de cada
cuenta tiene un directorio independiente que generalmente no es accesible
para los demás usuarios.• El comando sudo se puede configurar para otorgar la
capacidad de ejecutar órdenes administrativas selectas. Si los usuarios están
obligados a utilizar el comando sudo para ejecutar comandos administrativos,
el sistema registrará cuando los usuarios realizan estos comandos.• Cada
cuenta puede tener la pertenencia a grupos y derechos asociados a ella que
permite una mayor flexibilidad en la gestión.

14.8.1 Consideraciones CuentaCreación de una cuenta de usuario para su uso


con un sistema Linux puede exigir que se reúnen varias piezas de información.
Aunque todo lo que pueda ser requerida es el nombre de la cuenta, es posible
que también desea planear el UID, el grupo principal, los grupos
suplementarios, el directorio de inicio, el directorio esqueleto y la cáscara que
se utilizará. Al planificar estos valores, considere lo siguiente:Nombre de
usuario: El único argumento necesario para el comando useradd es el nombre
que desea que la cuenta tenga. Este nombre debe seguir las mismas pautas
discutidas anteriormente en este capítulo para obtener los nombres de grupo.
En resumen, debe ser de 32 caracteres o menos, comenzar con una letra
minúscula o guión y sólo debe contener letras minúsculas, números, guiones y
guiones bajos. Si el usuario necesita acceder a múltiples sistemas,
generalmente se recomienda tener el nombre de cuenta sea el mismo en esos
sistemas. El nombre de la cuenta debe ser único para cada
usuario.identificador de usuario (UID): Una vez que se crea un usuario con un
UID específico, el sistema en general, sólo aumentará en uno el UID para el
siguiente usuario que cree. Si conectado a una red con otros sistemas, es
posible que desee asegurarse de que este UID es el mismo en todos los
sistemas para ayudar a proporcionar un acceso consistente. La opción -u para
el comando useradd permite especificar el número UID. UID típicamente
pueden variar de cero a más de cuatro millones de dólares, pero para mayor
compatibilidad con los sistemas más antiguos, el valor UID recomendada
máxima es de 60.000.Como se mencionó anteriormente, el usuario root tiene
un identificador de usuario (UID) de 0, que es lo que hace que esa cuenta tiene
privilegios especiales. Cualquier cuenta con un UID de cero sería
efectivamente ser capaz de actuar como el "administrador".Cuentas del
sistema son cuentas generalmente utilizados para ejecutar servicios en
segundo plano (llamados demonios). Al no tener los servicios se ejecutan como
el usuario root, la cantidad de daño que se puede hacer con una cuenta de
servicio comprometida es limitado. Cuentas del sistema utilizados por los
servicios en general, utilizará UID que se encuentran en el rango de
"reservado". Una cuenta de sistema que es una excepción a esta regla es el
"nfsnobody" usuario, que tiene un UID de 65.534.La gama reservada utilizada
para las cuentas de servicio se ha ampliado con el tiempo. Originalmente, fue
por UID entre 1 y 99. A continuación, se expandió a estar entre 1 y 499. La
tendencia actual entre las distribuciones es que las cuentas del sistema estarán
cualquier cuenta que tenga un UID entre 1 y 999, pero el rango de 1 a 499
También está siendo utilizado comúnmente.Si está configurando un nuevo
sistema, es una buena práctica para comenzar sus UID no inferior a 1000. Esto
también tiene la ventaja de asegurar que tendrá UID suficientes disponibles
para muchos servicios del sistema y le dará la posibilidad de crear muchas
GIDs en el rango de "reservado".grupo primario: En distribuciones que cuentan
UPG, este grupo se creará automáticamente con un nombre GID y el grupo
que coincide con el nombre de UID y el usuario de la cuenta de usuario recién
creado. En distribuciones no usar UPG, el grupo principal será normalmente
por defecto el grupo "users" con un GID de 100. Para especificar un grupo
principal con el comando useradd, utilice la opción -g, ya sea con el nombre o
el GID del grupo.grupo (s) suplementaria: Si quieres hacer que el usuario de un
miembro de uno o más grupos suplementarios, la opción -G se puede utilizar
para especificar una lista separada por comas de nombres de grupos o
números separados.directorio de inicio: Por defecto, la mayoría de las
distribuciones crearán el directorio personal del usuario con el mismo nombre
que la cuenta de usuario bajo el / home. Por ejemplo, si la creación de una
cuenta de usuario llamada "sam", el directorio home nueva del usuario sería /
home / sam. Hay varias opciones para el comando useradd que puede afectar
a la creación del directorio de inicio del usuario:• La opción -b permite
especificar un directorio diferente en virtud del cual se creará el directorio home
del usuario. Por ejemplo: -b / test se traduciría en un directorio de / test / sam
para una cuenta de usuario llamada "sam".• La opción -d le permite especificar
ya sea un directorio existente o un nuevo directorio de inicio para crear para el
usuario. Esto debería ser una ruta completa para el directorio home del usuario.
Por ejemplo: -d / home / sam• La opción -m indica a useradd para crear el
directorio principal; normalmente no se necesita como este es el
comportamiento por defecto del comando useradd. Sin embargo, cuando se
utiliza la opción -k (ver más abajo) para especificar un directorio esqueleto
diferente, entonces es necesaria la opción -m.• La opción -M se utiliza para
especificar que el comando useradd que no debe crear el directorio
homedirectorio esqueleto: Por defecto, el contenido del directorio / etc / skel se
copian en el directorio home del usuario nuevo. Los archivos resultantes
también son propiedad del nuevo usuario. Mediante el uso de la opción -k con
el comando useradd, el contenido de un directorio diferente pueden utilizarse
para rellenar el directorio personal del nuevo usuario. Al especificar el directorio
esqueleto con la opción -k, la opción -m se debe usar o bien el comando
useradd fallará con un error que indica, "bandera -k sólo se permite con la
bandera -m."shell: Si bien no se especifica el shell por defecto en el archivo /
etc / default / useradd, también se puede anular con la opción useradd -s en el
momento de creación de la cuenta. Más tarde, el administrador puede utilizar la
opción usermod -s para cambiar la carcasa o el usuario puede cambiar su shell
con el comando chsh. Es común para especificar el / sbin / nologin cáscara de
cuentas para ser usadas como cuentas del sistema.Comentario: El campo de
comentarios, originalmente llamado el campo de General Electric Integral del
Sistema Operativo (GECOS), se suele utilizar para mantener el nombre
completo del usuario. Muchos programas gráficos de acceso muestran el valor
de este campo en lugar del nombre de la cuenta. La opción -c de ambos
comandos useradd y usermod permite a especificar el valor de este campo

14.8.1 Account Considerations


Creating a user account for use with a Linux system may require that you gather several
pieces of information. While all that may be required is the account name, you may also
want to plan the UID, the primary group, the supplementary groups, the home directory, the
skeleton directory and the shell to be used. When planning these values, consider the
following:
user name: The only required argument for the useradd command is the name that you
want the account to have. This name should follow the same guidelines discussed earlier in
this chapter for group names. To summarize, it should be 32 characters or less, start with a
lowercase letter or underscore and then should only contain lowercase letters, numbers,
hyphens and underscores. If the user needs to access multiple systems, it is usually
recommended to have the account name be the same on those systems. The account
name must be unique for each user.
user identifier (UID): Once you create a user with a specific UID, the system will generally
just increment by one the UID for the next user that you create. If attached to a network
with other systems, you may want to ensure that this UID is the same on all systems to
help provide consistent access. The -u option to the useradd command allows you to
specify the UID number. UIDs typically can range anywhere from zero to over four billion,
but for greatest compatibility with older systems, the maximum recommended UID value is
60,000.
As previously discussed, the root user has a user identifier (UID) of 0, which is what makes
that account have special privileges. Any account with an UID of zero would effectively be
able to act as the "administrator".
System accounts are accounts generally used to run background services (called
daemons). By not having services run as the root user, the amount of damage that can be
done with a compromised service account is limited. System accounts used by services will
generally use UIDs that are in the "reserved" range. One system account that is an
exception to this rule is the user "nfsnobody", which has an UID of 65534.
The reserved range used for service accounts has expanded over time. Originally, it was
for UIDs between 1 and 99. Then, it expanded to be between 1 and 499. The current trend
among distributions is that system accounts will be any account that has a UID between 1
and 999, but the range 1-499 is also still commonly used.
If you are setting up a new system, it is a good practice to start your UIDs no lower than
1000. This also has the advantage of insuring you will have sufficient UIDs available for
many system services and give you the ability to create many GIDs in the "reserved" range.
primary group: In distributions which feature UPG, this group will be created automatically
with a GID and group name that matches the UID and user name of the newly created user
account. In distributions not using UPG, the primary group will ordinarily default to the
"users" group with a GID of 100. To specify a primary group with the useradd command,
use the -g option with either the name or GID of the group.
supplementary group(s): If you want to make the user a member of one or more
supplementary groups, the -G option can be used to specify a comma separated list of
group names or numbers.
home directory: By default, most distributions will create the user's home directory with the
same name as the user account underneath the /home. For example, if creating a user
account named "sam", the user's new home directory would be /home/sam. There are
several options for the useradd command that can affect creating the user's home
directory:

 The -b option allows you to specify a different directory under which the
user's home directory will be created. For example: -b /test would result
in a home directory of /test/sam for a user account named "sam".
 The -d option allows you to specify either an existing directory or a new
home directory to create for the user. This should be a full path for the
user's home directory. For example: -d /home/sam
 The -m option tells useradd to create the home directory; is not normally
needed as this is the default behavior of the useradd command. However,
when using the -k option (see below) to specify a different skeleton
directory, then the -m option is needed.
 The -M option is used to specify to the useradd command that it should not
create the home directory

skeleton directory: By default, the contents of the /etc/skel directory are copied into the
new user's home directory. The resulting files are also owned by the new user. By using the
-k option with the useradd command, the contents of a different directory can be used to
populate a new user's home directory. When specifying the skeleton directory with the -k
option, the -m option must be used or else the useradd command will fail with an error
stating, "-k flag is only allowed with the -m flag."
shell: While the default shell is specified in the /etc/default/useradd file, it also can be
overridden with the useradd -s option at the time of account creation. Later, the
administrator can use the usermod -s option to change the shell or the user can change
their shell with the chsh command. It is common to specify the /sbin/nologin shell for
accounts to be used as system accounts.
comment: The comment field, originally called the General Electric Comprehensive
Operating System (GECOS) field, is typically used to hold the user's full name. Many
graphical login programs display this field's value instead of the account name. The -c
option of both useradd and usermod commands allows for the value of this field to be
specified.

14.8.2 Comando useradd

Una vez que haya verificado que los valores por defecto será utilizada y que ha
reunido la información sobre el usuario, entonces usted está listo para crear
una cuenta de usuario. Un ejemplo de un comando useradd utilizando algunas
opciones se vería como la siguiente

[root@localhost ~]# useradd -u 1000 -g users -G wheel,research -


c 'Jane Doe' jane

Este ejemplo del comando useradd crea un usuario con un UID de 1000, un
grupo principal de "usuarios", membresías suplementarios en "rueda" y grupos
"de investigación", un comentario de "Jane Doe" y un nombre de cuenta de
"jane" . La información sobre la cuenta de usuario "jane" se añade
automáticamente a la / etc / etc / archivos / shadow passwd y, mientras que la
información sobre el acceso del grupo suplementario de jane se añade
automáticamente a la / etc / group y etc / archivos / gshadow . Por ejemplo:
This example of the useradd command creates a user with a UID of 1000, a primary group
of "users", supplementary memberships in "wheel" and "research" groups, a comment of
"Jane Doe" and an account name of "jane".
The information about the "jane" user account would be automatically added to the
/etc/passwd and /etc/shadow files, while the information about jane's supplemental
group access would be automatically added to the /etc/group and /etc/gshadow files.
For example:
Note that the account doesn't have a valid password yet!
Tenga en cuenta que la cuenta no tiene una contraseña válida todavía!
Además, el archivo de correo spool / var / spool / mail / jane se crearía, el
directorio / home / jane se crearían con permisos sólo se permite el "jane"
acceso del usuario y el contenido del directorio / etc / skel habría copiado en el
directorio
Note that the account doesn't have a valid password yet!
In addition, the mail spool file /var/spool/mail/jane would be created, the /home/jane
directory would be created with permissions only permitting the "jane" user access and the
contents of the /etc/skel directory would be copied into the directory:

14.9 La elección de una contraseñaElegir una buena contraseña no es una


tarea fácil, pero es fundamental que se haga correctamente o la seguridad de
una cuenta (tal vez todo el sistema) podría verse comprometida. Elegir una
buena contraseña es sólo un comienzo; tienes que ser muy cuidadoso con su
contraseña para que no se revela a otras personas. Nunca se debe decir a
nadie su contraseña y no dejar que nadie vea que escriba la contraseña. Si
usted decide escribir la contraseña, entonces usted debe almacenar de forma
segura en un lugar como una caja de seguridad o caja fuerte.Es fácil hacer una
mala contraseña! Si utiliza cualquier información de su contraseña que se
relaciona con usted, entonces esta información también puede ser conocido o
descubierto por los demás, lo que resulta en su contraseña sean
comprometidos fácilmente. Usted contraseña no debe contener información
acerca de usted o alguien que usted conoce, como por ejemplo
:•Nombre de pila•segundo nombre•apellido• cumpleaños• teléfono• nombres de
mascotas•Licencia de conducir•seguridad SocialExisten numerosos factores a
considerar cuando usted está tratando de elegir una contraseña para una
cuenta:• Duración: El archivo /etc/login.defs permite al administrador especificar
la longitud mínima de la contraseña. Mientras algunos creen que cuanto mayor
sea la contraseña, mejor, esto no es realmente correcto. El problema con las
contraseñas que son demasiado largos, es que no se recuerdan con facilidad y,
como resultado, a menudo se escriben en un lugar donde fácilmente se pueden
encontrar y comprometidas.
• Composición: Una buena contraseña debe estar compuesto por una
combinación de caracteres alfabéticos, numéricos y simbólicos.
• Vida útil: La cantidad de tiempo que una contraseña se puede utilizar al
máximo debe ser limitada por varias razones:• Si una cuenta se ve
comprometida y el tiempo que la contraseña es válida es limitado, el intruso en
última instancia, perder el acceso ya que la contraseña con el tiempo pierde su
validez.
• Si no se utiliza una cuenta, entonces se puede de forma automática se
desactivará cuando la contraseña ya no es válida.• Si los atacantes intentan
una "fuerza bruta" ataque, tratando cada contraseña posible, entonces la
contraseña se puede cambiar antes de que el ataque puede tener éxito.Sin
embargo, lo que requiere un usuario cambiar su contraseña a menudo puede
plantear problemas de seguridad, incluyendo:• La calidad de la contraseña de
los usuarios elige pudieran sufrir
.• El usuario puede comenzar a escribir sus contraseñas en papel, lo que
aumenta la posibilidad de que la contraseña se puede descubrir.
• cuentas de usuario utilizadas Pocas veces pueden llegar a ser vencida y
requieren atención administrativa para restablecer.Las opiniones varían sobre
la frecuencia con los usuarios deberían ser forzados a cambiar sus
contraseñas. Para las cuentas de alta sensibilidad, se recomienda cambiar las
contraseñas con mayor frecuencia, por ejemplo, cada 30 días. Por otro lado,
para las cuentas que no son críticas sin ningún acceso a información sensible,
hay menos necesidad de cambios frecuentes. Para las cuentas con un riesgo
mínimo, que tiene una duración de 90 días sería considerado más razonable
14.9 Choosing a Password
Choosing a good password is not an easy task, but it is critical that it is done properly or the
security of an account (perhaps the entire system) could be compromised. Picking a good
password is only a start; you need to be very careful with your password so that it is not
revealed to other people. You should never tell anyone your password and never let
anyone see you type your password. If you do choose to write down your password, then
you should store it securely in a place like a safe or safe deposit box.
It's easy to make a bad password! If you use any information in your password that is
related to you, then this information can also be known or discovered by others, resulting in
your password being easily compromised. You password should never contain information
about you or anyone you know, such as:

 first name
 middle name
 last name
 birthday
 phone
 pet names
 drivers license
 social security

There are numerous factors to consider when you are trying to choose a password for an
account:
 Length: The /etc/login.defs file allows the administrator to specify the
minimum length of the password. While some believe that the longer the
password, the better, this isn't really correct. The problem with passwords
that are too long is that they are not easily remembered and, as a result,
they are often written down in a place where they can easily be found and
compromised.
 Composition: A good password should be composed of a combination of
alphabetic, numeric and symbolic characters.
 Lifetime: The amount of time that a password can be used at maximum
should be limited for several reasons:
 If an account is compromised and the time that the password is
valid is limited, the intruder will ultimately lose access since the
password will eventually become invalid.
 If an account is not being used, then it can automatically be
disabled when the password is no longer valid.
 If attackers are attempting a "brute-force" attack by trying every
possible password, then the password can be changed before the
attack can succeed.

However, requiring a user to change their password too often might pose
security problems, including:

 The quality of the password the user chooses might suffer.


 The user may start writing their password on paper, increasing the
possibility that the password may be discovered.
 Seldom used user accounts may become expired and require
administrative attention to reset.

Opinions vary about how often users should be forced to change their passwords. For
highly sensitive accounts, it is recommended to change passwords more frequently, such
as every 30 days. On the other hand, for non-critical accounts without any access to
sensitive information, there is less need for frequent change. For accounts with minimal
risk, having a duration of 90 days would be considered more reasonable.
14.10 Establecer una contraseña de usuario Hay varias maneras para que una
contraseña de usuario para ser cambiados: el usuario puede ejecutar el
comando passwd, el administrador puede ejecutar el comando passwd
proporcionando el nombre de usuario como argumento y herramientas gráficas
también están disponibles. El administrador puede utilizar el comando passwd
para establecer la contraseña, ya sea inicial o cambiar la contraseña de la
cuenta. Por ejemplo, si el administrador ha creado la cuenta de "Jane", passwd
luego ejecutar jane proporcionará al administrador un mensaje para establecer
la contraseña para la cuenta de jane. Si se completa con éxito, entonces el
archivo / etc / shadow se actualizará con la nueva contraseña del usuario.
Mientras que los usuarios regulares deben seguir muchas reglas de
contraseña, el usuario root sólo tiene que seguir una regla: la contraseña no
puede dejarse en blanco. Todas las demás reglas de contraseña que el usuario
root viola simplemente resultará en una advertencia que se imprimen en la
pantalla y la regla no está forzada
Assuming that the administrator has set a password for a user account, the user can
Suponiendo que el administrador ha configurado una contraseña para una cuenta de
usuario, el usuario puede iniciar sesión con el nombre de cuenta y contraseña. Después de
que el usuario abre un terminal que puede ejecutar el comando passwd sin argumentos
para cambiar su propia contraseña. Se pide su contraseña actual y luego están pedirá que
introduzca la nueva contraseña dos veces. Como un usuario normal, puede ser difícil
establecer una contraseña válida porque todas las reglas de la contraseña se deben
seguir. El usuario es normalmente permitió tres intentos para proporcionar una contraseña
válida antes de que las salidas de comando passwd con un error. El uso de los privilegios
de usuario root, las contraseñas encriptadas y otra información relacionada con la
contraseña pueden ser vistos por ver el archivo / etc / shadow. Recordemos que los
usuarios normales no pueden ver el contenido de este archivo.

14.11 Uso del comando chage Aunque no aparece en la lista como un comando que usted
necesita saber sobre los objetivos Linux Essentials, el comando chage ofrece muchas
opciones para el manejo de la información de contraseña de envejecimiento que se
encuentra en el archivo / etc / shadow. He aquí un resumen de las opciones chage
-I Lista --list la información de cuenta del envejecimiento -d LAST_DAY --lastday
LAST_DAY Ajuste la fecha del último cambio de contraseña a LAST_DAY -E
EXPIRE_DATE --expiredate EXPIRE_DATE Set cuenta expirar el EXPIRE_DATE -h --help
Muestra la ayuda para chage Cuenta -I INACTIVO --inactive INACTIVO Set para permitir
inicio de sesión para días inactivos después de que expire la contraseña -m MIN_DAYS --
mindays MIN_DAYS Establecer el número mínimo de días antes de la contraseña se
puede cambiar a MIN_DAYS -M MAX_DAYS --maxdays MAX_DAYS Establezca el
número máximo de días antes de que una contraseña debe ser cambiado a MAX_DAYS
WARN_DAYS -W --warndays WARN_DAYS Establece el número de días antes de que
caduque la contraseña para comenzar a mostrar una advertencia a WARN_DAYS Un buen
ejemplo del comando chage sería cambiar el número máximo de días que la contraseña
de un individuo es válida a ser de 60 días: [root @ localhost ~] # chage -M 60 jane
Short option Long option Description

-I --list List the account aging information

Set the date of the last password change to


-d LAST_DAY --lastday LAST_DAY
LAST_DAY

-E --expiredate
Set account to expire on EXPIRE_DATE
EXPIRE_DATE EXPIRE_DATE

-h --help Show the help for chage

Set account to permit login for INACTIVE days after


-I INACTIVE --inactive INACTIVE
password expires
Short option Long option Description

--mindays Set the minimum number of days before password


-m MIN_DAYS
MIN_DAYS can be changed to MIN_DAYS

--maxdays Set the maximum number of days before a password


-M MAX_DAYS
MAX_DAYS should be changed to MAX_DAYS

-W --warndays Set the number of days before a password expires to


WARN_DAYS WARN_DAYS start displaying a warning to WARN_DAYS

A good example of the chage command would be to change the maximum number of days
that an individual's password is valid to be 60 days:

[root@localhost ~]# chage -M 60 jane

14.12 Modificación de un usuarioAntes de realizar cambios en una cuenta de usuario,


entender que algunos comandos no modificarán con éxito una cuenta de usuario si el
usuario está conectado actualmente (por ejemplo, cuando el cambio de nombre de inicio
de sesión del usuario).Otros cambios que usted podría hacer que no serán eficaces si el
usuario está conectado, pero entrarán en vigor tan pronto como el usuario se desconecta y
luego se conecta de nuevo. Por ejemplo, si va a modificar la pertenencia a grupos, a
continuación, las nuevas membresías no estarán disponibles para el usuario hasta que la
próxima vez que el usuario inicie sesión.En cualquier caso, es útil saber cómo utilizar las
que, comandos w y el último, para que puedas estar al tanto de quién está registrado en el
sistema, ya que esto puede afectar los cambios que desea hacer a un usuario.La OMS y la
w comandos fueron discutidos en un capítulo anterior. Ambos comandos le permiten ver
que ha iniciado sesión en el sistema. El comando w es en realidad el más detallado de los
dos, ya que muestra el tiempo de actividad y la carga de la información del sistema, así
como lo que procesar cada usuario está en ejecución.El último comando es ligeramente
diferente de la OMS y de w comandos. Por defecto, se muestra también el nombre de
usuario, terminal, y el lugar de inicio de sesión, no sólo de las actuales sesiones de inicio
de sesión, pero las sesiones anteriores también. A diferencia de la OMS y de w comandos,
se mostrará la fecha / hora que el usuario ha iniciado sesión en el sistema. Si el usuario se
ha desconectado del sistema, a continuación, se mostrará el tiempo total que el usuario ha
iniciado sesión en el pasado o que aparezca "todavía conectado".El último comando leerá
toda la historia de inicio de sesión del directorio / var / log archivo / wtmp y mostrar todos
los inicios de sesión y reiniciar los registros de forma predeterminada. Un interesante
detalle de los registros de reinicio es que muestra la versión del kernel de Linux que se
inicia en lugar de la ubicación de inicio de sesión.Al proporcionar un nombre de usuario o
una tty (terminal) nombre como argumento, el comando sólo mostrará los registros que
coincidan con ese nombre. Si usted necesita para saber que estaba conectado a una
fecha y hora determinada, el último comando puede mostrar que si se utiliza la opción -t
para especificar que la fecha y hora
14.12 Modifying a User
Before you make changes to a user account, understand that some commands will not
successfully modify a user account if the user is currently logged in (such as when
changing the user's login name).
Other changes that you might make won't be effective if the user is logged in, but will
become effective as soon as the user logs out and then logs back in again. For example, if
you are modifying group memberships, then the new memberships will be unavailable to
the user until the next time the user logs in.
In either case, it is helpful to know how to use the who, w and last commands, so you can
be aware of who is logged into the system, as this may impact the changes that you want
to make to a user.
The who and w commands were discussed in a previous chapter. Both commands allow
you to see who is currently logged into the system. The w command is actually the more
verbose of the two, as it shows the system's uptime and load information as well as what
process each user is running.
The command last is slightly different from the who and w commands. By default, it also
shows the user name, terminal, and login location, not just of the current login sessions, but
previous sessions as well. Unlike the who and w commands, it will display the date/time the
user logged into the system. If the user has logged off the system, then it will display the
total time the user spent logged in or it will display "still logged in".
The last command will read the entire login history from the /var/log/wtmp file and
display all logins and reboot records by default. An interesting detail of the reboot records is
that it displays the version of the Linux kernel that was booted instead of the login location.
By providing a user name or a tty (terminal) name as an argument, the command will only
show records that match that name. If you need to find out who was logged in as of a
particular date and time, the last command can display that if you use the -t option to
specify that date and time.
14.12.1 Comando usermodEl comando usermod ofrece muchas opciones para modificar
una cuenta de usuario existente. Usted debe notar que la mayoría de estas opciones
también están disponibles con el comando useradd en el momento de crear la cuenta. En
el siguiente cuadro se presenta un resumen de las opciones usermod:Opción CortoOpción
LargoDescripciónCOMENTARIO -c Establece el valor de la GECOS o comentario campo
para comentar.-d HOME_DIR --home HOME_DIR Establece un nuevo directorio de inicio
para el usuario.-e EXPIRE_DATE --expiredate EXPIRE_DATE Establecer fecha de
caducidad de la cuenta a EXPIRE_DATE.-f INACTIVO --inactive INACTIVO Set cuenta
para permitir el inicio de sesión para días inactivos después de que expire la
contraseña.GRUPO -g --gid GRUPO Conjunto GRUPO como grupo primario.GRUPOS
GRUPOS -G --groups Establecer grupos complementarios a una lista especificada en
grupos.-a --append Append grupos complementarios de los usuarios con los especificados
por -G.-h --help Muestra la ayuda para usermod.-l NEW_LOGIN --login NEW_LOGIN
Cambie el nombre de inicio de sesión del usuario.-L --lock Bloquear la cuenta de usuario.-s
SHELL --shell SHELL Especifique el shell de inicio de sesión para la cuenta.-u NEW_UID -
-uid NEW_UID Especifique UID del usuario para ser NEW_UID.-U --unlock Desbloquear la
cuenta de usuario.Varias de estas opciones son dignos de discusión debido a su impacto
en la gestión de usuarios. Puede ser muy problemático para cambiar UID del usuario con
la opción -u, como quedarán huérfanos de los archivos propiedad del usuario. Por otro
lado, la especificación de un nuevo nombre de inicio de sesión para el usuario con -l no
causa los archivos que se quedaron huérfanos.Eliminación de un usuario con el comando
userdel (véase la sección siguiente) Puede huérfano o eliminar los archivos del usuario en
el sistema. En lugar de eliminar la cuenta, otra opción es bloquear la cuenta con la opción -
L del comando usermod. Bloqueo de una cuenta previene la cuenta desde la que se utiliza,
pero la propiedad de los archivos permanece.Hay algunas cosas importantes que debe
saber sobre el manejo de los grupos complementarios. Si utiliza la opción -G sin la opción -
a, entonces debe listar todos los grupos a los que pertenecerían al usuario. El uso de la
opción -G el único que puede conducir a la eliminación accidental de un usuario de todos
los antiguos grupos suplementarios que el usuario pertenecía.Si utiliza la opción -a con -G
entonces es suficiente con una lista de los nuevos grupos a los que pertenecerían al
usuario. Por ejemplo, si el usuario "jane" pertenece actualmente a la "rueda" y grupos de
"investigación", a continuación, añadir su cuenta al grupo de desarrollo, ejecute el
siguiente comando:[root @ localhost ~] # usermod -ag desarrollo jane

14.12.1 usermod Command


The usermod command offers many options for modifying an existing user account. You
should notice that most of these options are also available with the useradd command at
the time you create the account. The following chart provides a summary of the usermod
options:
Short option Long option Description

Sets the value of the GECOS or comment field to


-c COMMENT
COMMENT.

-d HOME_DIR --home HOME_DIR Sets a new home directory for the user.

-e --expiredate
Set account expiration date to EXPIRE_DATE.
EXPIRE_DATE EXPIRE_DATE

Set account to permit login for INACTIVE days


-f INACTIVE --inactive INACTIVE
after password expires.

-g GROUP --gid GROUP Set GROUP as primary group.

Set supplementary groups to a list specified in


-G GROUPS --groups GROUPS
GROUPS.

Append the user's supplemental groups with those


-a --append
specified by -G.

-h --help Show the help for usermod.

-l NEW_LOGIN --login NEW_LOGIN Change the user's login name.

-L --lock Lock the user account.

-s SHELL --shell SHELL Specify the login shell for the account.

-u NEW_UID --uid NEW_UID Specify the user's UID to be NEW_UID.

-U --unlock Unlock the user account.

Several of these options are worthy of discussion because of how they impact user
management. It can be very problematic to change the user's UID with the -u option, as
any files owned by the user will be orphaned. On the other hand, specifying a new login
name for the user with -l does not cause the files to be orphaned.
Deleting a user with the userdel command (see the next section) can either orphan or
remove the user's files on the system. Instead of deleting the account, another choice is to
lock the account with the -L option for the usermod command. Locking an account prevents
the account from being used, but ownership of the files remains.
There are some important things to know about managing the supplementary groups. If you
use the -G option without the -a option, then you must list all the groups to which the user
would belong. Using the -G option alone can lead to accidentally removing a user from all
the former supplemental groups that the user belonged to.
If you use the -a option with -G then you only have to list the new groups to which the user
would belong. For example, if the user "jane" currently belongs to the "wheel" and
"research" groups, then to add her account to the development group, execute the
following command:

[root@localhost ~]# usermod -aG development jane

14.13 Eliminación de un usuarioCuando se elimina una cuenta de usuario, también debe


decidir si desea eliminar el directorio home del usuario. Archivos del usuario pueden ser
importantes para su organización e incluso se puede tener requisitos legales para
mantener los datos durante un determinado período de tiempo, así que ten cuidado de no
tomar esta decisión a la ligera. Además, a menos que haya hecho copias de seguridad de
los datos, una vez que haya ejecutado el comando para borrar el usuario y sus archivos,
no hay inversión de la acción.Para eliminar el usuario "jane" sin borrar el directorio home (/
home / jane) del usuario, puede ejecutar:[root @ localhost ~] # userdel janeTenga en
cuenta que la eliminación de un usuario sin borrar su directorio significa que los archivos
del directorio home del usuario de ahora quedarán huérfanos y estos archivos serán
propiedad exclusiva de su anterior UID y GID.Para eliminar el usuario "jane" y eliminar el
directorio / home / jane así, utilice la opción -r:[root @ localhost ~] # userdel -r
jane¡Advertencia! El comando anterior sólo eliminará los archivos del usuario en su
directorio personal y su cola de correo. Si el usuario posee otros archivos fuera de su
directorio de inicio, a continuación, los archivos seguirán existiendo como archivos
huérfanos.

14.13 Delete a User


When you delete a user account, you also need to decide whether to delete the user's
home directory. The user's files may be important for your organization and you may even
have legal requirements to keep the data for a certain amount of time, so be careful not to
make this decision lightly. Also, unless you've made backup copies of the data, once you've
executed the command to delete the user and their files, there is no reversing the action.
To delete the user "jane" without deleting the user's home directory (/home/jane), you
could execute:

[root@localhost ~]# userdel jane

Beware that deleting a user without deleting their home directory means that user's home
directory's files will now be orphaned and these files will be owned solely by their former
UID and GID.
To delete the user "jane" and delete the /home/jane directory as well, use the -r option:

[root@localhost ~]# userdel -r jane


Warning! The above command will only delete the user's files in their home directory and
their mail spool. If the user owns other files outside of their home directory, then those files
will continue to exist as orphaned files.

You might also like