La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

2008 Escuela de Informática y Telecomunicaciones, DuocUC Escuela de Informática y Telecomunicaciones Clase 10: Archivos LOG en BASH, introd. A la manipulación.

Presentaciones similares


Presentación del tema: "2008 Escuela de Informática y Telecomunicaciones, DuocUC Escuela de Informática y Telecomunicaciones Clase 10: Archivos LOG en BASH, introd. A la manipulación."— Transcripción de la presentación:

1 2008 Escuela de Informática y Telecomunicaciones, DuocUC Escuela de Informática y Telecomunicaciones Clase 10: Archivos LOG en BASH, introd. A la manipulación de PROCESOS en LINUX Nombre unidad de aprendizaje: Programación avanzada de SCRIPTS Programación Aplicada

2 2© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Objetivos  Objetivos de la clase  Programa rutinas utilizando los diferentes tipos de variables, constantes, operadores y sentencias de control en lenguaje Bash.  Construye rutinas scripting para el análisis de LOG.  Construye rutinas scripting Web de monitoreo de proceso y eventos.

3 3© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Archivos de LOG  El SISTEMA DE LOGS de LINUX (log = registro), es un mecanismo estándar que se encarga de recoger los mensajes generados por el kernel, los programas, aplicaciones y demonios y lo que está ocurriendo en el sistema, y enviarlos a un destino predefinido.  Esta información es muy importante para detectar intentos de acceso no autorizados, como se comporta un manejador, seguridad, estadísticas, detección de problemas, etc.

4 4© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Archivos de LOG  La información se envía en forma de mensajes a unos archivos conocidos como archivos de registro o archivos de logs.  En cada “mensaje de log” consta la fuente (el programa que generó el mensaje), la prioridad (nivel de importancia del mensaje), la fecha y la hora.

5 5© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Archivos de LOG  Por ejemplo, un mensaje de error de kernel indicando un problema con los datos de un sistema de archivos ext2fs debería aparecer en los archivos log como: Dec 1 21:03:35 loomer kernel: EXT2-fs error (device 3/2): ext2_check_blocks_bit map: Wrong free blocks count in super block, stored = 27202, counted = 27853

6 6© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Archivos de LOG  Hay varios niveles de prioridad de los mensajes (de menos a más prioritario: debug, info, notice, warning, warn, err, error, crit, alert, emerg y panic) y varios tipos de mensajes (auth, authpriv, cron, daemon, kern, lpr, mail, mark, news, security, syslog, user, uucp y local0-local7).  El SISTEMA DE LOGS arranca con el SCRIPT /etc/init.d/sysklogd, y tiene dos demonios: syslogd y klogd.

7 7© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Archivos de LOG  El demonio syslogd permite gestionar los logs del sistema.  syslogd distribuye los mensajes a archivos, tuberías, destinos remotos, terminales o usuarios, usando las indicaciones especificadas en su archivo de configuración /etc/syslog.conf, donde se indica qué se “loguea“ y a dónde se envían estos logs.

8 8© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Archivos de LOG  syslogd responde a la señal 1 (SIGHUP) cerrando los logs, releyendo la configuración y reiniciando la operación. Es por eso que si realizamos algún cambio en la configuración, o si rotamos o movemos los archivos de log, es necesario enviarle una señal SIGHUP a syslogd.

9 9© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Archivos de LOG  Una herramienta bastante potente para depurar errores en la configuración de syslog es ejecutarlo en modo debug con el flag -d (syslog -d). Ejecutado de este modo syslog despliega una tabla con una columna por cada facility y un renglón por cada acción.  Los números en la tabla desplegada indican a partir de cual nivel se aplica la acción para cada facility.

10 10© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Archivos de LOG  Cuando se ejecuta en modo debug syslogd no libera el terminal. Después de desplegar la tabla con el resumen de acciones queda desplegando en pantalla cada mensaje que recibe y las acciones que se le aplican.  El comando logger permite enviar eventos al demonio syslogd, por lo que se utiliza en scripts para registrar mensajes vía sysklogd. Por ejemplo, si hacemos:

11 11© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Archivos de LOG  veremos que se ha añadido a /var/log/messages la línea: # logger -t mi_programa -f /var/log/messages "Mensaje ejemplo" May 14 23:10:13 pc450 mi_programa: Mensaje ejemplo

