|
|||||||
| Wiki | Classificados | Galeria | Reviews | Jogos | Comunidades | RSS Feeds | FAQ | Termos de Uso | Sobre |
| Cadastre-se | Fotos | Blogs | Lista de Membros | Calendário | Pesquisar | Mensagens de Hoje | Marcar Fóruns Como Lidos |
FerramentasPublicidade |
From UnderLinux Wiki
[editar] Tutorial de Monitoramento do Firewall com RRDTOOLBy: 1c3_m4n - Rafael M. Capovilla under AT underlinux com br Primeiro gastaria de dizer que esse tutorial não é nada de avançado, apenas mostra como podemos utilizar o RRDTOOL para monitorar um firewall. Eu me basiei no artigo escrito para a linuxsecurity (www.linuxsecurity.com.br) por Rodrigo P. Telles, assim será possível reutilizar o artigo de acordo com suas necessidades. O RRDTOOL é uma ferramenta GPL escrita por Tobias Oetiker, o mesmo desenvolvedor do famoso MRTG e entra em cena pra resolver uma série de limitações que o MRTG possui. ALGUMAS VANTAGENS:
[editar] O que é necessário
http://people.ee.ethz.ch/~oetiker/webtools/rrdtool/pub/?M=D
[editar] Como compilar o RRDTOOLtar -zxvf rrdtool-1.0.40.tar.gz cd rrdtool-1.0.40 ./configure;make;make install isso vai instalar o rrdtool em /usr/local/rrdtool-1.0.40 se você quiser mudar isso faça o seguinte: ./configure --prefix=/some/other/RRDtool-dir [editar] Criando regrasAgora vamos criar algumas regras de iptables para que possamos utilizar na geração dos gráficos: iptables -A INPUT -p tcp -s 0/0 --dport 21 -j DROP iptables -A INPUT -p tcp -s 0/0 --dport 22 -j ACCEPT iptables -A INPUT -p tcp -s 0/0 --dport 80 -j DROP iptables -A INPUT -p tcp -s 0/0 --dport 443 -j DROP Aqui tanto faz se as regras forem DROP,ACCEPT,DNAT,SNAT,etc... porque o que interessa é o tráfego que irá passar por elas. [editar] Criando ScriptsAgora iremos criar o script que irá criar o banco de informações, mas só iremos executar ele 1 vez!!!! Vou partir do principio que vou criar o grafico em /var/www/http/estatisticas/ rrdtool create /var/www/http/estatisticas/portas.rrd --step 100 DS:http:ABSOLUTE:200:0:U DS:https:ABSOLUTE:200:0:U DS:ssh:ABSOLUTE:200:0:U DS:ftp:ABSOLUTE:200:0:U RRA:AVERAGE:0.5:1:864
Agora será o script que atualiza o banco de dados (stats.sh) que está dentro do mesmo diretorio:
#!/bin/bash
iptables=/sbin/iptables
cmd=/usr/bin/rrdtool
file=/var/www/http/estatisticas/portas.rrd
http=`$iptables -L INPUT -nv | awk '/dpt:80/{print $2}'`
ftp=`$iptables -L INPUT -nv | awk '/tcp dpt:21/{print $2}'`
https=`$iptables -L INPUT -nv | awk '/dpt:443/{print $2}'`
ssh=`$iptables -L INPUT -nv | awk '/dpt:22/{print $2}'`
$cmd update $file "N:${http}:${https}:${ssh}:${ftp}"
Note que a ordem aqui é importante.... elá deve ser a mesma do script anterior
#!/bin/bash cmd=/usr/bin/rrdtool graph=/var/www/http/estatisticas/portas.png dir=/var/www/http/estatisticas TIME=`date +%s` TIME1=$[TIME-43200] $cmd graph $graph -a PNG -t "Estatísticas das Portas" DEF:http=$dir/portas.rrd:http:AVERAGE DEF:https=$dir/portas.rrd:https:AVERAGE DEF:ssh=$dir/portas.rrd:ssh:AVERAGE DEF:ftp=$dir/portas.rrd:ftp:AVERAGE AREA:http#ffff00:"HTTP : " LINE2:https#ff0707:"HTTPS : " LINE2:ssh#896c0d:"SSH: " LINE2:ftp#35890d:"FTP: " -v "Conexões TCP/UDP Bloqueadas" -w 800 -h 325 [editar] Configurando o CRONPara finalizar iremos colocar os scripts no cron (crontab -e) e insira as linhas */1 * * * * /var/www/http/estatisticas/stats.sh 5 * * * * /var/www/http/estatisticas/graph.sh 1>/dev/null
[editar] REFERÊNCIAShttp://people.ee.ethz.ch/~oetiker/webtools/rrdtool/ http://www.linuxsecurity.com.br/revista/ (Segunda Edição) |