JavaScript is required to for searching.
Omitir V�nculos de navegaci�n
Salir de la Vista de impresi�n
Administración de Oracle Solaris: servicios de seguridad     Oracle Solaris 11 Information Library (Español)
search filter icon
search icon

Información del documento

Prefacio

Parte I Descripción general de la seguridad

1.  Servicios de seguridad (descripción general)

Parte II Seguridad de sistemas, archivos y dispositivos

2.  Gestión de seguridad de equipos (descripción general)

3.  Control de acceso a sistemas (tareas)

4.  Servicio de análisis de virus (tareas)

5.  Control de acceso a dispositivos (tareas)

6.  Uso de la herramienta básica de creación de informes de auditoría (tareas)

7.  Control de acceso a archivos (tareas)

Parte III Roles, perfiles de derechos y privilegios

8.  Uso de roles y privilegios (descripción general)

9.  Uso del control de acceso basado en roles (tareas)

Uso de RBAC (tareas)

Visualización y uso de valores predeterminados de RBAC (tareas)

Visualización y uso de valores predeterminados de RBAC (mapa de tareas)

Cómo visualizar todos los atributos de seguridad definidos

Cómo visualizar los derechos asignados

Cómo asumir un rol

Cómo obtener derechos administrativos

Personalización de RBAC para su sitio (tareas)

Configuración inicial de RBAC (mapa de tareas)

Cómo planificar la implementación de RBAC

Cómo crear un rol

Cómo asignar un rol

Cómo auditar roles

Cómo crear o cambiar un perfil de derechos

Cómo agregar propiedades RBAC a las aplicaciones antiguas

Cómo solucionar problemas de asignación de privilegios y RBAC

Gestión de RBAC (tareas)

Gestión de RBAC (mapa de tareas)

Cómo cambiar la contraseña de un rol

Cómo cambiar los atributos de seguridad de un rol

Cómo cambiar las propiedades RBAC de un usuario

Cómo restringir a un usuario a las aplicaciones de escritorio

Cómo restringir a un administrador a derechos asignados explícitamente

Cómo permitir que un usuario use su propia contraseña para asumir un rol

Cómo cambiar el rol root a un usuario

Uso de privilegios (tareas)

Determinación de los privilegios (mapa de tareas)

Cómo enumerar los privilegios en el sistema

Cómo determinar los privilegios que se le asignaron directamente

Cómo determinar los comandos con privilegios que puede ejecutar

Gestión de privilegios (mapa de tareas)

Cómo determinar los privilegios de un proceso

Cómo determinar los privilegios que necesita un programa

Cómo ejecutar una secuencia de comandos de shell con comandos con privilegios

10.  Atributos de seguridad en Oracle Solaris (referencia)

Parte IV Servicios criptográficos

11.  Estructura criptográfica (descripción general)

12.  Estructura criptográfica (tareas)

13.  Estructura de gestión de claves

Parte V Servicios de autenticación y comunicación segura

14.  Autenticación de servicios de red (tareas)

15.  Uso de PAM

16.  Uso de SASL

17.  Uso de Secure Shell (tareas)

18.  Secure Shell (referencia)

Parte VI Servicio Kerberos

19.  Introducción al servicio Kerberos

20.  Planificación del servicio Kerberos

21.  Configuración del servicio Kerberos (tareas)

22.  Mensajes de error y resolución de problemas de Kerberos

23.  Administración de las políticas y los principales de Kerberos (tareas)

24.  Uso de aplicaciones Kerberos (tareas)

25.  El servicio Kerberos (referencia)

Parte VII Auditoría en Oracle Solaris

26.  Auditoría (descripción general)

27.  Planificación de la auditoría

28.  Gestión de auditoría (tareas)

29.  Auditoría (referencia)

Glosario

Índice

Gestión de RBAC (tareas)

Una vez que configura y usa RBAC, utilice los procedimientos siguientes para mantener y modificar RBAC en los sistemas.

