Omitir Vínculos de navegación | |
Salir de la Vista de impresión | |
Gestión de las cuentas de usuario y los entornos de usuario en Oracle Solaris 11.1 Oracle Solaris 11.1 Information Library (Español) |
1. Gestión de cuentas de usuario y entornos de usuario (descripción general)
Novedades y cambios en la gestión de cuentas de usuario y entornos de usuario
Cambios de seguridad que afectan la gestión de cuentas de usuario
Introducción a la interfaz gráfica de usuario de User Manager
Editor administrativo (pfedit)
Cambios en el comando groupadd
Notificación de recuento de inicios de sesión fallidos
¿Qué son las cuentas de usuario y los grupos?
Componentes de cuentas de usuario
Nombres de usuario (inicio de sesión)
Uso de ID de usuario e ID de grupo de gran tamaño
Entorno de trabajo del usuario
Directrices para asignar nombres de usuario, ID de usuario e ID de grupo
Dónde se almacena la información de cuentas de usuario y grupos
Comandos para obtener información de cuenta de usuario
Comandos que se utilizan para la gestión de usuarios, roles y grupos
Personalización de un entorno de trabajo del usuario
Uso de archivos de inicialización de sitio
Cómo evitar referencias de sistema local
Historial de shells bash y ksh93
Variables de entorno de shell bash y shell ksh93
Personalización del shell Bash
Configuración de directrices de ruta
Variables de configuración regional
Permisos de archivo predeterminados (umask)
Personalización de un archivo de inicialización de usuario
2. Gestión de cuentas de usuario mediante la interfaz de línea de comandos (tareas)
La siguiente información se describe en esta sección:
Una tarea de administración del sistema básica es configurar una cuenta de usuario para cada usuario en un sitio. Una cuenta de usuario típica incluye la información que necesita un usuario para iniciar sesión y utilizar un sistema, sin tener la contraseña root del sistema. Los componentes de cuentas de usuario se describen en Componentes de cuentas de usuario.
Al configurar una cuenta de usuario, puede agregar el usuario a un grupo de usuarios predefinido. Un uso típico de grupos es configurar permisos de grupo en un archivo y un directorio, lo que permite el acceso sólo a los usuarios que forman parte de ese grupo.
Por ejemplo, puede tener un directorio que contenga archivos confidenciales a los que sólo unos pocos usuarios deberían tener acceso. Puede configurar un grupo denominado topsecret que incluya los usuarios que trabajan en el proyecto topsecret. Además, puede configurar los archivos topsecret con permiso de lectura para el grupo topsecret. De esta manera, sólo los usuarios del grupo topsecret podrán leer los archivos.
Un tipo especial de cuenta de usuario, denominado rol, brinda a los usuarios seleccionados privilegios especiales. Para obtener más información, consulte Control de acceso basado en roles (descripción general) de Administración de Oracle Solaris 11.1: servicios de seguridad.
En las siguientes secciones, se describen varios componentes de una cuenta de usuario.
Los nombres de usuario, también denominados nombres de inicio de sesión, permiten a los usuarios acceder a sus propios sistemas y sistemas remotos que tengan los privilegios de acceso apropiados. Debe seleccionar un nombre de usuario para cada cuenta de usuario que cree.
Considere establecer una manera estándar de asignar nombres de usuario para facilitar su seguimiento. Además, los nombres deben ser fáciles para que los usuarios los recuerden. Un esquema simple para seleccionar un nombre de usuario es usar la inicial del primer nombre y las siete primeras letras del apellido del usuario. Por ejemplo, Ziggy Ignatz sería zignatz. Si este esquema da como resultado nombres duplicados, puede utilizar la primera inicial, la inicial del segundo nombre y los seis primeros caracteres del apellido del usuario. Por ejemplo, Ziggy Top Ignatz se convierte en ztignatz.
Si este esquema sigue dando como resultando nombres duplicados, tenga en cuenta el siguiente esquema para crear un nombre de usuario:
La primera inicial, la inicial del segundo nombre, los primeros cinco caracteres del apellido del usuario
El número 1, 2 o 3, y así sucesivamente hasta tener un nombre único
Nota - Cada nuevo nombre de usuario debe ser distinto de cualquier alias de correo conocido por el sistema o el dominio NIS. De lo contrario, el correo podría ser entregado al alias en lugar de al usuario real.
Para obtener directrices detalladas sobre la configuración de nombres (inicio de sesión) de usuario, consulte Directrices para asignar nombres de usuario, ID de usuario e ID de grupo.
Hay un número de identificación de usuario (UID) asociado con cada nombre de usuario. El número UID identifica el nombre de usuario para cualquier sistema en el que el usuario intenta iniciar la sesión. Y los sistemas utilizan el número UID para identificar los propietarios de los archivos y directorios. Si crea cuentas de usuario para una sola persona en un número de sistemas diferentes, utilice siempre el mismo nombre de usuario y número de ID. De ese modo, el usuario puede mover fácilmente archivos entre sistemas sin problemas de titularidad.
Los números UID deben ser números completos menores o iguales que 2147483647. Los números UID son necesarios para cuentas de usuario normales y cuentas del sistema especiales. La siguiente tabla muestra los números UID que están reservados para las cuentas de usuario y las cuentas del sistema.
Tabla 1-1 Números UID reservados
|
No asigne UID de 0 a 99. Estos UID están reservados para la asignación por Oracle Solaris. Por definición, root siempre tiene un UID 0, daemon tiene un UID 1 y pseudo usuario bin tiene un UID 2. Además, debería ofrecer a inicios de sesión uucp e inicios de sesión de pseudo usuario, como who, tty y ttytype, UID bajos para que queden al principio del archivo passwd.
Para obtener directrices adicionales sobre la configuración de UID, consulte Directrices para asignar nombres de usuario, ID de usuario e ID de grupo.
Como con nombres de usuario (inicio de sesión), debe adoptar un esquema para asignar números UID únicos. Algunas compañías asignan números de empleado únicos. A continuación, los administradores agregan un número al número de empleado para crear un número UID único para cada empleado.
Para minimizar riesgos de seguridad, debería evitar volver a utilizar los UID de cuentas suprimidas. Si debe reutilizar un UID, "empiece desde 0" para que el nuevo usuario no se vea afectado por conjuntos de atributos de un antiguo usuario. Por ejemplo, a un antiguo usuario se le pudo haber denegado el acceso a una impresora por estar en una lista de denegación de impresora. Sin embargo, ese atributo puede ser inapropiado para el nuevo usuario.
UID e ID de grupo (GID) pueden asignarse hasta el valor máximo de un entero firmado o 2147483647.
La siguiente tabla describe limitaciones de UID y GID.
Tabla 1-2 Resumen de limitaciones de UID y GID de gran tamaño
|
Un grupo es una recopilación de usuarios que pueden compartir archivos y otros recursos del sistema. Por ejemplo, usuarios que trabajan en el mismo proyecto podrían formarse en un grupo. Un grupo es conocido tradicionalmente como un grupo UNIX.
Cada grupo debe tener un nombre, un número de identificación de grupo (GID) y una lista de nombres de usuario que pertenecen al grupo. Un número GID identifica el grupo internamente para el sistema.
Los dos tipos de grupos al que un usuario puede pertenecer son los siguientes:
Grupo primario – Especifica un grupo que el sistema operativo asigna a archivos creados por los usuarios. Cada usuario debe pertenecer a un grupo primario.
Grupos suplementarios – Especifica uno o más grupos a los que el usuario también pertenece. Los usuarios pueden pertenecer a hasta 1024 grupos suplementarios.
Para obtener directrices detalladas sobre la configuración de nombres de grupo, consulte Directrices para asignar nombres de usuario, ID de usuario e ID de grupo.
En ocasiones, un grupo secundario del usuario no es importante. Por ejemplo, la propiedad de archivos reflejar el grupo primario y no un grupo secundario. Otras aplicaciones, sin embargo, puedan depender de pertenencias a grupos secundarios del usuario. Por ejemplo, un usuario tiene que ser un miembro del grupo sysadmin (grupo 14) para utilizar el software Admintool en las versiones anteriores de Solaris. Sin embargo, no importa si el grupo 14 es el grupo primario actual del usuario.
El comando groups enumera la lista de grupos a los que pertenece un usuario. Un usuario puede tener solamente un grupo primario a la vez. Sin embargo, un usuario puede cambiar temporalmente el grupo primario del usuario, con el comando newgrp, para cualquier otro grupo del que el usuario es miembro.
Al agregar una cuenta de usuario, debe asignar un grupo primario a un usuario o aceptar el grupo predeterminado, staff (grupo 10). El grupo primario ya debería existir. Si el grupo primario no existe, especifique el grupo por número GID. Los nombres de usuario no se agregan a los grupos primarios. Si los nombres de usuario se agregaron a grupos primarios, la lista podría llegar a ser demasiado larga. Antes de poder asignar usuarios a un nuevo grupo secundario, debe crear el grupo y asignarle un número GID.
Los grupos pueden ser locales para un sistema o gestionados mediante un servicio de nombres. Para simplificar la administración de grupos, debe utilizar un servicio de nombres, como NIS o un servicio de directorio, como LDAP. Estos servicios permiten gestionar de manera centralizada la pertenencia a los grupos.
Puede especificar una contraseña para un usuario cuando agrega el usuario. O bien, puede forzar al usuario a que especifique una contraseña cuando inicia sesión por primera vez en el sistema. Si bien los nombres de usuario son de dominio público, las contraseñas deben mantenerse en secreto y sólo deben ser conocidas por los usuarios. Se debe asignar una contraseña a cada cuenta de usuario.
Las contraseñas de usuario deben cumplir con la siguiente sintaxis:
La longitud de la contraseña debe coincidir al menos con el valor identificado por la variable PASSLENGTH en el archivo /etc/passwd. De manera predeterminada, este valor se define en 6.
En esta versión, el algoritmo de hash de contraseña predeterminado ha cambiado a SHA256. Como resultado, ya no hay una limitación de ocho caracteres para las contraseñas de usuario, como en las versiones anteriores de Oracle Solaris. La limitación de ocho caracteres sólo se aplica a las contraseñas que utilizan el algoritmo crypt_unix(5) anterior, que se ha conservado para la compatibilidad con versiones anteriores con las entradas de archivo passwd y los mapas NIS existentes.
El número máximo de caracteres para una contraseña depende del algoritmo, ya sea el algoritmo crypt_unix para las contraseñas más antiguas o el algoritmo SHA256 para las demás. Si el cambio de contraseña es de una contraseña existente y se trata de una contraseña crypt_unix, la longitud máxima se establece en 8 caracteres, a menos que el archivo policy.conf requiera un cambio de algoritmo de contraseña.
La nueva contraseña debe coincidir con las reglas de complejidad dentro del número máximo de caracteres permitidos para el algoritmo de contraseña. Por lo tanto, si utiliza el algoritmo crypt_unix y escribe una contraseña de 20 caracteres, la contraseña debe coincidir con las reglas de complejidad en los primeros 8 caracteres. Si el algoritmo de contraseña corresponde a cualquiera de los otros algoritmos, la contraseña debe coincidir con las reglas de complejidad dentro de toda la contraseña que se escribe, que es 20 en este ejemplo.
Cada contraseña debe cumplir con las restricciones de complejidad especificadas en el archivo /etc/default/passwd.
Cada contraseña no debe ser miembro del diccionario configurado, como se especifica en el archivo /etc/default/passwd.
En el caso de las cuentas de usuario en servicios de nombre compatibles con la comprobación de historial de contraseñas, si se define el historial de contraseñas anteriores, las nuevas contraseñas no deben estar incluidas en el historial de contraseñas anteriores.
Las reglas para las contraseñas se explican en detalle en la página del comando man passwd(1).
Para hacer que los sistemas del equipo sean más seguros, los usuarios deben modificar sus contraseñas con frecuencia. Para un alto nivel de seguridad, se debe solicitar a los usuarios que cambien sus contraseñas cada seis semanas. Una vez cada tres meses es adecuado para niveles más bajos de seguridad. Los inicios de sesión de administración del sistema (como root y sys) se deben cambiar mensualmente o siempre que una persona que sabe la contraseña root deja la compañía o es reasignada.
Numerosas infracciones de seguridad del equipo implican adivinar una contraseña legítima del usuario. Debe asegurarse de que los usuarios eviten el uso de nombres propios, nombres, nombres de inicio de sesión y otras contraseñas que una persona podría deducir sólo por saber algo sobre el usuario.
Algunas buenas opciones para las contraseñas incluyen lo siguiente:
Frases (beammeup).
Palabras sin sentido armadas con las primeras letras de cada palabra de una frase. Por ejemplo, swotrb para SomeWhere Over The RainBow.
Palabras con números o símbolos sustituidos por letras. Por ejemplo, sn00py para snoopy.
No utilice estas opciones para las contraseñas:
Su nombre (escrito hacia delante, hacia atrás o mezclado)
Nombres de miembros de la familia o mascotas
Números de licencia de conducir
Números de teléfono
Números de seguro social
Números de empleado
Palabras relacionadas con un pasatiempo o interés
Temas estacionales, como Papá Noel en diciembre
Cualquier palabra en el diccionario
El directorio principal es la parte de un sistema de archivos que está asignada a un usuario para almacenar archivos privados. La cantidad de espacio que asigne a un directorio principal depende de los tipos de archivo que crea el usuario, su tamaño y el número de archivos que se crean.
Un directorio principal se puede ubicar en el sistema local del usuario o en un servidor de archivos remoto. En cualquier caso, por convención, el directorio principal debe crearse como /export/home/username. Para un sitio grande, debería almacenar los directorios principales en un servidor. Utilice un sistema de archivos independiente para cada usuario. Por ejemplo, /export/home/alice o /export/home/bob. Mediante la creación de sistemas de archivos independientes para cada usuario, puede establecer propiedades o atributos según las necesidades de cada usuario.
Independientemente de la ubicación de sus respectivos directorios raíz, los usuarios pueden acceder a sus directorios raíz mediante un punto de montaje denominado /home/username. Cuando se usa AutoFS para montar directorios principales, no se le permite crear ningún directorio en el punto de montaje /home de ningún sistema. El sistema reconoce el estado especial de /home cuando AutoFS está activo. Para obtener más información sobre el montaje automático de los directorios principales, consulte Descripción general de tareas para administración autofs de Gestión de sistemas de archivos de red en Oracle Solaris 11.1.
Para utilizar un directorio principal en cualquier lugar de la red, siempre debe hacer referencia al directorio principal como $HOME y no como /export/home/username. El último es específico de un equipo. Además, cualquier enlace simbólico creado en el directorio principal de un usuario debe utilizar rutas relativas (por ejemplo, ../../../x/y/x), para que los enlaces sean válidos, sin importar dónde esté montado el directorio principal.
Para obtener más información sobre cómo se agregan los directorios principales cuando crea cuentas de usuario mediante la interfaz de línea de comandos, consulte Directrices para la configuración de cuentas de usuario.
Si gestiona cuentas de usuario para un sitio de gran tamaño, es posible que desee tener en cuenta el uso de un servicio de nombres o directorios, como LDAP o NIS. Un servicio de nombres o directorios permite almacenar información de cuenta de usuario de forma centralizada en lugar de almacenar información de cuenta de usuario en cada archivo /etc del sistema. Al utilizar un servicio de nombres o directorios para cuentas de usuario, los usuarios pueden moverse de sistema a sistema utilizando la misma cuenta de usuario sin que su información se duplique en cada sistema. Mediante el uso de un servicio de nombres o directorios también garantiza que la información de cuentas de usuario sea coherente.
Además de tener un directorio principal para crear y almacenar los archivos, los usuarios necesitan un entorno que les proporcione acceso a las herramientas y los recursos que necesitan para realizar su trabajo. Cuando un usuario inicia sesión en un sistema, el entorno de trabajo del usuario se determina por archivos de inicialización. Estos archivos están definidos por el shell de inicio del usuario, que puede variar, según la versión.
Una buena estrategia para gestionar el entorno de trabajo del usuario es proporcionar archivos de inicialización de usuario personalizados, como .bash_profile, .bash_login, .kshrc o .profile, en el directorio raíz del usuario.
Nota - No utilice archivos de inicialización del sistema, como /etc/profile o /etc/.login, para gestionar el entorno de trabajo del usuario. Estos archivos residen localmente en los sistemas y no se administran de manera centralizada. Por ejemplo, si AutoFS se usa para montar el directorio principal del usuario desde cualquier sistema de la red, tendría que modificar los archivos de inicialización del sistema en cada sistema para garantizar un entorno consistente siempre que un usuario se mueva de un sistema a otro.
Para obtener información detallada acerca de la personalización de archivos de inicialización de usuario para los usuarios, consulte Personalización de un entorno de trabajo del usuario.
Para obtener información sobre cómo personalizar cuentas de usuario mediante RBAC, consulte Control de acceso basado en roles (descripción general) de Administración de Oracle Solaris 11.1: servicios de seguridad.
Los nombres de usuario, los UID y los GID deben ser únicos dentro de su organización, ya que pueden abarcar varios dominios.
Tenga en cuenta las directrices siguientes al crear usuarios o nombres de rol, UID y GID:
Nombres de usuario: deben tener de dos a ocho letras y números. El primer carácter debería ser una letra. Al menos un carácter debería ser una letra en minúscula.
Nota - Aunque los nombres de usuario pueden incluir un punto (.), carácter de subrayado (_) o guión (-), no se recomienda el uso de estos caracteres porque pueden causar problemas con algunos productos de software.
Cuentas del sistema: no utilice ninguno de los nombres de usuario, UID o GID que están contenidos en los archivos predeterminados /etc/passwd y /etc/group. No utilice UID y GID, 0-99. Estos números son reservados para asignación por Oracle Solaris y no deben ser utilizados por ninguna persona. Tenga en cuenta que esta restricción también se aplica a números que no se incluyan en uso actualmente.
Por ejemplo, gdm es el nombre de usuario reservado y el nombre de grupo para el daemon de gestor de visualización GNOME y no debería ser utilizado por otro usuario. Para obtener una lista completa de las entradas predeterminadas /etc/passwd y /etc/group, consulte la Tabla 1-3 y la Tabla 1-4.
Las cuentas nobody y nobody4 nunca deberían utilizarse para procesos en ejecución. Las dos siguientes cuentas están reservadas para su uso por NFS. El uso de estas cuentas para procesos en ejecución podría provocar riesgos de seguridad inesperados. Los procesos que debe ejecutar como usuario no root deben utilizar las cuentas daemon o noaccess.
Configuración de cuentas del sistema: la configuración de cuentas del sistema predeterminada no debería cambiarse nunca. Esto incluye el cambio del shell de inicio de sesión de una cuenta del sistema que está actualmente bloqueada. La única excepción a esta regla es la configuración de una contraseña y de parámetros de caducidad de la contraseña para la cuenta root.
Nota - El cambio de una contraseña de una cuenta de usuario bloqueada cambia la contraseña, pero ya no desbloquea la cuenta al mismo tiempo. Ahora se requiere un segundo paso para desbloquear la cuenta mediante el comando passwd -u.