12 12© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Archivos de LOG  El demonio klogd se encarga de los logs del kernel. Lo normal es que klogd envíe sus mensajes a syslogd pero no siempre es así, sobre todo en los eventos de alta prioridad, que salen directamente por pantalla.  Los logs se guardan en archivos ubicados en el directorio /var/log, aunque muchos programas manejan sus propios logs y los guardan en /var/log/.

13 13© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Archivos de LOG  Además, es posible especificar múltiples destinos para un mismo mensaje. Algunos de los log más importantes son:  /var/log/messages: aquí encontraremos los logs que llegan con prioridad info (información), notice (notificación) o warn (aviso).  /var/log/kern.log: aquí se almacenan los logs del kernel, generados por klogd.

14 14© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Archivos de LOG  /var/log/auth.log: en este log se registran los login en el sistema, las veces que hacemos su, etc. Los intentos fallidos se registran en líneas con información del tipo invalid password o authentication failure.  /var/log/dmesg: en este archivo se almacena la información que genera el kernel durante el arranque del sistema. Podemos ver su contenido con el comando dmesg.

15 15© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Archivos de LOG  /var/log/wtmp: este log contiene la información relacionada a los “logins” y “logouts” relacionados al sistema (desde donde, horario, fecha, usuario). Para poder verlo tenemos que utilizar el comando last.  Relacionado con este, también tenemos el archivo utmp, el cual nos brinda información acerca de los usuarios “logeados” en el sistema al momento de solicitar la información.

16 16© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Archivos de LOG  Para acceder a esta información podemos utilizar el comando who (también se puede utilizar el comando last).  /var/log/lastlog: Este archivo contiene información relativa a la fecha y hora del último login de cada usuario, para acceder a esta información podemos hacerlo con el comando lastlog.

17 17© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Archivos de LOG  Para indicar de que usuario queremos saber, anteponemos -u al nombre de usuario, por ejemplo, podemos usar: lastlog -u alumno.  /var/log/faillog: este log registra los intentos fallidos de cada usuario al querer “logearse” en el sistema, para acceder tenemos el comando faillog. [alumno@localhost ~]$ faillog –u alumno Username Failures Maximum Latest alumno 0 2

18 18© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Archivos de LOG  En la columna "Maximum" se indica la cantidad de intentos erróneos que se permiten antes de deshabilitar la cuenta, para modificar este valor se debe usar la orden faillog -u alumno -m valor donde valor es el número máximo.  Para evitar que los archivos log crezcan indefinidamente con los mensajes, se hace que sean circulares (son rotados).

19 19© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Rotación de los archivos de LOG  Los archivos log pueden volverse grandes y difíciles de manejar, debido a esto LINUX provee un comando para rotarlos y así evitar que la información actual se mezcle con información vieja irrelevante.  El paquete logrotate contiene una tarea de cron que hace circular (rotar) automáticamente los archivos de log.

20 20© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Rotación de los archivos de LOG  Para esto último será necesario utilizar el archivo de configuración /etc/logrotate.conf y los archivos de configuración en el directorio /etc/logrotate.d.  Se puede configurar el comportamiento automático de logrotate editando el archivo de configuración /etc/logrotate.conf.

21 21© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Rotación de los archivos de LOG  Generalmente, logrotate se ejecuta cada cierto tiempo automáticamente, aunque también puede ejecutarse de forma manual.  Cuando es ejecutado, logrotate tomará la versión actual de un archivo de log y le añadirá un ".1" al final de su nombre. Luego, cualquier otro archivo rotado previamente será renombrado secuencialmente ".2", ".3", etc. Cuando más grande el número del log, más viejo es el archivo.

22 22© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Rotación de los archivos de LOG  El programa logrotate puede rotar los archivos log basado en varios parámetros, pudiéndose realizar rotaciones diariamente, semanalmente o mensualmente; además, basado en el tamaño del archivo de log, logrotate puede comprimir los logs para no comprometer el espacio del disco, etc.  En resumen, logrotate es una completa herramienta de administración de los logs del sistema.

23 23© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Rotación de los archivos de LOG  Una vista parcial del archivo de configuración de logrotate se muestra a continuación: [root@localhost ~]# cat /etc/logrotate.conf # rotate log files weekly weekly # keep 4 weeks worth of backlogs rotate 4 # create new (empty) log files after rotating old ones create # uncomment this if you want your log files compressed #compress …

24 24© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Rotación de los archivos de LOG  Algunas de las directivas de configuración de logrotate incluyen: daily - Los archivos log serán rotados todos los días. weekly - Los archivos log serán rotados una vez por semana. monthly - Los archivos log serán rotados una vez por mes.

25 25© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Rotación de los archivos de LOG rotate – Especifica el número de veces que los archivos log serán rotados antes de que sean borrados o enviados por correo a una dirección especificada en una directiva mail. compress – Las versiones antiguas de los archivos log serán comprimidas con gzip.  Existen varias otras directivas asociadas con el programa logrotate; como siempre, consultar el manual en línea para más información.

26 26© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Rotación de los archivos de LOG  Son varias las aplicaciones y/o servicios que instalan sus propios archivos de rotación de logs dentro del directorio /etc/logrotate.d/, esto permite asegurar que sus logs sean adecuadamente rotados.  Por ejemplo, el paquete apache2 crea el archivo de rotación /etc/logrotate/apache2.

27 27© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Seguridad general de los logs  Por lo general, no se debe permitir que los demás usuarios vean los archivos de log de un servidor, y especialmente que puedan ser capaces de modificarlos o borrarlos.  En general, la mayoría de los archivos de log son propiedad del usuario y grupo root, y no tienen asignados permisos para otros, de modo que en la mayoría de los casos, el único usuario que será capaz de modificar los logs será el root.

28 28© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Seguridad general de los logs  Se pueden tomar medidas de seguridad adicionales, siendo la más simple el uso de la orden chattr (CHANGE ATTRIBUTES), para dejar exclusivamente permiso de sólo-añadir a los archivos de log.  De tal forma que si se da un problema en /tmp que permita a la gente sobreescribir archivos del sistema no se puedan dañar los archivos de logs.

29 29© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Seguridad general de los logs  Para dejar un archivo en modo sólo-añadir, se puede utilizar el siguiente comando:  A la función chattr sólo tiene acceso el superusuario. [root@localhost ~]# chattr +a nombre_archivo

30 30© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Seguridad general de los logs  Si se dejan todos los archivos en modo sólo- añadir, hay que tener en cuenta que fallarán los programas de rotación de logs, puesto que no pueden dejar en cero el archivo de log. Para deshabilitar el atributo sólo-añadir se agrega la siguiente línea al script: chattr -a nombre_archivo

31 31© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Seguridad general de los logs  y luego, se puede añadir una línea después del script de rotación de logs para reiniciar el flag de sólo-añadir.  Si los archivos de logs se dejan en el sistema, quizás sea preferible activar también el flag de inmutables, de forma que no se puedan falsificar con facilidad.  Para activar el archivo como inmutable, simplemente utilizar el comando:

32 32© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Seguridad general de los logs  lo que evitará cualquier cambio en el archivo.  sólo el usuario root tiene acceso al flag de inmutable. [root@localhost ~]# chattr +i nombre_archivo

33 33© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Concepto de PROCESO  La idea más generalmente aceptada acerca de un PROCESO es la de programa en ejecución.  En WINDOWS a los procesos se les denomina TAREAS, en otros sistemas operativos se les denomina TRABAJOS o JOBS. Proceso:=Programa en ejecución

34 34© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Concepto de PROCESO  Los PROCESOS son entidades activas (se están ejecutando) y los programas son entidades pasivas (NO se están ejecutando, NO tienen actividad), de aquí que: Proceso≠Programa

35 35© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Concepto de PROCESO  Los PROCESOS son entidades abstractas que el sistema operativo utiliza para controlar y manipular la ejecución de los programas.  Un PROCESO no es más que un programa o aplicación cargado en memoria y ejecutándose.  Durante su existencia los procesos pueden pasar por una serie de “estados” finitos, tal como lo muestra la siguiente figura:

36 36© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Concepto de PROCESO

