[opensuse-es] verificar estado del servidor de logs
Hola, estoy intentando configurar nagios para que verifique el estado de un servidor de logs (syslogd) estándar. entre los diversos plugins que existen en nagios no encontré ninguno que verifique directamente el servicio syslogd, así que estaba intentando con el plugin "check_udp".. pero es necesario especificar un string de envio y uno de respuesta, pero no encuentro este ultimo !!! :-( las pruebas que hice, fueron: - el plugin, pero sin los strings de envio/respuesta: $check_udp -H logs -p 514 With UDP checks, a send/expect string must be specified. Usage:check_UDP -H host -p port [-w <warning time>] [-c <critical time>] [-s <send string>] [-e <expect string>] - con un netcat echo '<30>VHS-Test' | nc -u logs 514 funciona.. y en el servidor de logs encuentro la cadena VHS-Test ..pero no recibo ningún status desde el servidor. - he capturado el trafico con tcpdump y analizado el.. pero aparentemente el servidor "no envía" ningún paquete de respuesta/estado al cliente. funcionara así syslogd ??? digo.. se llega los paquetes bien, entonces lo graba en los archivos, del contrario da lo mismo y no avisa al cliente que debe de reenviar el paquete por que no ha llegado correctamente ??? mmm... alguna idea/sugerencia de como podría averigar "remotamente" el estado de un servidor syslogd ?? Obs.1: el servidor esta con cortafuegos y no se puede abrir otros puertos que no sean el 514 (ni siquiera tenemos acceso por ssh) Obs.2: tampoco es valida la opción de instalar el nagios-cliente en estés servidores. salu2 y atento -- -- Victor Hugo dos Santos Linux Counter #224399 -- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 El 2008-10-08 a las 12:01 -0400, Victor Hugo dos Santos escribió:
- con un netcat echo '<30>VHS-Test' | nc -u logs 514 funciona.. y en el servidor de logs encuentro la cadena VHS-Test ..pero no recibo ningún status desde el servidor.
- he capturado el trafico con tcpdump y analizado el.. pero aparentemente el servidor "no envía" ningún paquete de respuesta/estado al cliente.
funcionara así syslogd ???
Siendo UDP, lo normal es que no haya respuesta. Si la necesitaran usarían TCP.
digo.. se llega los paquetes bien, entonces lo graba en los archivos, del contrario da lo mismo y no avisa al cliente que debe de reenviar el paquete por que no ha llegado correctamente ???
Así es. Imaginate que una maquina está enviando eventos al syslog remoto, y que este se cae: ¿debe bloquear también la máquina primera porque no funciona el registro? Pues no, continúa trabajando y al registro que le den morcillas.
mmm... alguna idea/sugerencia de como podría averigar "remotamente" el estado de un servidor syslogd ??
Bueno... puedes detectar un string determinado en el syslog, y disparar un evento que mediante el netcat envíe algo de vuelta. El string podría incluir la IP a donde responder. Lo de disparar enventos en el syslog está previsto en el daemon syslog-ng, pero dá mucha guerra si tienes apparmour instalado y activo.
Obs.1: el servidor esta con cortafuegos y no se puede abrir otros puertos que no sean el 514 (ni siquiera tenemos acceso por ssh) Obs.2: tampoco es valida la opción de instalar el nagios-cliente en estés servidores.
Si no tienes acceso ssh ni en terminal local a ese servidor, mi receta no te vale. - -- Saludos Carlos E.R. -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.9 (GNU/Linux) iEYEARECAAYFAkjs8FQACgkQtTMYHG2NR9UAcQCfd+AaWHmYHFZPOVn1Alh3X3Dx skoAoIwT4yzCUj/atRyTPCyg7BN8BrGR =bMU8 -----END PGP SIGNATURE-----
El 8/10/08, Victor Hugo dos Santos escribió:
entre los diversos plugins que existen en nagios no encontré ninguno que verifique directamente el servicio syslogd,
Aquí tienes uno que quizá te sirva :-?: *** http://www.nagiosexchange.org/cgi-bin/page.cgi?g=Detailed%2F1484.html;d=1 check_sys is a multiple purpose plugin that performs the following checks: disk space, process list, swap utilization, load (run queue), syslog and errpt (AIX) *** Saludos, -- Camaleón -- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
On Wed, Oct 8, 2008 at 4:40 PM, Camaleón
El 8/10/08, Victor Hugo dos Santos escribió:
entre los diversos plugins que existen en nagios no encontré ninguno que verifique directamente el servicio syslogd,
Aquí tienes uno que quizá te sirva :-?:
*** http://www.nagiosexchange.org/cgi-bin/page.cgi?g=Detailed%2F1484.html;d=1
check_sys is a multiple purpose plugin that performs the following checks: disk space, process list, swap utilization, load (run queue), syslog and errpt (AIX) ***
Hola, ya o había visto.. pero este chequea localmente.. o sea.. habría que instalarlo en el pc que quiero monitorea.. :( el otro que encontré en este mismo sitio fue check_logserver (http://www.nagiosexchange.org/cgi-bin/page.cgi?g=Detailed%2F1381.html;d=1) pero es para sistemas que utilizan mysql como backend !! :-( aca estoy en la búsqueda.. pero aparenta que no hay una solución. ya que como pensé y confirmo Carlos.. el syslogd, no envia una confirmación de OK/Error al cliente.. asi que aparentemente, no hay mucho que hacer (al menos remotamente) salu2 y gracias. -- -- Victor Hugo dos Santos Linux Counter #224399 -- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
El 8/10/08, Victor Hugo dos Santos escribió:
aca estoy en la búsqueda.. pero aparenta que no hay una solución. ya que como pensé y confirmo Carlos.. el syslogd, no envia una confirmación de OK/Error al cliente.. asi que aparentemente, no hay mucho que hacer (al menos remotamente)
Quizá esté configurado así por seguridad :-? Los servicios dns o ntp sí responden (mediante "udp ping"*), pero efectivamente, el syslog no devuelve nada :-? * http://perform.wpi.edu/tools/ Saludos, -- Camaleón -- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 El 2008-10-09 a las 16:36 +0200, Camaleón escribió:
El 8/10/08, Victor Hugo dos Santos escribió:
aca estoy en la búsqueda.. pero aparenta que no hay una solución. ya que como pensé y confirmo Carlos.. el syslogd, no envia una confirmación de OK/Error al cliente.. asi que aparentemente, no hay mucho que hacer (al menos remotamente)
Quizá esté configurado así por seguridad :-?
Cuando se diseña un servicio para funcionar mediante udp, es que se piensa de antemano que no se quiere confirmación ni repetición de paquetes mal transmitidos. Si eso se necesita, para eso ya existe TCP. O lo puedes añadir en la aplicación. Por ejemplo, en VoIP o streaming se usa UDP sin confirmación. Si no llega o se corrompe un paquete de sonido o de video, pues mala suerte, no hay tiempo para pedir su repetición, ni ganas de sobrecargar la red ni el servidor. En el caso de syslog, pues las entradas se escriben según llegan, y es urgente, pero no se pueden parar las cosas esperando que llegue la repetición. La vida continúa. Si se pierde una entrada, pues mala suerte. Fíjate que incluso en el syslog local puedes leer este tipo de avisos: Aug 5 03:29:17 nimrodel syslog-ng[3677]: STATS: dropped 0 Aug 8 18:06:29 nimrodel syslog-ng[3682]: last message repeated 3 times Es decir, que si no le da tiempo tira los mensajes a la basura, y si llegan repetidos trata de ahorrar no grabandolos. - -- Saludos Carlos E.R. -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.9 (GNU/Linux) iEUEARECAAYFAkjuGwgACgkQtTMYHG2NR9UwzwCVHUWRzf+m/Gas2llY5wiYg1wd TgCfVoqn8/CBQrH32DS5REiisLXPNVA= =frVf -----END PGP SIGNATURE-----
El 9/10/08, Carlos E. R. escribió:
Cuando se diseña un servicio para funcionar mediante udp, es que se piensa de antemano que no se quiere confirmación ni repetición de paquetes mal transmitidos. Si eso se necesita, para eso ya existe TCP. O lo puedes añadir en la aplicación.
Lo de la seguridad... es que me suena haber leído algún boletín de esos de Secunia (antiguo) con problemas del syslog y ataques al puerto udp pero la verdad es que no sé si tiene alguna relación :-? Mira, en el manual del syslogd, pone: *** -r This option will enable the facility to receive message from the network using an internet domain socket with the syslog service (see services(5)). The default is to not receive any messages from the network. This option is introduced in version 1.3 of the sysklogd package. Please note that the default behavior is the opposite of how older versions behave, so you might have to turn this on. *** Y en /etc/sysconfig/syslog, pues no está habilitada esa opción ("syslogd_params"), pero ya digo, no sé si tiene relación con el hecho de que no responda a un ping udp desde la red local :-? Saludos, -- Camaleón -- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
2008/10/9 Camaleón
El 9/10/08, Carlos E. R. escribió:
Cuando se diseña un servicio para funcionar mediante udp, es que se piensa de antemano que no se quiere confirmación ni repetición de paquetes mal transmitidos. Si eso se necesita, para eso ya existe TCP. O lo puedes añadir en la aplicación.
Lo de la seguridad... es que me suena haber leído algún boletín de esos de Secunia (antiguo) con problemas del syslog y ataques al puerto udp pero la verdad es que no sé si tiene alguna relación :-?
mmm...logicamente, cualquer servicio que habilitas el acceso externo esta propenso a problemas de seguridad. pero, no creo mucho que tenga relacion..bueno.. siii.. se habilitas la opcion "-r" entonces, tu syslog esta trabajando en modo "servidor" y recibe los logs de "cualquer" equipo (existe algunas opciones para restringir).. y no solamente local. es como se tuveras un servidor web localmente... este no va tener problemas con los exploits y otras leseras (ya que no escuchas en las demas interfaces) hasta que habilita las demas interfaces, entonces esta correndo peligro de ataque !!! :D salu2 -- -- Victor Hugo dos Santos Linux Counter #224399 -- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 El 2008-10-09 a las 17:07 +0200, Camaleón escribió:
El 9/10/08, Carlos E. R. escribió:
Cuando se diseña un servicio para funcionar mediante udp, es que se piensa de antemano que no se quiere confirmación ni repetición de paquetes mal transmitidos. Si eso se necesita, para eso ya existe TCP. O lo puedes añadir en la aplicación.
Lo de la seguridad... es que me suena haber leído algún boletín de esos de Secunia (antiguo) con problemas del syslog y ataques al puerto udp pero la verdad es que no sé si tiene alguna relación :-?
Mira, en el manual del syslogd, pone:
*** -r This option will enable the facility to receive message from the network using an internet domain socket with the syslog service (see services(5)). The default is to not receive any messages from the network.
This option is introduced in version 1.3 of the sysklogd package. Please note that the default behavior is the opposite of how older versions behave, so you might have to turn this on. ***
Y en /etc/sysconfig/syslog, pues no está habilitada esa opción ("syslogd_params"), pero ya digo, no sé si tiene relación con el hecho de que no responda a un ping udp desde la red local :-?
No, no tiene relación. Pero imaginate que uno empieza a mandarle logs como loco al servidor de logs hasta que lo desborda por completo: es un ataque muy simple, y el servidor syslog clásico tiene poca defensa contra eso. El syslog-ng tiene alguna defensa más, puedes limitar el rango de IPs que pueden acceder, y no si hay alguna cosa más, no me lo he estudiado. Podrían tener algún tipo de clave criptografica :-? Lo de no responder significa simplemente que acepta los paquetes y no te dice pio de si lo acepta o no el mensaje en el log. Es un servicio sin conexión. - -- Saludos Carlos E.R. -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.9 (GNU/Linux) iEYEARECAAYFAkjuUTQACgkQtTMYHG2NR9XPBACfRuQYze/0LOt5pIPMO1RCI0tl Er8An0AmspPy0BRlV7Wbp2gJBAl59ZeC =s7Xm -----END PGP SIGNATURE-----
El 9/10/08, Carlos E. R. escribió:
No, no tiene relación.
Ah, o.k. :-)
Pero imaginate que uno empieza a mandarle logs como loco al servidor de logs hasta que lo desborda por completo: es un ataque muy simple, y el servidor syslog clásico tiene poca defensa contra eso. El syslog-ng tiene alguna defensa más, puedes limitar el rango de IPs que pueden acceder, y no si hay alguna cosa más, no me lo he estudiado. Podrían tener algún tipo de clave criptografica :-?
¿Una clave... como hace el dnssec, por ejemplo, para validar las peticiones? :-?
Lo de no responder significa simplemente que acepta los paquetes y no te dice pio de si lo acepta o no el mensaje en el log. Es un servicio sin conexión.
Bueno, en ese caso, una "falta de respuesta" indicaría que está "en servicio" :-P Saludos, -- Camaleón -- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 El 2008-10-09 a las 22:27 +0200, Camaleón escribió:
El 9/10/08, Carlos E. R. escribió:
No, no tiene relación.
Ah, o.k. :-)
Pero imaginate que uno empieza a mandarle logs como loco al servidor de logs hasta que lo desborda por completo: es un ataque muy simple, y el servidor syslog clásico tiene poca defensa contra eso. El syslog-ng tiene alguna defensa más, puedes limitar el rango de IPs que pueden acceder, y no si hay alguna cosa más, no me lo he estudiado. Podrían tener algún tipo de clave criptografica :-?
¿Una clave... como hace el dnssec, por ejemplo, para validar las peticiones? :-?
Esa es la idea. Pero digo que no se si existe.
Lo de no responder significa simplemente que acepta los paquetes y no te dice pio de si lo acepta o no el mensaje en el log. Es un servicio sin conexión.
Bueno, en ese caso, una "falta de respuesta" indicaría que está "en servicio" :-P
Pos tampoco. El paquete se manda, y si la puerta está cerrada o el ascensor averiado, pues a la basura; esto no es "seur" :-p - -- Saludos Carlos E.R. -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.9 (GNU/Linux) iEYEARECAAYFAkjueQAACgkQtTMYHG2NR9WnAQCfY3SZP+ymRyWg5jB80qGv9sBF z24AnR97do5eN24OTV4OOLfQKyUbCuGV =EI9W -----END PGP SIGNATURE-----
El 9/10/08, Carlos E. R. escribió:
El 2008-10-09 a las 22:27 +0200, Camaleón escribió:
Bueno, en ese caso, una "falta de respuesta" indicaría que está "en servicio" :-P
Pos tampoco. El paquete se manda, y si la puerta está cerrada o el ascensor averiado, pues a la basura; esto no es "seur" :-p
X-) Lo decía porque el "udping" me devuelve un resultado distinto si el daemon de syslog está iniciado o si está parado. Saludos, -- Camaleón -- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 El 2008-10-09 a las 23:57 +0200, Camaleón escribió:
Pos tampoco. El paquete se manda, y si la puerta está cerrada o el ascensor averiado, pues a la basura; esto no es "seur" :-p
X-)
Lo decía porque el "udping" me devuelve un resultado distinto si el daemon de syslog está iniciado o si está parado.
¿De donde sale ese udping? No está enla distro. Ni siquiera el webpin lo encuentra. - -- Saludos Carlos E.R. -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.9 (GNU/Linux) iEYEARECAAYFAkjuhNgACgkQtTMYHG2NR9UhPQCfc7Nod3NzlLGe3L1wj8hGJKuU Qw0An1yghj5F2UwX5NI9X2mq+zsyzAyX =T+CS -----END PGP SIGNATURE-----
El 10/10/08, Carlos E. R. escribió:
¿De donde sale ese udping? No está enla distro. Ni siquiera el webpin lo encuentra.
El udping sale de un mensaje anterior de este hilo, donde puse el enlace >:-) ... Tenía curiosidad en hacer un "ping" a un puerto udp (no tengo el nmap) y "googleando" encontré estas dos utilidades: *** Tools and Techniques for Measurement of Networks http://perform.wpi.edu/tools/ UDP Ping: UDP Ping is a customized ping tool using application-layer UDP packets to provide configurable ping intervals and packet sizes. UDP Ping uses a server and a client, where the UDP Ping client writes a sequence number and current timestamp into a UDP packet and sends it to the UDP Ping server which echoes the packet data back to the client. The client then reports the round-trip time and calculates the packet loss rate. http://perform.wpi.edu/downloads/udp-tools/udp-ping.tgz UDP Heartbeat: UDP Heartbeat reports one-way delay and packet loss. The UDP Heartbeat sender writes a sequence number and current timestamp in the UDP packet and sends it to the receiver. Upon receiving the packet, the receiver calculates the time difference and reports any missing packets. http://perform.wpi.edu/downloads/udp-tools/udp-heart.tgz *** Lo curioso es que, ejecutado al estilo "compadre" (sólo con la aplicación cliente desde un windows a servidor linux), con el servicio syslog iniciado, la respuesta es: *** Ping statistics for 10.0.0.11: Packets: Sent = 36, Received = 0, Lost = 36 (100.00 %loss), Approximate round trip times in milli-seconds: Minimum = 2000ms, Maximum = 0ms, Average = 0.00ms *** Con syslog detenido, obtengo: *** Pinging 10.0.0.11 with 32 bytes of data: recvfrom(): 10054 sendto(): 10093 *** :-? Saludos, -- Camaleón -- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
El 10/10/08, Carlos E. R. escribió: (reenvío porque no llegó a la lista)
¿De donde sale ese udping? No está enla distro. Ni siquiera el webpin lo encuentra.
El udping sale de un mensaje anterior de este hilo, donde puse el enlace >:-) ... Tenía curiosidad en hacer un "ping" a un puerto udp (no tengo el nmap) y "googleando" encontré estas dos utilidades: *** Tools and Techniques for Measurement of Networks http://perform.wpi.edu/tools/ UDP Ping: UDP Ping is a customized ping tool using application-layer UDP packets to provide configurable ping intervals and packet sizes. UDP Ping uses a server and a client, where the UDP Ping client writes a sequence number and current timestamp into a UDP packet and sends it to the UDP Ping server which echoes the packet data back to the client. The client then reports the round-trip time and calculates the packet loss rate. http://perform.wpi.edu/downloads/udp-tools/udp-ping.tgz UDP Heartbeat: UDP Heartbeat reports one-way delay and packet loss. The UDP Heartbeat sender writes a sequence number and current timestamp in the UDP packet and sends it to the receiver. Upon receiving the packet, the receiver calculates the time difference and reports any missing packets. http://perform.wpi.edu/downloads/udp-tools/udp-heart.tgz *** Lo curioso es que, ejecutado al estilo "compadre" (sólo con la aplicación cliente desde un windows a servidor linux), con el servicio syslog iniciado, la respuesta es: *** Ping statistics for 10.0.0.11: Packets: Sent = 36, Received = 0, Lost = 36 (100.00 %loss), Approximate round trip times in milli-seconds: Minimum = 2000ms, Maximum = 0ms, Average = 0.00ms *** Con syslog detenido, obtengo: *** Pinging 10.0.0.11 with 32 bytes of data: recvfrom(): 10054 sendto(): 10093 *** :-? Saludos, -- Camaleón -- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
El Miércoles, 8 de Octubre de 2008, Victor Hugo dos Santos escribió:
Hola,
estoy intentando configurar nagios para que verifique el estado de un servidor de logs (syslogd) estándar. entre los diversos plugins que existen en nagios no encontré ninguno que verifique directamente el servicio syslogd, así que estaba intentando con el plugin "check_udp".. pero es necesario especificar un string de envio y uno de respuesta, pero no encuentro este ultimo !!! :-(
* Pues, snmp puedes acceder a el en consola o configurando un monitor en webmin mismamente, o cualquier sofware de monitorizacion, zenoss, zabbix u otros mas simples, mon, monit, munnin.
participants (4)
-
Camaleón
-
Carlos E. R.
-
jose maria
-
Victor Hugo dos Santos