Gestión de RBAC (mapa de tareas)

El siguiente mapa de tareas hace referencia a los procedimientos para mantener el control de acceso basado en roles (RBAC) después de la implementación inicial de RBAC.

Tarea
Descripción
Para obtener instrucciones
Cambiar la contraseña del rol.
Un rol o un usuario autorizado cambia la contraseña de otro rol.
Modificar los derechos asignados de un rol.
Modifica los atributos de seguridad de un rol.
Modificar los derechos de un usuario.
Agrega los atributos de seguridad a un usuario normal o los elimina.
Modificar los derechos de un usuario de un perfil de derechos.
Asigna valores de atributos de seguridad en un perfil de derechos, como indicadores de auditoría, privilegios predeterminados.
Crear un shell de perfil restringido.
Impide que los usuarios o roles tengan acceso completo a todos los comandos en el software.
Eliminar derechos predeterminados de un sistema.
Crea un sistema para usos especiales.
Restringir los privilegios de un usuario.
Limita el conjunto básico o límite de privilegios del usuario.
Permitir que un usuario proporcione la contraseña del usuario para asumir un rol.
Modifica los atributos de seguridad de un usuario para que la contraseña del usuario autentique el usuario para un rol. Este comportamiento es similar al comportamiento del rol de Linux.
Cambiar root a un usuario.
Antes de retirar un sistema, cambie el rol root a un usuario.

Estos procedimientos gestionan atributos de seguridad en usuarios, roles y perfiles de derechos. Para conocer procedimientos básicos de gestión de usuarios, consulte el Capítulo 2, Gestión de grupos y cuentas de usuario (descripción general) de Administración de Oracle Solaris: tareas comunes.

Cómo cambiar la contraseña de un rol

Antes de empezar

Debe tener el rol root.

Ejemplo 9-17 Cambio de contraseña de un rol

En este ejemplo, el rol root cambia la contraseña del rol devmgt local.

# passwd -r files devmgt
New password: Type new password
Confirm password: Retype new password

En este ejemplo, el rol root cambia la contraseña del rol devmgt en el servicio de directorios LDAP.

# passwd -r ldap devmgt
New password: Type new password
Confirm password: Retype new password

En este ejemplo, el rol root cambia la contraseña del rol devmgt en el archivo y LDAP.

# passwd devmgt
New password: Type new password
Confirm password: Retype new password

Cómo cambiar los atributos de seguridad de un rol

Antes de empezar

Debe tener asignado el perfil de derechos de seguridad de usuarios para cambiar los atributos de seguridad de un rol, excepto para los indicadores de auditoría y la contraseña del rol. Las propiedades del rol incluyen perfiles de derechos y autorizaciones. Para asignar indicadores de auditoría o cambiar la contraseña de un rol, debe encontrarse en el rol root.


Nota - Para cambiar la contraseña, consulte Cómo cambiar la contraseña de un rol.


  1. Conviértase en administrador con los atributos de seguridad necesarios.

    Para obtener más información, consulte Cómo obtener derechos administrativos.

  2. Utilice el comando rolemod.

    Este comando modifica los atributos de un rol definido en el servicio de nombres local o en LDAP. Los valores de las opciones -A, -P y -R pueden ser modificados por - o ++. - indica que se reste el valor de los valores asignados actualmente. ++ indica que se agregue el valor a los valores asignados actualmente.

    Para obtener más información sobre el comando rolemod, consulte lo siguiente:

    • Para obtener una descripción breve, consulte la descripción del comando roleadd en Cómo crear un rol.

    • Para conocer todos los argumentos de este comando, consulte la página del comando man rolemod(1M).

    • Para obtener la lista de valores de claves para la opción -K, consulte la página del comando man user_attr(4).

    El siguiente comando sustituye los perfiles de derechos asignados del rol devmgt en el depósito LDAP:

    $ rolemod -P "Device Management,File Management" -S ldap devadmin

