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)
31. Auditoría de Oracle Solaris (referencia)
Archivos utilizados en el servicio de auditoría
Secuencia de comandos audit_startup
Secuencia de comandos audit_warn
Perfiles de derechos para administración de auditoría
Auditoría y zonas de Oracle Solaris
Definiciones de clases de auditoría
Sintaxis de la clase de auditoría
Características de auditoría de proceso
Convenciones de nombres de archivos de auditoría binarios
Nombres de archivos de auditoría binarios
Indicadores de hora de archivos de auditoría binarios
Estructura de registro de auditoría
Análisis de registro de auditoría
En esta sección se ofrece información acerca de los siguientes comandos:
La siguiente lista resume las tareas del daemon auditd:
Abre y cierra archivos de auditoría en los directorios especificados en el archivo audit_control. Los archivos se abren en orden de mención.
Carga uno o más complementos. Sun proporciona dos complementos. El complemento audit_binfile.so escribe datos binarios de auditoría en un archivo. El complemento audit_syslog.so ofrece resúmenes de texto seleccionados de los registros de auditoría al registro syslog.
Lee los datos de auditoría desde el núcleo y produce los datos con un complemento auditd.
Ejecuta la secuencia de comandos audit_warn para advertir acerca de distintas condiciones. El complemento audit_binfile.so ejecuta la secuencia de comandos audit_warn. De manera predeterminada, la secuencia de comandos envía advertencias al alias de correo electrónico audit_warn y a la consola. El complemento syslog.so no ejecuta la secuencia de comandos audit_warn.
De manera predeterminada, cuando todos los directorios de auditoría están llenos, se suspenden los procesos que generan registros de auditoría. Además, el daemon auditd escribe un mensaje a la consola y al alias de correo electrónico audit_warn. En este punto, sólo el administrador del sistema puede corregir el servicio de auditoría. El administrador puede iniciar sesión para escribir archivos de auditoría en medios sin conexión, eliminar archivos de auditoría del sistema y realizar otras tareas de limpieza.
La política de auditoría se puede volver a configurar con el comando auditconfig.
El daemon auditd se puede iniciar automáticamente cuando el sistema se inicia en modo multiusuario. O bien, puede iniciar el daemon desde la línea de comandos. Cuando el daemon auditd se inicia, calcula la cantidad de espacio libre necesaria para los archivos de auditoría.
El daemon auditd usa la lista de directorios de auditoría en el archivo audit_control como ubicaciones posibles para crear archivos de auditoría. El daemon mantiene un puntero en esta lista de directorios, comenzando por el primer directorio. Cada vez que el daemon auditd necesita crear un archivo de auditoría, el daemon coloca el archivo en el primer directorio disponible en la lista. La lista se inicia en el puntero actual del daemon auditd. Puede restablecer el puntero al principio de la lista mediante la ejecución del comando audit -s. El comando audit-n instruye al daemon a que pase a otro archivo de auditoría. El archivo nuevo se crea en el mismo directorio que el archivo actual.
El comando audit controla las acciones del daemon auditd. El comando audit puede realizar las siguientes tareas:
Habilitar y deshabilitar la auditoría.
Restablecer el daemon auditd.
Ajustar la máscara de preselección de auditoría en el sistema local.
Escribir los registros de auditoría en un archivo de auditoría diferente.
Para obtener una explicación de las opciones disponibles, consulte la página del comando man audit(1M).
El comando bsmrecord muestra el formato de los eventos de auditoría que se definen en el archivo /etc/security/audit_event. La salida incluye el ID de auditoría del evento, la clase de auditoría, el indicador de auditoría y los tokens de auditoría del registro en orden. Sin ninguna opción, la salida del comando bsmrecord se muestra en una ventana de terminal. Con la opción -h, la salida es adecuada para visualizarla en un explorador. Para obtener ejemplos del uso del comando bsmrecord, consulte Cómo visualizar formatos de registros de auditoría. Asimismo, consulte la página del comando man bsmrecord(1M).
El comando auditreduce resume los registros de auditoría que se almacenan en formato binario. El comando puede fusionar los registros de auditoría de uno o más archivos de auditoría de entrada. El comando también se puede utilizar para realizar una selección posterior de los registros de auditoría. Los registros permanecen en formato binario. Para fusionar toda la pista de auditoría, ejecute este comando en el servidor de la auditoría. El servidor de auditoría es el sistema que monta todos los sistemas de archivos de auditoría para la instalación. Para obtener más información, consulte la página del comando man auditreduce(1M).
El comando auditreduce lo habilita a realizar un seguimiento de todas las acciones auditadas en varios sistemas de una sola ubicación. El comando puede leer la combinación lógica de todos los archivos de auditoría como una sola pista de auditoría. De forma idéntica, debe configurar todos los sistemas en una ubicación de la auditoría y crear servidores y directorios locales para los archivos de auditoría. El comando auditreduce ignora cómo se generaron los registros o dónde se guardan los registros. Sin opciones, el comando auditreduce fusiona los registros de auditoría de todos los archivos de auditoría de todos los subdirectorios del directorio root de auditoría. Normalmente, el directorio root de auditoría es /etc/security/audit. El comando auditreduce envía los resultados fusionados a una salida estándar. También puede colocar los resultados en un solo archivo de salida ordenado cronológicamente. El archivo contiene los datos binarios.
El comando auditreduce también puede seleccionar determinados tipos de registros para el análisis. Las funciones de fusión y las funciones de selección del comando auditreduce tienen lógica independiente. El comando auditreduce captura los datos de los archivos de entrada a medida que se leen los registros, antes de que los archivos sean fusionados y luego escritos en el disco.
Al especificar opciones en el comando auditreduce, también puede hacer lo siguiente:
Solicitar registros de auditoría generados por clases de auditorías especificadas
Solicitar registros de auditoría generados por un usuario particular
Solicitar registros de auditoría generados en fechas específicas
Sin argumentos, el comando auditreduce comprueba los subdirectorios dentro del directorio /etc/security/audit, el directorio root de auditoría predeterminado. El comando comprueba que haya un directorio files en el que residan los archivos start-time.end-time.hostname. El comando auditreduce es muy útil cuando los datos de auditoría residen en directorios independientes. La Figura 31-1 ilustra los datos de auditoría en directorios independientes para hosts diferentes. La Figura 31-2 ilustra los datos de auditoría en directorios independientes para servidores de auditoría diferentes.
Figura 31-1 Almacenamiento de pista de auditoría por host
Figura 31-2 Almacenamiento de pista de auditoría por servidor
Si la partición para el directorio /etc/security/audit es muy pequeña, es posible que no necesite almacenar datos de auditoría en el directorio predeterminado. Puede transferir el comando auditreduce a otro directorio mediante la opción -R:
# auditreduce -R /var/audit-alt
También puede especificar un subdirectorio particular mediante la opción -S:
# auditreduce -S /var/audit-alt/host1
Para conocer otras opciones y obtener más ejemplos, consulte la página del comando man auditreduce(1M).
El comando praudit hace que la salida del comando auditreduce sea legible. El comando praudit lee los registros de auditoría en formato binario a partir de la entrada estándar y muestra los registros en un formato presentable. La entrada puede ser conducida desde el comando auditreduce o desde un único archivo de auditoría. La entrada también puede ser producida con el comando cat para concatenar varios archivos o el comando tail para un archivo actual de auditoría.
El comando praudit puede generar cuatro formatos de salida. Una quinta opción, -l (longitud), imprime un registro de auditoría por línea de la salida. El valor predeterminado es que coloque un token de auditoría por línea de la salida. La opción -d cambia el delimitador que se usa entre los campos de tokens y entre los tokens. El delimitador predeterminado es una coma.
Predeterminado: el comando praudit sin opciones muestra un token de auditoría por línea. El comando muestra el evento de auditoría según su descripción, como la llamada del sistema ioctl(2). Cualquier valor que se pueda visualizar como texto se muestra en formato de texto. Por ejemplo, un usuario se muestra como el nombre de usuario, no como el ID de usuario.
–r option: la opción sin procesar muestra como un número cualquier valor que pueda ser numérico. Por ejemplo, un usuario se muestra por ID de usuario, las direcciones de Internet están en formato hexadecimal y los modos están en formato octal. El evento de auditoría se muestra como su número de evento, por ejemplo, 158.
–s option: la opción de formato corto muestra el evento de auditoría según su nombre de tabla, por ejemplo, AUE_IOCTL. La opción muestra los otros tokens como los muestra la opción predeterminada.
–x option: la opción XML muestra el registro de auditoría en formato XML. Esta opción es útil como entrada a los exploradores, o como entrada a las secuencias de comandos que manipulan XML.
El XML se describe mediante una DTD que proporciona el servicio de auditoría. El software de Oracle Solaris también proporciona una hoja de estilo. La DTD y la hoja de estilo están en el directorio /usr/share/lib/xml.
En el formato de salida predeterminado del comando praudit, cada registro se identifica fácilmente como una secuencia de tokens de auditoría. Cada token se presenta en una línea separada. Cada registro comienza con un token header. Por ejemplo, puede seguir procesando la salida con el comando awk.
Ésta es la salida del comando praudit - l para un token header:
header,173,2,settppriv(2),,example1,2010-10-10 10:10:02.020 -07:00
Ésta es la salida del comando praudit - r para el mismo token header:
121,173,2,289,0x0000,192.168.86.166,1066077962,174352445
Ejemplo 31-1 Procesamiento de la salida de praudit con una secuencia de comandos
Es posible que quiera procesar la salida del comando praudit como líneas de texto. Por ejemplo, es posible que quiera seleccionar registros que el comando auditreduce no pueda seleccionar. Puede utilizar una secuencia de comandos de shell sencilla para procesar la salida del comando praudit. La siguiente secuencia de comandos sencilla de ejemplo coloca un registro de auditoría en una línea, busca una cadena especificada por el usuario y devuelve el archivo de auditoría a su forma original.
#!/bin/sh # ## This script takes an argument of a user-specified string. # The sed command prefixes the header tokens with Control-A # The first tr command puts the audit tokens for one record # onto one line while preserving the line breaks as Control-A # praudit | sed -e '1,2d' -e '$s/^file.*$//' -e 's/^header/^aheader/' \\ | tr '\\012\\001' '\\002\\012' \\ | grep "$1" \\ Finds the user-specified string | tr '\\002' '\\012' Restores the original newline breaks
Tenga en cuenta que ^a en la secuencia de comandos equivale a Control-A, no los dos caracteres ^ y a. El prefijo distingue el token header de la cadena header que podría aparecer como texto.
El comando auditconfig proporciona una interfaz de línea de comando para recuperar y establecer parámetros de configuración de auditoría. El comando auditconfig puede realizar las siguientes tareas:
Mostrar, comprobar y configurar la política de auditoría
Determinar si la auditoría está activada o desactivada
Gestionar el directorio de auditoría y el archivo de auditoría
Gestionar la cola de auditoría
Obtener y establecer máscaras de preselección
Obtener y establecer el evento de auditoría en las asignaciones de clase de auditoría
Obtener y establecer información de configuración, como ID de sesión e ID de auditoría
Configurar las características de auditoría para un proceso, un shell y una sesión
Reiniciar estadísticas de auditoría
Para obtener una explicación de las opciones de comandos, consulte la página del comando man auditconfig(1M).