Entenda de forma prática como configurar um servidor de SyslogNG

Por Thiago Marques

O pai ta on!!

O syslog é uma importante ferramenta para administração e análise de qualquer ambiente de infraestrutura.

A maioria dos SO Linux já vem com o RSsyslog instalados, contudo eu prefiro trabalhar com o Syslog-ng por uma questão familiaridade.

Neste documento mostrarei como efetuar uma configuração para instalar o deamon syslog-ng para sistemas operacionais baseados em RHEL (RedHat,CentOS e Fedora).

O syslog nesse caso é uma das soluções para logs que pode ser útil se sua infraestrutura for pequena, para estruturas maiores ter uma estrutura descentralizada de logs como o Elastic acaba sendo uma opção melhor.

Pré-requisitos

  1. Desinstalar o SELINUX
    1. vim /etc/sysconfig/selinux
    2. Na linha onde esta o “SELINUX=enforcing”, alterar para:
    3. SELINUX=disabled
  2. Reiniciar a máquina.
  3. Validar com o comando: sestatus
  4. Instalar o repositório EPEL;
    1. wget http://dl.fedoraproject.org/pub/epel/6Server/i386/epel-release-6-8.noarch.rpm
  5. Instalar com: rpm -Uvh /root/epel-release-6-8.noarch.rpm
  6. Validar com: yum repolist
  7. Instalar o pacote wget;
  8. Instalar o pacote logrotate;

Instalando

  1. Iremos instalar 2 pacotes:
    1. syslog-ng;
    2. syslog-ng-libdbi;

Desabilitar o Rsyslog e habilitar o Syslog

    Como o padrão de syslog é o rsyslog teremos que desabilita-lo para habilitar o syslog-ng, fazemos isso da seguinte forma:
    chkconfig rsyslog off
    Ou
    systemctl disable rsyslog
    E depois habilitamos o syslog-ng
    chkconfig syslog-ng off
    Ou
    service syslog-ng start
    Por fim iniciaremos o serviço de syslog:
    service syslog-ng start

Configurando o syslog

    Abaixo mostrarei um arquivo de configuração para o syslog.
    É importante frisar que esta configuração deve estar sempre no final do arquivo:
    /etc/syslog-ng/syslog-ng.conf
    #--Criamos um source, de qual ip e qual porta o servidor vai ouvir
    #-----Neste caso o servidor vai receber syslog de qualquer IP na porta 514
    source net {udp(ip(0.0.0.0)port(514));};
    #–Criamos um destination, que relata para onde iremos mandar o log.
    #—– aqui podemos colocar todos os logs em um arquivo só (não recomento)
    #—— ou colocar um log para cada equipamento (AI SIM!!)
    #—— Como o arquivo aceita wildcards e variáveis, iremos criar o seguinte padrão:
    #——- Mes_-//--.log
    #——- Exemplo: Mes_02-2018/10.0.0.1/15-02-2017.log
    #——- Assim sera criado os arquivos automaticamente conforme os equipamentos forem enviando os logs
    destination d_cisco
         {file("/var/log/net/Mes_$MONTH-$YEAR/$HOST/$DAY-$MONTH-$YEAR.log"
               create_dirs(yes) #cria os diretorios se eles nao existirem
               dir_perm(0755) #da permissao 755 no diretorio
               dir_owner(root) #coloca o usuario root como proprietario da pasta
               dir_group(root)
               perm(0755) #da permissao 775 nos arquivos
               group(root)
               owner(root)
               );
               };
    log{ source(net); destination(d_cisco);};

Criando um link simbólico para visualização web

    Agora vamos criar um link simbólico para a pasta web, cito-a:
    /var/www/html/
    Como esta pasta é a padrão para web, iremos colocar os arquivos nela para faciliar a visualização, fazemos isso com o seguinte comando:
    ln –s /var/log/net /var/www/html/
    Será criado uma pasta chamada net dentro de html, depois é só acessar o web da seguinte forma:
    http://< ip_do_servidor>/net
    Com isso conseguiremos acessar os logs via http, facilitando o consumo.
    Novamente, essa implementação é indicada para pequenos ambientes (algo entre 5 e 10 servidores), para ambientes maiores gerenciar os logs dessa forma gera um trabalho desnecessário visto as aplicações disponíveis hoje.
    That’s all folks! Be Happy!!!
foto-thiago-marques
Thiago Marques Technical Account Manager
thiago.marques@darede.com.br

Technical Account Manager da Darede, formato em Rede de Computadores, e pós graduado em Segurança da Informação. Possui ampla experiência em Datacenters e Service Providers, além de ser um entusiasta em DevOps e mercado financeiro.

OUTRAS PUBLICAÇÕES

O que é o Amazon RedShift?

Nosso #cloudspecialist Thiago Marques está de volta para explicar o funcionamento de uma importante ferramenta da AWS: o Amazon Redshift

Toda empresa pode usar Machine Learning?

Entenda como o Machine Learning pode alavancar os resultados da sua empresa Atualmente ouvimos muito sobre Inteligência Artificial, Machine Learning, Deep Learning, NLP (Natural Language

MongoDB

Quer aprender sobre esta ferramenta de Banco de Dados não-relacional, como ela funciona e como poder instalar em qualquer sistema operacional e provedor de nuvem? Acompanhe sobre MongoDB

Nós usamos cookies para garantir e oferecer a melhor experiência de navegação em nosso site! Mais informações