Ejemplo 9-18 Cambio de los atributos de seguridad de un rol local

En este ejemplo, el administrador de seguridad modifica el rol prtmgt para incluir el perfil de derechos de gestión de VSCAN.

$ rolemod -c "Handles printers and virus scanning" \
-P "Printer Management,VSCAN Management,All" prtmgt

Estos perfiles de derechos se agregan a los perfiles que se otorgan por medio del archivo policy.conf.

Ejemplo 9-19 Asignación de privilegios directamente a un rol

En este ejemplo, el administrador de seguridad confía al rol systime un privilegio muy específico que afecta la hora del sistema.

$ rolemod -K priv=proc_clock_highres systime

Los valores de la palabra clave priv se encuentran en la lista de privilegios de los procesos del rol en todo momento.

Cómo cambiar las propiedades RBAC de un usuario

Las propiedades de usuario incluyen shell de inicio, perfiles de derechos y roles. El método más seguro para otorgar capacidades administrativas a un usuario es asignar un rol al usuario. Para ver una explicación, consulte Consideraciones de seguridad al asignar directamente atributos de seguridad.

Antes de empezar

Debe tener asignado el perfil de derechos de seguridad de usuarios para cambiar los atributos de seguridad de un usuario, excepto para los indicadores de auditoría y la contraseña del usuario. Para asignar indicadores de auditoría o cambiar la contraseña de un rol, debe encontrarse en el rol root. Para cambiar otros atributos de usuarios, debe tener asignado el perfil de derechos de gestión de usuarios.

  1. Conviértase en administrador con los atributos de seguridad necesarios.

    Para obtener más información, consulte Cómo obtener derechos administrativos.

  2. Utilice el comando usermod.

    Este comando modifica los atributos de un usuario que está definido en el servicio de nombres local o el servicio de nombres LDAP. Los argumentos RBAC para este comando son similares a los argumentos para el comando useradd, como se describe en la página del comando man user_attr(4) y como se muestra en el Ejemplo 9-23.

    En el siguiente ejemplo, se asigna el rol devmgt a un usuario LDAP. Este rol sustituye cualquier asignación anterior de rol. El rol devmgt debe existir en el servicio de nombres LDAP.

    $ usermod -R devmgt -S ldap jdoe-ldap

    En el siguiente ejemplo, este rol se agrega a cualquier asignación anterior de rol.

    $ usermod -R +devmgt -S ldap jdoe-ldap

Ejemplo 9-20 Asignación de un rol a un usuario local

En este ejemplo, el usuario jdoe ahora puede asumir el rol de administrador del sistema, sysadmin.

$ userattr roles jdoe
secdevice
$ usermod -R secdevice,sysadmin jdoe
$ userattr roles jdoe
secdevice,sysadmin

Ejemplo 9-21 Eliminación de privilegios del conjunto límite de un usuario

En el siguiente ejemplo, a todas las sesiones que se originan a partir del inicio de sesión inicial de jdoe se les impide utilizar el privilegio sys_linkdir. Es decir, el usuario no puede establecer enlaces físicos a directorios ni anular el enlace a directorios, incluso después de ejecutar el comando su.

$ usermod -K limitpriv=all,!sys_linkdir jdoe
$ userattr limitpriv jdoe
all,!sys_linkdir

Ejemplo 9-22 Creación de un usuario que puede gestionar DHCP

En este ejemplo, el administrador de seguridad crea un usuario en LDAP. Al iniciar sesión, el usuario jdoe-dhcp puede gestionar DHCP.

# useradd -P "DHCP Management" -s /usr/bin/pfbash -S ldap jdoe-dhcp

Debido a que el usuario tiene asignado pfbash como el shell de inicio de sesión, los atributos de seguridad en el perfil de derechos de gestión de DHCP están disponibles para el usuario en el shell predeterminado del usuario.

