Documente Academic
Documente Profesional
Documente Cultură
Fecha: 11/03/2013
rsyslog Descripcin: Es un programa de logging de mensajes, implementa el protocolo bsico de syslog y lo extiende agregando filtros, con una configuracin flexible. Tiene la capacidad de reenviar va UDP o TCP los mensajes del log a otra mquina. En Debian, actualmente es el sistema de logging por default del sistema. Instalacin: apt-get install rsyslog Configuracin: /etc/rsyslog.conf Ejemplos de configuracin del cliente: $WorkDirectory /var/spool/rsyslog/work # default location for work (spool) files $ActionQueueType LinkedList # use asynchronous processing $ActionQueueFileName srvrfwd # set file name, also enables disk mode $ActionResumeRetryCount -1 # infinite retries on insert failure $ActionQueueSaveOnShutdown on # save in-memory data if rsyslog shuts down *.* @@SERVER_REMOTO
Esta es la configuracin necesaria para reenviar los mensajes del log a un SERVER_REMOTO utilizando TCP en el puerto 514. Y en el caso en que la conexin entre el cliente y el servidor falle, rsyslog almacenara los datos en /var/spool/rsyslog/work para su posterior reenvo.
Ejemplos de configuracin del server: $ModLoad imtcp $InputTCPServerRun 514 Esta es la configuracin para habilitar la recepcin de los mensajes del log en el servidor. Notas: Hay que recordar tener el puerto 514 TCP abierto en el OUTPUT del cliente y en el INPUT del server. Tambin el servidor debe estar creador el directorio /var/spool/rsyslog/work. mkdir -p /var/spool/rsyslog/work
/etc/init.d/rsyslog restart IMPORTANTE: Para que el server remoto almacene los mensajes con el hostname del server remoto, el archivo de hostname del cliente debe tener esta estructura. /etc/hosts 127.0.0.1 127.0.0.1
SERVER localhost
Syslog
La configuracin del demonio syslogd se realiza por medio del fichero /etc/syslog.conf que especifica cmo tratar la informacin de logs
Cada entrada consiste en los campos facilidad, nivel y accin separados por tabuladores, como en los siguientes ejemplos: facilidad.nivel accin facilidad1,facilidad2.nivel accin facilidad1.nivel1;facilidad2.nivel2 accin *.nivel accin facilidad.=nivel accin facilidad.!nivel accin ...
facilidad indica el programa que genera los logs, nivel el nivel de logs y accin lo que se hace con ellos, por ejemplo mail.info /var/log/mail.info
indica que los mensajes de prioridad info o superior del sistema de mail se guarden en el fichero /var/log/mail.info
El smbolo # indica comentario Se permiten el uso de comodines, como *, = y ! o * representa todas las aplicaciones o todos los niveles o = delante de un nivel indica que slo se traten los mensajes de ese nivel o ! delante de un nivel indica que se traten todos los niveles menos el especificado Ejemplo, guarda todos los mensajes del nivel debug en el fichero /var/log/debug: *.=debug
o
-/var/log/debug
el guin delante del nombre del fichero indica que no se sincronice el fichero despus de cada escritura (aumenta la velocidad) Para ms informacin, ver las pginas de manual de syslogd y syslog.conf
Campo facilidad Se usan los siguientes: Facilidad Uso auth Sistema de autenticacin, incluyendo login, su y getty authpriv Programas de autorizacin privados cron cron y at daemon Demonios del sistema ftp Demonio de ftp kern Mensajes generados por el kernel local0-7 Reservado para uso local lpr Sistema de impresin mail Sistema de mail mark Mensajes internos de syslogd (no usable por aplicaciones) news Sistema de news en la red syslog Mensajes del demonio de syslog user Aplicaciones de usuario uucp Sistema UUCP * Todas las facilidades menos mark Niveles Los niveles de prioridad son los siguientes (en orden ascendente) Nivel Uso debug Mensajes generados en la depuracin de un programa info Mensajes informativos notice Mensajes no crticos que requieren investigacin adicional warning Mensajes de aviso err Otros errores
crit Condiciones crticas como errores hardware alert Condiciones que se deberan resolver rpidamente emerg Condiciones de pnico muy importantes Adems, none permite anular facilidades: *.debug;mail.none Acciones Pueden indicarse diversas acciones Accin Uso n_fichero Ruta absoluta al fichero donde se guardan los mensajes n_terminal Escribe los mensajes en el terminal @host o @ip Host remoto donde su syslogd recoge los mensajes user1, user2 Escribe los mensajes a los usuarios si estn conectados * Todos los usuarios conectados reciben los mensajes Por defecto, syslogd no acepta mensajes de otros hosts
Para que los acepte debe iniciarse con la opcin -r (cambiarlo en /etc/init.d/sysklogd) La opcin -h permite que syslogd reenve mensajes recibidos de una mquina cara otra Ver el manual de syslogd para ms detalles
Ejemplos de configuracin 1. Enva todos los mensajes crticos y superiores (crit, alert y emerg) a todos los usuarios conectados *.crit *
2. Enva los mensajes info y notice, menos los de autorizacin, al fichero messages *.=info;*.=notice;auth,authpriv.none -/var/log/messages
3. Enva los mensajes de info y superiores de demonios y autorizacin a un sistema remoto daemon,auth.info @otrohost
NOTA: Cuando modificamos el fichero de configuracin, debemos reiniciar el syslogd Comando logger Permite enviar mensajes al sistema de log del sistema (p.e. para usar desde scripts2)
prioridad se especifica de la forma facilidad.nivel (por defecto, usa user.notice) Para las opciones, ver la pgina de manual
Ejemplos:
Enva un mensaje con nivel err al sistema de mail logger -p mail.err "Prueba de mail.err"
Registra el mensaje del fichero /etc/motd en auth.notice, ponindole una etiqueta TEST logger -p auth.notice -t TEST -f /etc/motd
Bibliografa:
http://www.ac.usc.es/docencia/ASRII/Tema_1html/node2.html http://sysadmin.vazqueznanini.com.ar/rsyslog