Professional Documents
Culture Documents
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.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: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
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.
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:
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:
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
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:
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
Este ajuste afecta a la configuración por defecto del archivo / etc / passwd
destacan a continuación:
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
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
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.
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
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:
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:
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
-E --expiredate
Set account to expire on EXPIRE_DATE
EXPIRE_DATE EXPIRE_DATE
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:
-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
-s SHELL --shell SHELL Specify the login shell for the 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:
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: