본문 바로가기
서버구축 (WEB,DB)

Iptables Log Analyzer

by 날으는물고기 2014. 12. 17.

Iptables Log Analyzer

Convenções utilizadas neste documento:

  • O símbolo “#” significa que o comando deve ser executado como root;
  • O símbolo “$” significa que o comando deve ser realizado como usuário;
  • O símbolo “>” é o prompt do MySQL.

Para o Iptables Log Analyzer funcionar é necessário os seguintes pacotes instalados:

  • Apache
  • MySQL
  • PHP5
  • Perl

Baixe o arquivo do Iptables Log Analyzer e descompacte:

$ wget -c http://www.gege.org/iptables/iptables_logger_v0.4.tar.gz
$ tar zxvf iptables_logger_v0.4.tar.gz

Configure o banco de dados conforme abaixo:

$ mysql -u root -p

Dentro do MySQL:

> create database iptables
> grant create,select,insert,update on iptables.* to iptables_admin@localhost identified by 'xxxx';
> grant select,insert,update on iptables.* to iptables_user@localhost identified by 'xxxx';
> grant create temporary tables on iptables.* to iptables_user@localhost identified by 'xxxx';

Depois, é só efetuar os seguintes comandos :

$ cd iptables
$ mysql -u root -p iptables < sql/db.sql

Prepare o arquivo feed_db.pl, que fará a leitura dos logs do iptables :

$ cd ../scripts
$ vi feed_db.pl

Deixe desse jeito:

my $dsn = 'DBI:mysql:iptables:localhost';
my $db_user_name = 'iptables_admin';
my $db_password = 'xxxx';
my $log_file = '/var/log/messages';
my $pid_file = "/var/run/iptablelog.pid"
my($log_tag)= "IPTABLES";

A variável $log_file, é a linha onde o seu firewall grava os logs. A maioria grava direto noarquivo messages, mas em alguns casos ( com edição do syslog-ng e syslog comum ), você pode jogar os logs do iptables para um arquivo específico e a variável $log_tag coloque o que o seu Iptables loga em –log-prefix.

Mova os arquivos feed_db.pl e iptablelog:

# mv fee_db.pl /usr/local/bin/
# mv iptablelog /etc/init.d/

Edite a linha 22 do arquivo iptablelog e deixe conforme abaixo:

# vi /etc/init.d/iptablelog

Altere para:

start-stop-daemon --start --quiet --pidfile /var/run/$NAME.pid --exec $DAEMON &

O próximo passo tem que saber em qual diretório de sua distribuição o apache tem seu SERVER ROOT setado, ou seja, onde está configurado o  diretório padrão de arquivos web no seu server.

No Debian ficará dessa maneira :

$ cd ..
# cp -R web /var/www/iptables

Dentro do diretório onde estão os arquivos web edite o arquivo config.php:

# cd /var/www/iptables
# vi config.php

Deixe assim:

# Host do banco de dados MySQL
$db_host="localhost"; # Usuario da base mysql
$db_user="iptables_user"; # Senha da sua base mysql MySQL database
$db_password="suporte"; # Nome da database
$db_name="iptables"; # Endereço url da sua instalação, do tipo http://seuservidor.com.br/iptables
$url_base="/iptables/";

Inclua o arquivo iptablelog na inicialização do sistema, no Debia seria:

# update-rc.d iptablelog defaults

Inicie o arquivo para capturar os dados:

# /etc/init.d/iptablelog start

Tudo pronto acesse do seu navegador favorito:

http://<ip da maquina>/iptables



출처 : imasters.com.br


728x90

댓글