Esta documentação é um complemento a um post que eu fiz a algum tempo atrás sobre o Iptables Log Analyser, um programa para visualização dos logs do iptables via web.
Não achei muito necessário na época gerar um tutorial sobre isto, já que no fim das contas, a instalação do script/programa é literalmente bem básica, mas, tendo em vista as dificuldades que observei, achei que seria de bom lugar colocar um tutorial sobre.
Primeiramente ( eu pessoalmente acho isto altamente dispensável de citar ), é necessário baixar o tarball no site do desenvolvedor do software. Após baixá-lo, copie o arquivo para algum diretório e faça o seguinte :
# cd /usr/src
# mkdir iptables_logger
# cd iptables_logger
# wget -c http://www.gege.org/iptables/iptables_logger_v0.4.tar.gz
# tar -xvzf iptables_logger_v0.4.tar.gz
Pronto, com este passos você vai ter dentro deste diretório um subdiretório chamado iptables.
Eu pessoalmente, gosto sempre de começar o processo pela infra-estrutura, ou seja, arrumando o banco de dados.
# mysql -u root -p
mysql > create database iptables
mysql > grant create,select,insert on iptables. to iptables_admin@localhost identified by ‘xx’;*
mysql > grant select on iptables. to iptables_user@localhost identified by ‘xx’;*
mysql > grant create temporary tables on iptables. to iptables_user@localhost identified by ‘xx’;*
Depois, é só efetuar os seguintes comandos :
# cd iptables
# mysql -u root -p iptables < sql/db.sql
Pronto, agora a database já está funcionando. Prepara-se agora o wrapper, que vai fazer a leitura dos logs do iptables :
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”
A linha em negrito, é a linha onde o seu firewall grava os logs. A
maioria grava direto no 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.
Feito isto, é só finalmente subir o wrapper e deixar ele começar a gravar os logs.
Mas, feito só isto, você ainda não tem uma visualização via web, porque não instalamos ainda o software.
Bem, como fazer isto ? Primeiramente, você 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.
Vou levar em consideração a localização do Slackware, que é a distribuição que eu uso em casa e na qual estou testando o este programa :
# cp -R web /srv/www/iptables
Pronto, instalação concluída. Agora é ir ao diretório e procurar pelo arquivo config.php e fazê-lo funcionar.
# cd /srv/www/iptables
# vi config.php
Neste arquivo, é só mandar bala em algumas configurações básicas e está tudo funcionando ok :
# Host onde está sua base 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/”;
E, pronto, está funcionando o seu Iptables Log Analyser. Aí, é só se divertir com os logs que o seu iptables vai gerar 🙂