Top Banner
9

Rsyslog Mysql Loganalizer

Oct 04, 2015

Download

Documents

fromem

Rsyslog Mysql Loganalizer
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
  • Nuevo usuario Inicio : Descargas : Trucos VB.Net, PHP, Delphi : Manuales : Cdigo Fuente

    Principal

    Inicio

    Buscar

    Contactar

    Descargas

    Enciclopedia

    Estadsticas

    Foros

    Manuales, Artculos

    Nuestra historia

    Poltica de Cookies

    Quines somos

    Recomindanos

    Temas

    Top 10

    Trucos Delphi, PHP, Java,

    Visual Studio

    Tu cuenta

    Descargas

    ltimas Descargas

    Base de datos Access con

    mdulo VBA para modificar

    DSN ODBC

    AjpdSoft Buscar Parentesco

    con Java

    AjpdSoft Clculo MCD con

    Java

    AjpdSoft Acceso a Access

    con Java

    AjpdSoft Clculo rea figuras

    geomtricas Java

    AjpdSoft Obtener datos

    EAN13 en Delphi 6

    AjpdSoft Gestin VMware

    ESXi y vCenter

    AjpdSoft XSD a XML

    AjpdSoft Nmeros Aleatorios

    VB.NET

    AjpdSoft Gestin Seguidores

    Twitter C#

    AjpdSoft Informacin PC WMI

    en VB.Net

    AjpdSoft Acceso PostgreSQL

    con Lazarus x64

    Ejemplo acceso nativo a

    SQLite con ADO.Net en C#

    .Net

    AjpdSoft Acceso MySQL

    Android

    AjpdSoft Acceso SQLite C#

    ADO.NET

    Lo ms descargado

    AjpdSoft Registro de OCX y

    DLL Cdigo Fuente Delphi

    AjpdSoft Generador de

    cdigos de barras EAN8 y

    EAN13

    Borland Database Desktop

    7.0

    Trminos enciclopedias

    ltimos

    Convert

    Enc.: Comandos Windows

    XP/Windows 2000/2003

    (consola MS-DOS)

    Rename-Computer

    Enc.: Comandos PowerShell

    Get-WmiObject

    Enc.: Comandos PowerShell

    CUDA

    Enc.: Informtica

    GPU

    Enc.: Informtica

    VBA (Visual Basic for

    Application)

    Enc.: Informtica

    DSN (Data Source Name)

    Enc.: Informtica

    Out-File

    Enc.: Comandos PowerShell

    Write-EventLog

    Enc.: Comandos PowerShell

    Get-EventLog

    Enc.: Comandos PowerShell

    Get-FileHash

    Enc.: Comandos PowerShell

    Consejos

    Linux: Montar servidor de log gratuito con Rsyslog, MySQL y LogAnalyzer

    Cmo montar un servidor de log gratuito usando Rsyslog en Linux Ubuntu Server, guardando los datos en MySQL. Mostramos cmo instalar

    LogAnalyzer para generar informes y realizar consultas sobre los log.

    Servidor de log syslog.

    Requisitos para montar servidor de log gratuito con Rsyslog.

    Instalar Rsyslog en GNU Linux Ubuntu Server 12.

    Instalar LogAnalyzer para consulta va web de los log de Rsyslog.

    Anexo.

    Artculos relacionados.

    Crditos.

    Servidor de log syslog

    Syslog es un estndar desarrollado para el envo de mensajes de registro a una IP en una red LAN. Syslog hace referencia tanto al protocolo de red como a la

    aplicacin o biblioteca que enva los mensajes de registro.

    Los equipos y servicios con soporte para envo de log a este sistema pueden enviar cualquier tipo de mensaje, normalmente suelen enviar informacin sobre la

    seguridad del sistema, errores, avisos, etc. aunque pueden contener cualquier informacin. Junto con cada mensaje se incluye la fecha y hora del envo, el equipo

    que enva, la prioridad y otros datos adicionales.

    El protocolo syslog consiste en un equipo servidor ejecutando el servidor de syslog, conocido como syslogd (demonio de syslog) y clientes que envan un pequeo

    mensaje de texto (de menos de 1024 bytes) a este servidor.

    Los mensajes de syslog se suelen enviar va UDP, por el puerto 514, en formato de texto plano. Algunas implementaciones del servidor, como syslog-ng, permiten

    usar TCP en vez de UDP, y tambin ofrecen Stunnel para que los datos viajen cifrados mediante SSL/TLS.

    Aunque syslog tiene algunos problemas de seguridad, su sencillez ha hecho que muchos dispositivos lo implementen, tanto para enviar como para recibir. Eso

    hace posible integrar mensajes de varios tipos de sistemas en un solo repositorio central.

    El mensaje enviado se compone de tres campos, entre todos no han de sumar ms de 1024 bytes, pero no hay longitud mnima:

    Prioridad: nmero de 8 bits que indica tanto el recurso (tipo de aparato que ha generado el mensaje) como la severidad (importancia del mensaje).

    Cabecera: indica tanto el tiempo como el nombre del ordenador que emite el mensaje. Esto se escribe en codificacin ASCII (7 bits), por tanto es texto

    legible. El primer campo, tiempo, se escribe en formato Mmm dd hh:mm:ss, donde Mmm son las iniciales del nombre del mes en ingls, dd, es el da del

    mes, y el resto es la hora. No se indica el ao. Justo despus viene el nombre de ordenador (hostname), o la direccin IP si no se conoce el nombre. No

    puede contener espacios, ya que este campo acaba cuando se encuentra el siguiente espacio.

    Texto: lo que queda de paquete syslog al llenar la prioridad y la cabecera es el propio texto del mensaje. ste incluir informacin sobre el proceso que ha

    generado el aviso, normalmente al principio (en los primeros 32 caracteres) y acabado por un carcter no alfanumrico (como un espacio, ":" o "[").

    Despus, viene el contenido real del mensaje, sin ningn carcter especial para marcar el final.

    Requisitos para montar servidor de log gratuito con Rsyslog

    Para montar un servidor de log con el estndar syslog usando el software gratuito Rsyslog necesitaremos un equipo (fsico o virtual) con el sistema operativo GNU

    Linux, utilizaremos la distribucin GNU Linux Ubuntu Server 12.01. Adems, necesitaremos un servidor web y una base de datos. En este tutorial explicamos cmo

    guardar los log de Rsyslog en el motor de base de datos MySQL Server y cmo consultarlos mediante LogAnalyzer va web por lo que necesitaremos un servidor

    web con Apache y PHP.

    En el siguiente tutorial explicamos cmo instalar el sistema operativo GNU Linux Ubuntu Server 12.01 en un equipo nuevo (virtual o fsico) con el paquete LAMP

    que instala automticamente Apache + PHP + MySQL:

    Servidor web con Ubuntu Server 12 y LAMP Server Apache PHP MySQL.

    Si ya tenemos el servidor con Linux en los siguientes tutoriales explicamos cmo instalar MySQL y Apache en Linux:

    Cmo instalar MySQL Server en Linux y permitir conexiones remotas.

    Instalar y configurar MySQL Server 5 en Linux Suse 10.

    Instalar Linux Ubuntu Server 11 x64, Apache, MySQL, PostgreSQL, Tomcat, Webmin.

    Montar servidor web con Apache en Linux Debian 5 con MySQL y PHP.

    Instalar Rsyslog en GNU Linux Ubuntu Server 12

    A continuacin vamos a explicar cmo instalar el servidor de log syslog gratuito Rsyslog en un equipo con Ubuntu Server 12, en primer lugar instalaremos la clave

    necesaria con el siguiente comando linux:

    sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com AEF0CF8E

    A continuacin editaremos el fichero sources.list y aadiremos una lnea nueva, para ello ejecutaremos el comando linux:

    Enlaces Relacionados

    El spam

    Firestarter, puertos emule

    Instalar Nagios

    Crear directiva W2000

    Abrir puertos router

    Aadir nodo TSM

    Ms Acerca de Seguridad

    Informtica

    Noticias/artculos de ajpdsoft

    Noticia/artculo ms leda

    sobre Seguridad Informtica:

    Cmo crear una imagen de un

    disco duro con Clonezilla de

    forma gratuita free

    Votos del Artculo

    Puntuacin Promedio: 1.36

    votos: 30

    Por favor tmate un segundo y

    vota por este artculo:

    Grabar mi Voto!

    Opciones

    Enviar a un Amigo

    Montar servidor de log gratuito con Rsyslog,... http://www.ajpdsoft.com/modules.php?nam...

    1 of 9 02/18/2015 05:39 PM

  • Lenguajes

    Selecciona Idioma de la

    Interfaz:

    Spanish

    Webs recomendadas

    Orasite.com

    Coloca tu web aqu

    Language english

    English

    sudo nano /etc/apt/sources.list

    Aadiremos las siguientes lneas al final del fichero:

    deb http://ubuntu.adiscon.com/v7-devel precise/

    deb-src http://ubuntu.adiscon.com/v7-devel precise/

    Guardaremos los cambios pulsando Control + O y cerraremos la edicin pulsando Control + X:

    Actualizaremos el sistema y la lista de paquetes con el comando linux:

    sudo apt-get update && sudo apt-get upgrade

    Tras concluir la actualizacin instalaremos Rsyslog con el comando linux:

    sudo apt-get install rsyslog

    No solicitar confirmacin para instalar, pulsaremos la tecla "s" e INTRO:

    Ahora instalaremos el soporte de Rsyslog para bases de datos MySQL con el comando linux:

    install rsyslog-mysql

    El asistente para instalar el paquete nos preguntar si queremos configurar la base de datos para rsyslog-mysql con dbconfig-common, seleccionaremos "S" y

    pulsaremos INTRO:

    Con el texto: Es necesario tener una base de datos instalada y configurada para rsyslog-mysql antes de poder utilizarlo. Puede gestionar esto

    opcionalmente a travs de "dbconfig-common". Si ud. es un administrador de bases de datos avanzado o si la base de datos ya est instalada y

    configurada quizs quiera realizar esta configuracin manualmente, y debera rechazar esta opcin. Probablemente podr encontrar los detalles

    de las operaciones que debe realizar en "/usr/share/doc/rsyslog-mysql".

    Introduciremos la contrasea del superusuario root de MySQL Server, el paquete rsyslog-mysql deber acceder a MySQL y crear un usuario, un catlogo y las

    tablas correspondientes:

    Introduciremos ahora la contrasea para que rsyslog-mysql acceda al servidor de MySQL:

    Montar servidor de log gratuito con Rsyslog,... http://www.ajpdsoft.com/modules.php?nam...

    2 of 9 02/18/2015 05:39 PM

  • Confirmamos la contrasea:

    El asistente crear los ficheros de configuracin necesarios, el usuario, catlogo y tablas en MySQL:

    Accediendo con MySQL Administrator, MySQL MySQL Workbench o cualquier software para acceder a MySQL como AjpdSoft Administracin Bases de Datos

    podremos consultar el esquema creado por rsyslog-mysql "Syslog", las tablas "SystemEvents" y "SystemEventsProperties":

    Y el usuario "rsyslog":

    El systema Rsyslog ya habr empezado a guardar los eventos de log en MySQL, podremos consultarlos con MySQL Administrator pulsando sobre la tabla

    "SystemEvents" con el botn derecho del ratn y seleccionando "Edit Table Data":

    Montar servidor de log gratuito con Rsyslog,... http://www.ajpdsoft.com/modules.php?nam...

    3 of 9 02/18/2015 05:39 PM

  • Se abrir MySQL Query Browser y mostrar los registros de log que Rsyslog ya ha guardado en la tabla:

    Las consultas SQL de creacin de las dos tablas del catlogo Syslog de MySQL:

    CREATE TABLE `SystemEvents` (

    `ID` int(10) unsigned NOT NULL AUTO_INCREMENT,

    `CustomerID` bigint(20) DEFAULT NULL,

    `ReceivedAt` datetime DEFAULT NULL,

    `DeviceReportedTime` datetime DEFAULT NULL,

    `Facility` smallint(6) DEFAULT NULL,

    `Priority` smallint(6) DEFAULT NULL,

    `FromHost` varchar(60) DEFAULT NULL,

    `Message` text,

    `NTSeverity` int(11) DEFAULT NULL,

    `Importance` int(11) DEFAULT NULL,

    `EventSource` varchar(60) DEFAULT NULL,

    `EventUser` varchar(60) DEFAULT NULL,

    `EventCategory` int(11) DEFAULT NULL,

    `EventID` int(11) DEFAULT NULL,

    `EventBinaryData` text,

    `MaxAvailable` int(11) DEFAULT NULL,

    `CurrUsage` int(11) DEFAULT NULL,

    `MinUsage` int(11) DEFAULT NULL,

    `MaxUsage` int(11) DEFAULT NULL,

    `InfoUnitID` int(11) DEFAULT NULL,

    `SysLogTag` varchar(60) DEFAULT NULL,

    `EventLogType` varchar(60) DEFAULT NULL,

    `GenericFileName` varchar(60) DEFAULT NULL,

    `SystemID` int(11) DEFAULT NULL,

    PRIMARY KEY (`ID`) );

    CREATE TABLE `SystemEventsProperties` (

    `ID` int(10) unsigned NOT NULL AUTO_INCREMENT,

    `SystemEventID` int(11) DEFAULT NULL,

    `ParamName` varchar(255) DEFAULT NULL,

    `ParamValue` text,

    PRIMARY KEY (`ID`) );

    De esta sencilla forma ya tendremos montado un servidor de log syslog con Rsyslog sobre Linux de forma gratuita y guardando los log en MySQL, por lo tanto

    podremos consultarlos desde cualquier aplicacin que permita acceso a MySQL o bien usar algn software gratuito como LogAnalyzer.

    Instalar LogAnalyzer para consulta va web de los log de Rsyslog

    Explicaremos ahora cmo instalar el sistema LogAnalyzer en nuestro servidor de log syslog que nos permitir consultar va web con un entorno amigable los

    eventos que Rsyslog registre en MySQL. Para ello en primer lugar crearemos una carpeta para la descarga temporal del paquete comprimido con:

    sudo mkdir /tmp/loganalyzer

    Buscaremos en la web oficial de LogAnalyzer la ltima versin y anotaremos la URL de la descarga, para descargar el fichero comprimido desde la consola de

    Linux Ubuntu Server accederemos a la carpeta creada para la descarga con:

    cd /tmp/loganalyzer

    Y descargaremos el fichero con:

    Montar servidor de log gratuito con Rsyslog,... http://www.ajpdsoft.com/modules.php?nam...

    4 of 9 02/18/2015 05:39 PM

  • wget http://download.adiscon.com/loganalyzer/loganalyzer-3.6.3.tar.gz

    ( cambiando la URL por la que corresponda a la versin actual)

    Descomprimiremos el fichero descargado con el comando linux:

    tar -xvf loganalyzer-3.6.3.tar.gz

    Accederemos a la carpeta que se habr creado al descomprimir con:

    cd /tmp/loganalyzer/loganalyzer-3.6.3

    Crearemos una subcarpeta dentro de la carpeta www de Apache de nuestro servidor web con:

    sudo mkdir /var/www/loganalyzer

    Ahora copiaremos el contenido de la carpeta "src" a la carpeta creada con:

    sudo cp -R /tmp/loganalyzer/loganalyzer-3.6.3/src/* /var/www/loganalyzer

    Repetiremos la operacin para la carpeta "contrib":

    sudo cp -R /tmp/loganalyzer/loganalyzer-3.6.3/contrib/* /var/www/loganalyzer

    Estableceremos permisos de escritura para los ficheros configure.sh y secure.sh:

    cd /var/www/loganalyzer

    sudo chmod +x configure.sh secure.sh

    Iniciaremos LogAnalyzer va web desde cualquier PC de la red abriendo un navegador e introduciendo la URL:

    http://192.168.31.156/loganalyzer

    (cambiaremos "192.168.31.156 por la IP de nuestro servidor syslog)

    Se iniciar LogAnalyzer, en el primer inicio dar un error al detectar que an no ha sido configurado, pulsaremos en "here" para instalar Adisco LogAnalyzer:

    Con el texto: Critical Error occured. Error, main configuration file is missing! Click here to Install Adiscon LogAnalyzer!

    Se iniciar el asistente para configurar e instalar definitivamente LogAnalyzer, pulsaremos "Next":

    Montar servidor de log gratuito con Rsyslog,... http://www.ajpdsoft.com/modules.php?nam...

    5 of 9 02/18/2015 05:39 PM

  • El fichero config.php debe ser escribible, en el siguiente paso el asistente de instalacin de LogAnalyzer lo comprobar, de no serlo deberemos establecerle los

    permisos apropiados con el comando linux chmod:

    Introduciremos los datos de configuracin, los importantes son:

    Enable User database: marcaremos "Yes".

    Database Host: IP o nombre DNS (hostname) del equipo servidor de syslog con MySQL.

    Database Port: puerto de la base de datos MySQL, por defecto 3306.

    Database Name: nombre del catlogo de MySQL que el asistente crear para LogAnalyzer, por ejemplo "loganalyzer".

    Table prefix: prefijo que se aadir al nombre de las tablas, esto es ltil si queremos usar un catlogo ya existente, as separaremos por nombre las

    tablas de otras existentes.

    Database User: usuario que se crear en la base de datos MySQL para uso de LogAnalyzer.

    Database Password: contrasea para el usuario anterior.

    Require user to be logged in: marcaremos "Yes".

    Authentication method: seleccionaremos "Internal authentication".

    El resto de parmetros son de visualizacin de los log, podremos modificarlos en cualquier momento:

    A continuacin el asistente para instalar LogAnalyzer nos indicar que se van a crear las tablas en el catlogo de MySQL elegido, pulsaremos "Next":

    Montar servidor de log gratuito con Rsyslog,... http://www.ajpdsoft.com/modules.php?nam...

    6 of 9 02/18/2015 05:39 PM

  • Si el proceso es correcto nos indicar las tablas creadas, pulsaremos "Next":

    Introduciremos ahora los datos del usuario que se crear para acceder a LogAnalyzer:

    Introduciremos ahora los datos de la fuente, LogAnalyzer permite analizar y consultar varios servidores de log con syslog, por lo que ahora crearemos el acceso a

    nuestro servidor de syslog con Rsyslog, para ello introduciremos los siguientes datos:

    Name of the Source: nombre del origen, por ejemplo "Log AjpdSoft", este nombre se usar para diferenciar varios servidores de log con syslog.

    Source Type: seleccionaremos "MYSQL Native".

    Select View: seleccionaremos "Syslog Fields".

    Table type: seleccionaremos "MonitorWare".

    Database Host: introduciremos la IP o nombre DNS de nuestro servidor con Rsyslog y MySQL.

    Database Name: introduciremos el nombre del catlogo que contiene las tablas de Rsyslog, por defecto "Syslog".

    Database Tablename: nombre de la tabla con los eventos de Rsyslog en MySQL, por defecto "SystemEvents".

    Database User: nombre de usuario de MySQL con permisos de acceso a las tablas de Rsyslog, por defecto "rsyslog".

    Database Password: contrasea del usuario anterior.

    Enable Row Counting: si vamos a tener un servidor de log con no demasiados eventos podremos marcar "Yes", si vamos a tener cientos de miles de

    eventos no es recomendable activar esta opcin pues puede ralentizar el acceso.

    De esta forma LogAnalyzer permite tener sus propias tablas alojadas en un servidor de MySQL diferente al de Rsyslog (o puede ser el mismo como en nuestro

    caso):

    Montar servidor de log gratuito con Rsyslog,... http://www.ajpdsoft.com/modules.php?nam...

    7 of 9 02/18/2015 05:39 PM

  • El proceso de instalacin de LogAnalyzer habr concluido:

    Introduciendo la URL en un navegador:

    http://192.168.31.156/loganalyzer

    (cambiaremos "192.168.31.156 por la IP de nuestro servidor syslog)

    Nos solicitar usuario y contrasea, introducimos el elegido en el proceso de instalacin y pulsamos en "Login":

    Y ya tendremos acceso a la consulta avanzada de los log generamos por nuestro servidor de syslog con Rsyslog desde LogAnalyzer:

    Montar servidor de log gratuito con Rsyslog,... http://www.ajpdsoft.com/modules.php?nam...

    8 of 9 02/18/2015 05:39 PM

  • Anexo

    Si se produce el error: ERROR: At least one file or directory (or more) is not writeable, please check the file permissions (chmod 666)! al intentar instalar

    LogAnalyzer se deben revisar los permisos de la carpeta /var/www/loganalyzer, en concreto los de los ficheros configure.sh, secure.sh y config.php.

    Si se poduce algn error de falta de permisos para algn usuario de MySQL tal vez sea necesario asignarle permisos, una forma para hacerlo es desde la

    lnea de comandos de Linux, con los comandos:

    mysql -u root -p

    grant all privileges on Syslog.* to 'rsyslog'@'%' with grant option;

    Artculos relacionados

    Servidor web con Ubuntu Server 12 y LAMP Server Apache PHP MySQL.

    Instalar GNU Linux Ubuntu Server 9.04 virtualizado en VMware 2.0.

    Instalar Linux Ubuntu Server 11 x64, Apache, MySQL, PostgreSQL, Tomcat, Webmin.

    Instalar Linux Ubuntu Server 8.04.1.

    Instalar Linux Ubuntu Server 8.04.1.

    Cmo instalar MySQL Server en Linux y permitir conexiones remotas.

    Instalar y configurar MySQL Server 5 en Linux Suse 10.

    Montar servidor web con Apache en Linux Debian 5 con MySQL y PHP.

    Instalar GNU Linux Ubuntu 9.10 virtualizado con Sun VirtualBox 3.0.12.

    Montar servidor proxy cach con filtrado web en Linux Ubuntu 9.10 con Squid.

    Sistemas Operativos: Montar un servidor de correo electrnico mail en Linux Ubuntu.

    Cmo instalar y configuar SSH en Linux Ubuntu con OpenSSH.

    Instalar Samba y Swat, compartir carpeta en Linux Ubuntu.

    AjpdSoft Servidor Proxy.

    AjpdSoft Informacin de fichero - Cdigo Fuente Delphi.

    Utilizar un PC con Windows XP y conexin a Internet como servidor proxy.

    Instalar GNU Linux Ubuntu Desktop 9.04 en un equipo con Windows Server 2003.

    Instalar GNU Linux Fedora 10 Edicin Escritorio.

    Comandos bsicos para GNU Linux y ejemplos de utilizacin.

    Los atributos de un archivo en Windows slo lectura, oculto, cifrado, sistema.

    URL.

    Mozilla Firefox.

    IP.

    LAN.

    UDP.

    TCP.

    SSL.

    DNS.

    Crditos

    Artculo realizado ntegramente por Alonsojpd, miembro del Proyecto AjpdSoft.

    Artculo en ingls.

    Enviado el Wednesday, 20 March a las 23:43:30 por ajpdsoft

    Este sitio web NO CONTIENE malware, todos los programas con cdigo fuente aqu. Autor: Alonso Javier Prez Daz Google+ Sguenos en Google+

    IPv6+IPv4 Free DNS ServerPrimary, Secondary, and Dynamic Fast, Free, Easy DNS Hosting

    Montar servidor de log gratuito con Rsyslog,... http://www.ajpdsoft.com/modules.php?nam...

    9 of 9 02/18/2015 05:39 PM