Ejemplo 9-23 Asignación de autorizaciones directamente a un usuario

En este ejemplo, el administrador de seguridad crea un usuario local que puede controlar el brillo de la pantalla.

# useradd -c "Screened JDoe, local" -s /usr/bin/pfbash \
-A solaris.system.power.brightness jdoe-scr

Esta autorización se agrega a las asignaciones existentes del usuario.

Ejemplo 9-24 Asignación de privilegios directamente a un usuario

En este ejemplo, el administrador de seguridad confía al usuario jdoe un privilegio muy específico que afecta la hora del sistema.

$ usermod -K defaultpriv=basic,proc_clock_highres jdoe

Los valores de la palabra clave defaultpriv reemplazan los valores existentes. Por lo tanto, para que el usuario conserve los privilegios basic, se especifica el valor basic. En la configuración predeterminada, todos los usuarios tienen privilegios básicos.

Cómo restringir a un usuario a las aplicaciones de escritorio

Puede restringir a un usuario de Oracle Solaris al acceso de escritorio solamente.

Antes de empezar

Debe tener el rol root.

  1. Asigne al usuario un shell de perfil como el shell de inicio de sesión.

    Por ejemplo, puede asignar el shell pfbash al usuario.

    # usermod -s /usr/bin/pfbash username

    Todos los procesos de usuario ahora están bajo el control de RBAC.

  2. Cree un perfil de derechos que permita al usuario ejecutar los applets básicos en el escritorio de Oracle.

    El comando siguiente crea el perfil de derechos. El comando end indica que el comando agregado no necesita atributos de seguridad. Para crear el perfil de derechos en el depósito LDAP, utilice la opción -S ldap.

    # profiles -p "Desktop Applets"
    profiles:Desktop Applets> set desc="Can use basic desktop applications"
    profiles:Desktop Applets> add cmd=/usr/bin/nautilus;end
    profiles:Desktop Applets> add cmd=/usr/bin/dbus-launch;end
    profiles:Desktop Applets> add cmd=/usr/lib/dbus-daemon;end
    profiles:Desktop Applets> add cmd=/usr/lib/clock-applet;end
    profiles:Desktop Applets> add cmd=/usr/lib/gconfd-2;end
    profiles:Desktop Applets> add cmd=/usr/lib/gvfsd;end
    profiles:Desktop Applets> add cmd=/usr/lib/gvfsd-metadata;end
    profiles:Desktop Applets> add cmd=/usr/lib/gvfsd-trash;end
    profiles:Desktop Applets> add cmd=/usr/lib/gvfs-hal-volume-monitor;end
    profiles:Desktop Applets> add cmd=/usr/lib/gnome-pty-helper;end
    profiles:Desktop Applets> add cmd=/usr/lib/utmp_update;end
    profiles:Desktop Applets> add cmd=/usr/bin/sh;end
    profiles:Desktop Applets> add cmd=/usr/bin/bash;end
    profiles:Desktop Applets> add cmd=/usr/bin/csh;end
    profiles:Desktop Applets> add cmd=/usr/bin/ksh;end
    profiles:Desktop Applets> commit
    profiles:Desktop Applets> exit
  3. Verifique que el perfil de derechos contenga las entradas correctas.

    Revise si las entradas tienen errores, como errores ortográficos, omisiones o repeticiones.

    # profiles -p "Desktop Applets" info
    Found profile in files repository.
    name=Desktop Applets
    desc=Can use basic desktop applications
    cmd=/usr/bin/nautilus
    cmd=/usr/bin/dbus-launch
    cmd=/usr/lib/dbus-daemon
    cmd=/usr/lib/clock-applet
    cmd=/usr/lib/gconfd-2
    cmd=/usr/lib/gvfsd
    cmd=/usr/lib/gvfsd-metadata
    cmd=/usr/lib/gvfsd-trash
    cmd=/usr/lib/gvfs-hal-volume-monitor
    cmd=/usr/lib/gnome-pty-helper
    cmd=/usr/lib/utmp_update
    cmd=/usr/bin/sh
    cmd=/usr/bin/bash
    cmd=/usr/bin/csh
    cmd=/usr/bin/ksh

    Consejo - Puede crear un perfil de derechos para una aplicación o una clase de aplicaciones que tienen iconos de escritorio. A continuación, agregue applets de escritorio como un perfil de derechos complementario a este nuevo perfil de derechos. Juntos, estos perfiles de derechos permiten que el usuario pueda utilizar las aplicaciones de escritorio adecuadas.


  4. Asigne el perfil de derechos de applets de escritorio y el perfil de derechos de detención al usuario.
    # usermod -P "Desktop Applets,Stop" username

    Este usuario no tiene el perfil de derechos de usuario básico de Solaris o el perfil de derechos de usuario de consola. Por lo tanto, ningún otro comando que no sean los comandos en el perfil de derechos de applets de escritorio puede ser ejecutado por este usuario. Por ejemplo, el usuario no tiene acceso a una ventana de terminal.

    Para obtener más información, consulte Perfiles de derechos, Orden de búsqueda para atributos de seguridad asignados y Cómo limitar el acceso de un usuario a las aplicaciones de escritorio de Configuración y administración de Trusted Extensions.

    El comando usermod modifica los atributos de usuario que están definidos en el servicio de nombres local o en LDAP. Para conocer los argumentos de este comando, consulte la página del comando man usermod(1M).

