Omitir V�nculos de navegaci�n | |
Salir de la Vista de impresi�n | |
Guía de administración del sistema: servicios de seguridad |
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. Control de acceso a dispositivos (tareas)
5. Uso de la herramienta básica de creación de informes de auditoría (tareas)
6. Control de acceso a archivos (tareas)
7. Uso de la herramienta automatizada de mejora de la seguridad (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)
10. Control de acceso basado en roles (referencia)
Parte IV Servicios criptográficos
13. Estructura criptográfica de Oracle Solaris (descripción general)
14. Estructura criptográfica de Oracle Solaris (tareas)
15. Estructura de gestión de claves de Oracle Solaris
Parte V Servicios de autenticación y comunicación segura
16. Uso de servicios de autenticación (tareas)
19. Uso de Oracle Solaris Secure Shell (tareas)
20. Oracle Solaris Secure Shell (referencia)
21. Introducción al servicio Kerberos
22. Planificación del servicio Kerberos
23. Configuración del servicio Kerberos (tareas)
24. Mensajes de error y resolución de problemas de Kerberos
25. Administración de las políticas y los principales de Kerberos (tareas)
26. Uso de aplicaciones Kerberos (tareas)
27. El servicio Kerberos (referencia)
Parte VII Auditoría de Oracle Solaris
28. Auditoría de Oracle Solaris (descripción general)
29. Planificación de la auditoría de Oracle Solaris
30. Gestión de la auditoría de Oracle Solaris (tareas)
Auditoría de Oracle Solaris (mapa de tareas)
Configuración de archivos de auditoría (mapa de tareas)
Configuración de archivos de auditoría (tareas)
Cómo modificar el archivo audit_control
Cómo configurar registros de auditoría syslog
Cómo cambiar las características de auditoría de un usuario
Cómo agregar un clase de auditoría
Cómo cambiar una pertenencia a clase de un evento de auditoría
Configuración y habilitación del servicio de auditoría (mapa de tareas)
Configuración y habilitación del servicio de auditoría (tareas)
Cómo crear particiones para los archivos de auditoría
Cómo configurar el alias de correo electrónico audit_warn
Cómo configurar la política de auditoría
Cómo habilitar el servicio de auditoría
Cómo deshabilitar el servicio de auditoría
Cómo actualizar el servicio de auditoría
Configuración del servicio de auditoría en las zonas (tareas)
Cómo configurar todas las zonas de forma idéntica para la auditoría
Cómo configurar la auditoría por zona
Gestión de registros de auditoría (mapa de tareas)
Gestión de registros de auditoría
Cómo visualizar formatos de registros de auditoría
Cómo fusionar archivos de auditoría de la pista de auditoría
Cómo seleccionar eventos de auditoría de la pista de auditoría
Cómo visualizar el contenido de los archivos de auditoría binarios
Cómo depurar un archivo de auditoría not_terminated
Cómo evitar el desbordamiento de la pista de auditoría
Resolución de problemas de la auditoría de Oracle Solaris (tareas)
Resolución de problemas de la auditoría de Oracle Solaris (mapa de tareas)
Cómo determinar que la auditoría de Oracle Solaris se está ejecutando
Cómo reducir el volumen de los registros de auditoría que se producen
Cómo auditar todos los comandos por usuarios
Cómo buscar registros de auditoría de los cambios realizados en archivos específicos
Cómo modificar una máscara de preselección de usuario
Cómo evitar la auditoría de determinados eventos
Cómo limitar el tamaño de los archivos de auditoría binarios
Cómo auditar inicios de sesión de otros OSes
Cómo auditar transferencias de archivos FTP y SFTP
Antes de habilitar la auditoría en su red, puede personalizar los archivos de configuración de auditoría para los requisitos de auditoría de su sitio. También puede reiniciar el servicio de auditoría o el sistema local para leer los archivos de configuración cambiados después de que el servicio de auditoría se haya habilitado. Sin embargo, la práctica recomendada es personalizar su configuración de auditoría en la medida que sea posible antes de iniciar el servicio de auditoría.
Si ha implementado zonas, puede seleccionar si desea auditar todas las zonas desde la zona global. Para diferenciar entre zonas en la salida de auditoría, puede definir la opción de la política zonename. Como alternativa, para auditar las zonas no globales por separado, puede establecer la política perzone en la zona global y personalizar los archivos de configuración de auditoría en las zonas no globales. Para obtener una descripción general, consulte Auditoría y zonas de Oracle Solaris. Para obtener información sobre planificación, consulte Cómo planificar auditoría en zonas. Para obtener información sobre los procedimientos, consulte Configuración del servicio de auditoría en las zonas (tareas).
El archivo /etc/security/audit_control configura la auditoría en todo el sistema. El archivo determina qué eventos de auditan, cuándo se emiten advertencias de auditoría y dónde están los archivos de auditoría.
El rol de administrador principal incluye el perfil de administrador principal. Para crear el rol y asignarlo a un usuario, consulte el Capítulo 2, Trabajo con Solaris Management Console (tareas) de Guía de administración del sistema: administración básica.
# cp /etc/security/audit_control /etc/security/audit_control.orig
Cada entrada tiene el siguiente formato:
keyword:value
Define el tipo de línea. Los tipos son dir, flags, minfree, naflags y plugin. En la versión Solaris 10, las líneas dir y minfree se descartaron.
Para obtener explicaciones de las palabras clave, consulte los siguientes ejemplos.
Especifica los datos asociados con el tipo de línea.
Nota - Para especificar las ubicaciones de los directorios de auditoría, use el atributo p_dir en el complemento audit_binfile.so. Para especificar el espacio libre mínimo, utilice el atributo p_minfree.
# audit -v /etc/security/audit_control syntax ok
Ejemplo 30-1 Preselección de clases de auditoría para todos los usuarios
La línea flags en el archivo audit_control define qué clases de eventos atribuibles se auditan para todos los usuarios en el sistema. Las clases se separan por comas. Se permite agregar espacios en blanco. En este ejemplo, los eventos en las clases lo y ap se auditan para todos los usuarios.
## audit_control file flags:lo,ap naflags:lo plugin:name=...
Para ver qué eventos están asignados a una clase, lea el archivo audit_event. También puede utilizar el comando bsmrecord, como se muestra en el Ejemplo 30-27.
Ejemplo 30-2 Preselección de eventos no atribuibles
En este ejemplo, se auditan todos los eventos de la clase na y todos eventos login que no son atribuibles.
## audit_control file flags:lo naflags:lo,na plugin:name=...
Ejemplo 30-3 Especificación de la ubicación de datos de auditoría binarios
El indicador p_dir del complemento audit_binfile.so muestra qué sistemas de archivos de auditoría usar para los datos de auditoría binarios. En este ejemplo, se pueden definir tres ubicaciones para datos de auditoría binarios. Los directorios se muestran en orden, del directorio principal al directorio de último recurso. La línea plugin no contiene un salto de línea.
## audit_control file ## flags:lo naflags:lo,na plugin:name=audit_binfile.so; p_dir=/var/audit/egret.1/files, /var/audit/egret.2/files,/var/audit
Para configurar sistemas de archivos para que retengan datos de auditoría binarios, consulte Cómo crear particiones para los archivos de auditoría.
Ejemplo 30-4 Cambiar el límite de aviso para las advertencias
En este ejemplo, está configurado el nivel mínimo de espacio libre para todos los sistemas archivos de auditoría de modo que se emite una advertencia cuando sólo queda disponible el 10% del sistema de archivos.
La línea plugin no contiene un salto de línea.
## audit_control file # flags:lo naflags:lo,na plugin:name=audit_binfile.so; p_dir=/var/audit/examplehost.1/files, /var/audit/examplehost.2/files,/var/audit/localhost/files; p_minfree=10
El alias audit_warn recibe la advertencia. Para configurar el alias, consulte Cómo configurar el alias de correo electrónico audit_warn .
Puede indicar al servicio de auditoría que copie algunos o todos los registros de auditoría recopilados en la cola de auditoría en syslog. En el siguiente procedimiento, guarda datos de auditoría binarios y datos de auditoría textuales. Los datos de auditoría textuales recolectados son un subconjunto de los datos binarios.
Antes de empezar
Debe preseleccionar las clases de auditoría. Las clases de auditoría preseleccionadas se especifican en la línea flags y en la línea naflags del archivo audit_control. También puede preseleccionar clases de usuarios individuales en el archivo audit_user y agregar dinámicamente clases de auditoría con el comando auditconfig.
El rol de administrador principal incluye el perfil de administrador principal. Para crear el rol y asignarlo a un usuario, consulte el Capítulo 2, Trabajo con Solaris Management Console (tareas) de Guía de administración del sistema: administración básica.
# cp /etc/security/audit_control /etc/security/audit_control.save
## audit_control file flags:lo,ss naflags:lo,na plugin:name=audit_binfile.so;p_dir=/var/audit; p_minfree=20; plugin:name=audit_syslog.so;p_flags=+lo,-ss
Una entrada plugin tiene el siguiente formato:
plugin:name=name; qsize=max-queued-records;p_*=value
name=nombre: muestra el nombre del complemento. Los valores válidos son audit_binfile.so y audit_syslog.so.
qsize=máximo_registros_cola: especifica el número máximo de registros que se pueden poner en cola para los datos de auditoría que se envían al complemento. Este atributo es opcional.
p_*= valor: especifica los atributos específicos del complemento. El complemento audit_syslog.so acepta p_flags . El complemento audit_binfile.so acepta p_dir , p_minfree y p_fsize. El atributo p_fsize se introdujo en Solaris 10 10/08.
Para obtener más información acerca de los atributos específicos del complemento, consulte la sección OBJECT ATTRIBUTES de las páginas del comando man audit_binfile(5) y audit_syslog(5).
La entrada incluye la ubicación del archivo de registro.
# cat /etc/syslog.conf … audit.notice /var/adm/auditlog
No almacene registros textuales donde se almacenan los archivos de auditoría binarios. El comando auditreduce, que lee archivos de auditoría binarios, asume que todos los archivos en una partición de auditoría son archivos de auditoría binarios.
# touch /var/adm/auditlog
# svcadm refresh system/system-log
El servicio de auditoría puede generar muchas salidas. Para gestionar los registros, consulte la página del comando man logadm(1M).
Ejemplo 30-5 Especificación de clases de auditoría para salida de syslog
En el siguiente ejemplo, la utilidad syslog recopila un subconjunto de las clases de auditoría preseleccionadas.
## audit_user file jdoe:pf
## audit_control file flags:lo,ss naflags:lo,na plugin:name=audit_binfile.so; p_dir=/var/audit/host.1/files, /var/audit/host.2/files,/var/audit/localhost/files; p_minfree=10 plugin:name=audit_syslog.so; p_flags=-lo,-na,-ss,+pf
Las entradas flags y naflags indican al sistema que recolecte todos los registros de auditoría de inicio de sesión/cierre de sesión, eventos no atribuibles y cambios de estado de sistema en formato binario. La entrada de complemento audit_syslog.so indica a la utilidad syslog que recolecte sólo los errores con fallos, los eventos no atribuibles con fallos y los cambios de estado de sistema con fallos. Para el usuario jdoe, el registro de auditoría binario incluye todos los usos de un shell que reconoce perfiles. La utilidad syslog recopila comandos que reconocen perfiles correctos. La clase pf se crea en el Ejemplo 30-10.
Ejemplo 30-6 Colocar registros de auditoría syslog en un sistema remoto
Puede cambiar la entrada audit.notice en el archivo syslog.conf para que haga referencia a un sistema remoto. En este ejemplo, el nombre del sistema local es example1. El sistema remoto es remote1.
example1 # cat /etc/syslog.conf … audit.notice @remote1
La entrada audit.notice en el archivo syslog.conf en el sistema remote1 hace referencia al archivo de registro.
remote1 # cat /etc/syslog.conf … audit.notice /var/adm/auditlog
Ejemplo 30-7 Uso de complementos en el archivo audit_control
El método preferido para especificar información no de indicadores en el archivo audit_control es utilizar la entrada plugin. En este ejemplo, los indicadores de auditoría están seleccionados y, por lo tanto, se muestra la información del complemento.
## audit_control file flags:lo,ss naflags:lo,na plugin:name=audit_binfile.so;p_minfree=10; p_dir=/var/audit plugin:name=audit_syslog.so; p_flags=+lo
Las definiciones para cada usuario se almacenan en la base de datos audit_user. Estas definiciones modifican, para el usuario especificado, las clases preseleccionadas en el archivo audit_control. El archivo nsswitch.conf determina si se utiliza un archivo local o una base de datos de servicio de nombres. Para calcular la máscara de preselección de auditoría final del usuario, consulte Características de auditoría de proceso.
El rol de administrador principal incluye el perfil de administrador principal. Para crear el rol y asignarlo a un usuario, consulte el Capítulo 2, Trabajo con Solaris Management Console (tareas) de Guía de administración del sistema: administración básica.
# cp /etc/security/audit_user /etc/security/audit_user.orig
En la base de datos local, cada entrada tiene el siguiente formato:
username:always-audit:never-audit
Selecciona el nombre del usuario que se van a auditar.
Selecciona la lista de clases de auditoría que siempre se deben auditar para el usuario especificado.
Selecciona la lista de clases de auditoría que nunca se deben auditar para el usuario especificado.
Puede especificar varias clases si separa las clases de auditoría con comas.
Las entradas audit_user entran en vigencia a partir del siguiente inicio de sesión del usuario.
Ejemplo 30-8 Cambiar qué eventos se auditan para un usuario
En este ejemplo, el archivo audit_control contiene las clases de auditoría preseleccionadas para el sistema:
## audit_control file … flags:lo,ss naflags:lo,na
El archivo audit_user muestra una excepción. Cuando el usuario jdoe utiliza un shell de perfil, ese uso es auditado:
## audit_user file jdoe:pf
La máscara de preselección de auditoría para jdoe es una combinación de la configuración de audit_user y la configuración de audit_control. El comando auditconfig -getaudit muestra la máscara de preselección para jdoe:
# auditconfig -getaudit audit id = jdoe(1234567) process preselection mask = ss,pf,lo(0x13000,0x13000) terminal id (maj,min,host) = 242,511,example1(192.168.160.171) audit session id = 2138517656
Ejemplo 30-9 Sólo usuarios de auditoría, no el sistema
En este ejemplo, se auditan sólo el inicio de sesión y las actividades de rol de cuatro usuarios en este sistema. El archivo audit_control no preselecciona clases de auditoría para el sistema.
## audit_control file … flags: naflags:
El archivo audit_user preselecciona dos clases de auditoría para cuatro usuarios, de la siguiente manera:
## audit_user file jdoe:lo,pf kdoe:lo,pf pdoe:lo,pf sdoe:lo,pf
El siguiente archivo audit_control registra intrusiones injustificadas. En combinación con el archivo audit_user, este archivo protege el sistema más que el primer archivo audit_control en este ejemplo.
## audit_control file … flags: naflags:lo plugin:name=...
Cuando crea su propia clase de auditoría, puede colocar en ella sólo los eventos de auditoría que desea auditar para su sitio. Al agregar la clase en un sistema, deberá copiar el cambio en todos los sistemas que se están auditando.
El rol de administrador principal incluye el perfil de administrador principal. Para crear el rol y asignarlo a un usuario, consulte el Capítulo 2, Trabajo con Solaris Management Console (tareas) de Guía de administración del sistema: administración básica.
# cp /etc/security/audit_class /etc/security/audit_class.orig
Cada entrada tiene el siguiente formato:
0xnumber:name:description
Identifica número como hexadecimal.
Define la máscara de clase de auditoría única.
Define el nombre de letra de la clase de auditoría.
Define el nombre descriptivo de la clase de auditoría.
La entrada debe ser única en el archivo. No utilice máscaras de clase de auditoría existentes.
Ejemplo 30-10 Creación de una clase de auditoría nueva
En este ejemplo se crea una clase para mantener un pequeño conjunto de eventos de auditoría. La entrada agregada al archivo audit_class se muestra a continuación:
0x10000000:pf:profile command
La entrada crea una nueva clase de auditoría llamada pf. En el Ejemplo 30-11 se rellena clase de auditoría nueva.
Errores más frecuentes
Si personalizó el archivo audit_class, asegúrese de que todas las modificaciones de audit_user sean coherentes con las clases de auditoría nuevas. Los errores se producen cuando las clases de auditoría en audit_user no son un subconjunto de la base de datos audit_class.
Puede que desee cambiar la pertenencia de clase de un evento de auditoría para reducir el tamaño de una clase de auditoría existente o colocar el evento en una clase propio. Cuando reconfigura asignaciones de evento-clase de auditoría en un sistema, debe copiar el cambio a todos los sistemas que se auditan.
El rol de administrador principal incluye el perfil de administrador principal. Para crear el rol y asignarlo a un usuario, consulte el Capítulo 2, Trabajo con Solaris Management Console (tareas) de Guía de administración del sistema: administración básica.
# cp /etc/security/audit_event /etc/security/audit_event.orig
Cada entrada tiene el siguiente formato:
number:name:description:class-list
Es el ID de evento de auditoría.
Es el nombre del evento de auditoría.
Normalmente, la llamada de sistema o el ejecutable que desencadena la creación de un registro de auditoría.
Es una lista separada por comas de las clases de auditoría.
Ejemplo 30-11 Asignación de eventos de auditoría existentes a una nueva clase
Este ejemplo asigna un evento de auditoría existente a la nueva clase creada en Ejemplo 30-10. En el archivo audit_control, el registro binario de auditoría captura éxitos y fracasos de eventos en la clase pf. El registro de auditoría syslog contiene solamente fracasos de eventos en la clase pf.
# grep pf | /etc/security/audit_class 0x10000000:pf:profile command # vi /etc/security/audit_event 6180:AUE_prof_cmd:profile command:ua,as,pf # vi audit_control ... flags:lo,pf plugin:name=audit_binfile.so; p_dir=/var/audit; p_minfree=10 plugin:name=audit_syslog.so; p_flags=-lo,-pf
Ejemplo 30-12 Auditoría del uso de programas setuid
En este ejemplo se crea una clase para retener eventos que supervisan las llamadas a los programas setuid y setgid. El registro de auditoría binario captura los éxitos y fracasos de los eventos en las clases lo y na, y los éxitos de los eventos en la clase st. El registro de auditoría syslog contiene solamente éxitos de eventos en la clase st.
# vi /etc/security/audit_class 0x00000800:st:setuid class # vi /etc/security/audit_event 26:AUE_SETGROUPS:setgroups(2):st 27:AUE_SETPGRP:setpgrp(2):st 40:AUE_SETREUID:setreuid(2):st 41:AUE_SETREGID:setregid(2):st 214:AUE_SETEGID:setegid(2):st 215:AUE_SETEUID:seteuid(2):st # vi audit_control ## audit_control file flags:lo,+st naflags:lo,na plugin:name=audit_binfile.so; p_dir=/var/audit; p_minfree=10 plugin:name=audit_syslog.so; p_flags=-lo,+st