37 37© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Manipulación de PROCESOS en LINUX  En LINUX, el kernel o núcleo del sistema asigna a los PROCESOS un número llamado PID (Process ID o Process IDentification), que permite la identificación única de dicho PROCESO en el sistema.  Aunque se podría pensar que sólo con el nombre ya tendríamos suficiente para identificar un PROCESO, es imprescindible tener el PID, ya que podemos ejecutar un PROCESO tantas veces como queramos.

38 38© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Manipulación de PROCESOS en LINUX  Con lo anterior, vamos a tener varias instancias del mismo PROCESO, pero cada una con un PID distinto.  En GNU/LINUX (al igual que en UNIX) el comando ps (process status) permite obtener información acerca del estado de los PROCESOS de usuarios y del sistema.

39 39© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Información de los PROCESOS  Como se puede ver el primer número es el PID que el kernel del sistema le asigna al PROCESO y en la columna CMD se puede ver el nombre del PROCESO. [alumno@localhost ~]$ ps PIDTTY TIMECMD 8621pts000:00:00-bash 8745pts000:00:00ps [alumno@localhost ~]$

40 40© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Información de los PROCESOS  TTY identifica la terminal o consola donde se está ejecutando el PROCESO. La columna TIME nos indica la cantidad de tiempo total que el PROCESO se ha estado ejecutando.  Al ser un comando estándar en todos los UNIX y LINUX, ps soporta una buena cantidad de parámetros y opciones especificadas en versiones anteriores del comando.

41 41© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Información de los PROCESOS  El parámetro -e devuelve un listado de todos los procesos que se están ejecutando.  El parámetro -f devuelve un listado extendido. En este último caso veremos en pantalla el PPID del proceso (identificador del proceso padre) y la hora en la que se ejecutó el proceso (STIME).

42 42© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Información de los PROCESOS  Los parámetros pueden aparecer juntos en el mismo comando, es decir, podríamos llamar al comando ps de la siguiente forma: ps –ef, de esta manera obtendríamos un listado extendido de todos los procesos que se están ejecutando en el sistema.  El parámetro -u lista información de los procesos lanzados por un determinado usuario, así, ps -u alumno, listará información de los procesos que está ejecutando el usuario alumno.

43 43© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Matar/Terminar PROCESOS en LINUX  Otro de los comandos de manipulación de procesos en GNU/LINUX (y UNIX) es el comando kill, asociado básicamente a la acción de “matar” o terminar procesos.  En términos técnicos, el propósito del comando kill no es solamente “matar” o terminar un proceso: el comando kill en realidad está diseñado para enviar una SEÑAL (SIGNAL) a un proceso.

44 44© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Matar/Terminar PROCESOS en LINUX  Aparte de informarnos sobre los PROCESOS, el sistema operativo, más precisamente el kernel del sistema operativo, nos permite también enviarles señales para informarles de algún evento: quitarlos de la cola de ejecución, terminarlos, aumentar su prioridad, etc.  Es decir, NO todas las señales pasadas con kill son para “matar” o terminar PROCESOS.

45 45© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Matar/Terminar PROCESOS en LINUX  Hay dos formas básicas de terminar procesos:  Por defecto, la señal pasada al PROCESO en la primera forma del comando es la señal 15, denominada SIGTERM.  SIGTERM se utiliza para “terminar” un PROCESO.  kill kill -9

46 46© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Matar/Terminar PROCESOS en LINUX  Con la primera forma informamos al proceso (en el comando hay que especificar el PID del PROCESO, no el nombre) que queremos que termine, pero dejamos que guarde su información y finalice de forma correcta.  Con la segunda forma eliminamos el proceso directamente de la cola de ejecución; se utiliza cuando un proceso está “zombie”, colgado o no responde, o simplemente está consumiendo demasiada CPU en un momento determinado.

47 47© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Matar/Terminar PROCESOS en LINUX  De esta forma, la señal pasada al PROCESO es la señal 9, denominada SIGKILL.  Si queremos “matar” PROCESOS de forma más cómoda, podemos usar el comando killall.  Otro comando útil es skill que nos permite enviar señales a los procesos de forma distinta. Por ejemplo, si queremos detener todas las ejecuciones de un determinado usuario podríamos utilizar:

48 48© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Matar/Terminar PROCESOS en LINUX  skill -STOP -u, con lo que todos los procesos de dicho usuario terminarían.  Cuando estamos ejecutando un programa en consola y queremos terminarlo, podemos enviar directamente la señal SIGTERM con +, y podemos pausarlo con + y devolverlo luego a primer plano con fg.

49 49© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Desarrollo Matar/Terminar PROCESOS en LINUX  En resumen, hay un total de 32 señales que se pueden enviar a los procesos, sin embargo, las más utilizadas son las siguientes: kill -1 (SIGHUP) para reiniciar un proceso. kill -9 (SIGKILL) para matar un proceso. kill -15 (SIGTERM) para terminar un proceso.

50 50© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Resumen  Resumen de la clase  El SISTEMA DE LOGS de LINUX, es un mecanismo estándar que se encarga de recoger los mensajes generados por los programas, aplicaciones y demonios y enviarlos a un destino predefinido.  En cada mensaje de log se deja constancia de la fuente (el programa que generó el mensaje), la prioridad (nivel de importancia del mensaje), la fecha y la hora del evento.  En LINUX, syslogd gestiona los logs del sistema y klogd se encarga de los logs del kernel.  Los logs de los sistemas UNIX/LINUX se guardan en archivos ubicados en el directorio /var/log, aunque, usualmente, muchos programas manejan sus propios logs y los guardan en /var/log/.  Los archivos de log en LINUX son críticos para la resolución de problemas y el mantenimiento del sistema.

51 51© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Resumen  Resumen de la clase  El registro de los mensajes de log usualmente se hace a archivos de texto, evitando así la necesidad de herramientas propietarias para leerlos. Los archivos de texto son también fáciles de leer con miras a su uso en scripts y programas.  También hay archivos de log binarios, que necesariamente deben ser consultados a través de comandos y/o herramientas LINUX.  Los logs son rotados para evitar que se vuelvan demasiado grandes y son separados de la información actual, dicha rotación es configurable. Se puede decir que logrotate es una completa herramienta de administración de los logs del sistema.  El registro de los logs es altamente configurable, pudiendo incluso ser guardados en sistemas separados por cuestiones de seguridad y/o resguardo.

52 52© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Resumen  Resumen de la clase  Por lo general, no se debe permitir que los demás usuarios vean los archivos de log de un servidor, y especialmente que puedan ser capaces de modificarlos o borrarlos; en general, la mayoría de los archivos de log son propiedad del usuario y grupo root, y no tienen asignados permisos para otros, de modo que en la mayoría de los casos, el único usuario que será capaz de modificar los logs será el root.  Se pueden tomar medidas de seguridad adicionales, siendo la más simple el uso de la orden chattr, para dejar exclusivamente permiso de sólo- añadir a los archivos de log. Si los archivos de logs se dejan en el sistema, quizás sea preferible activar también el flag de inmutables, de forma que no se puedan falsificar con facilidad.

53 53© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Resumen  Resumen de la clase  La idea mas generalmente aceptada acerca de un PROCESO es la de programa en ejecución.  Un PROCESO no es más que un programa o aplicación cargado en memoria y ejecutándose. Sin embargo, un PROCESO es mucho mas que un programa en memoria y sobre todo en la clase de sistema operativo que nos compete, con sus funciones de multiusuario y multitarea como lo son los sistemas UNIX/LINUX.  En LINUX, el kernel o núcleo del sistema asigna a los PROCESOS un número llamado PID, que permite la identificación única de dicho PROCESO en el sistema.  PID identificación del proceso, PPID identificación del proceso padre.  En GNU/LINUX el comando ps permite obtener información acerca de los PROCESOS de usuarios y del sistema.

54 54© 2007 Cisco Systems, Inc. Todos los derechos reservados.Cisco Public Escuela de Informática y Telecomunicaciones Resumen  Resumen de la clase  El comando kill no solo permite “matar” un proceso; el comando kill en realidad está diseñado para enviar una SEÑAL (SIGNAL) a un proceso. Entre las señales posibles esta la señal de “matar” un proceso: SIGKILL, la de terminar un proceso: SIGTERM, entre otras.


Descargar ppt "2008 Escuela de Informática y Telecomunicaciones, DuocUC Escuela de Informática y Telecomunicaciones Clase 10: Archivos LOG en BASH, introd. A la manipulación."

Presentaciones similares


Anuncios Google