Cómo restringir a un administrador a derechos asignados explícitamente

Puede restringir un rol o un usuario a un número limitado de acciones administrativas de dos formas.

Antes de empezar

Debe tener el rol root.

Ejemplo 9-25 Modificación de un sistema para limitar los derechos disponibles a sus usuarios

En este ejemplo, el administrador crea un sistema que sólo es útil para administrar la red. El administrador elimina el perfil de derechos de usuario básico de Solaris y la autorización solaris.device.cdrw del archivo policy.conf. El perfil de derechos de usuario de consola no se elimina. Las líneas afectadas en el archivo policy.conf resultante son las siguientes:

...
#AUTHS_GRANTED=solaris.device.cdrw
#PROFS_GRANTED=Basic Solaris User
CONSOLE_USER=Console User
...

Sólo un usuario que ha sido asignado de forma explícita autorizaciones, comandos o perfiles de derechos puede usar este sistema. Después de iniciar sesión, el usuario autorizado puede realizar tareas administrativas. Si el usuario autorizado se encuentra en el sistema, el usuario tiene los derechos del usuario de consola.

Cómo permitir que un usuario use su propia contraseña para asumir un rol

De manera predeterminada, los usuarios deben escribir la contraseña del rol para asumir un rol. Realice este procedimiento para que asumir un rol en Oracle Solaris sea similar a asumir un rol en un entorno Linux.

Antes de empezar

Debe haber asumido un rol que incluya el perfil de derechos de seguridad de usuarios. Este rol no puede ser el rol cuyo valor roleauth desea cambiar.

Ejemplo 9-26 Habilitación de un rol para utilizar la contraseña del usuario asignado al utilizar un perfil de derechos

En este ejemplo, el rol root cambia el valor de roleauth por el rol secadmin en el sistema local.

# profiles -K roleauth=user "System Administrator"

Cuando un usuario al que se le asigna el perfil de derechos de administrador de seguridad desea asumir el rol, se le solicita una contraseña. En la secuencia siguiente, el nombre de rol es secadmin:

% su - secadmin
Password: Type user password
$ /** You are now in a profile shell with administrative rights**/

Si se le han asignado otros roles, el usuario tiene su propia contraseña para autenticarse ante esos roles también.

Ejemplo 9-27 Cambio del valor de roleauth por un rol en el depósito LDAP

En este ejemplo, el rol root permite a todos los usuarios que pueden asumir el rol secadmin utilizar su propia contraseña al asumir un rol. Esta capacidad se concede a estos usuarios para todos los sistemas que están gestionados por el servidor LDAP.

# rolemod -S ldap -K roleauth=user secadmin
# profiles -S ldap -K roleauth=user "Security Administrator"

Errores más frecuentes

Si se establece roleauth=user para el rol, la contraseña de usuario permite que el rol autenticado acceda a todos los derechos que están asignados a ese rol. La palabra clave depende de la búsqueda. Para obtener más información, consulte Orden de búsqueda para atributos de seguridad asignados.

Cómo cambiar el rol root a un usuario

Un administrador puede cambiar root a un usuario al retirar un sistema que se ha eliminado de la red. En esta instancia, iniciar sesión en el sistema como root simplifica la limpieza.

Antes de empezar

Debe convertirse en un administrador que tenga asignado los perfiles de derechos de gestión de usuarios y de seguridad de usuarios.

  1. Elimine la asignación del rol root de los usuarios locales.

    Por ejemplo, elimine la asignación de rol de dos usuarios.

    % su - root
    Password: a!2@3#4$5%6^7
    # roles jdoe
    root
    # roles kdoe
    root
    # roles ldoe
    secadmin
    # usermod -R "" jdoe
    # usermod -R "" kdoe
    #
  2. Cambie el rol root a un usuario.
    # rolemod -K type=normal root

    Los usuarios que están actualmente en el rol root lo siguen estando. Otros usuarios que tienen acceso de usuario root pueden cambiar su a root o pueden iniciar sesión en el sistema como el usuario root.

  3. Verifique el cambio.

    Puede utilizar uno de los siguientes comandos.

    # getent user_attr root
    root::::auths=solaris.*;profiles=All;audit_flags=lo\:no;lock_after_retries=no;
    min_label=admin_low;clearance=admin_high

    Si falta la palabra clave type en la salida o es igual a normal, la cuenta no es un rol.

    # userattr type root

    Si la salida está vacía o muestra normal, la cuenta no es un rol.

Ejemplo 9-28 Prevención de que el rol root se utilice para configurar un sistema

En este ejemplo, la política de seguridad del sitio requiere que se evite que la cuenta root mantenga el sistema. El administrador ha creado y probado los roles que mantienen el sistema. Estos roles incluyen cada perfil de seguridad y el perfil de derechos de administrador del sistema. Se ha asignado a un usuario de confianza un rol que puede restaurar una copia de seguridad. Ningún rol puede cambiar los indicadores de auditoría para el sistema, un usuario o un perfil de derechos.

Para evitar que la cuenta root se utilice para mantener el sistema, el administrador de seguridad elimina la asignación role raíz. Debido a que la cuenta root debe poder iniciar sesión en el sistema en modo de un solo usuario, la cuenta retiene una contraseña.

# rolemod -K roles= jdoe
# userattr roles jdoe

Ejemplo 9-29 Cambio de usuario root a rol root

En este ejemplo, el usuario root devuelve el usuario root a un rol.

Primero, root cambia la cuenta root a un rol y verifica el cambio.

# rolemod -K type=role root
# getent user_attr root
root::::type=role;auths=solaris.*;profiles=All;audit_flags=lo\:no;
lock_after_retries=no;min_label=admin_low;clearance=admin_high

A continuación, root asigna el rol root a un usuario local.

# usermod -R root jdoe

Errores más frecuentes

En un entorno de escritorio, no puede iniciar sesión directamente como root cuando root es un rol. Un mensaje de diagnóstico indica que root es un rol en el sistema.

Si no tiene una cuenta local que pueda asumir el rol root, cree una. Como root, inicie sesión en el sistema en el modo de un solo usuario, cree una cuenta de usuario local y una contraseña, y asigne el rol root a la nueva cuenta. A continuación, inicie sesión como el nuevo usuario y asuma el rol root.