[AsteriskBrasil] dicas de como monitorar a seguranca no asterisk

Carlos Alberto Greco carlos em greco.com.br
Quinta Dezembro 23 13:40:35 BRST 2010



Caros amigos 


Desculpa voltar ao tema de segurança. 


Além do scan nas portas do asterisk, recebemos ontem 400 ligacoes no tronco E1: 


O programa para scan de porta fail2ban. 
(le o log e quando tem erro de login no ramal ele trava no iptables.) 

Caixa postal deve ser limita em tempo. 

Como detectar varias ligacoes vinda do mesmo numero 

Como detectar ligacoes acima xx minutos. 

Como criar um black list 


Greco 



SEGUE SCRIPT PARA RECEBER NO EMAIL TOTAL DE LIGACOES: 
cron 
00 7 * * * root /usr/bin/php /usr/local/sbin/programas/ligacoesReduzidoNormal.php 1>/dev/null 2>/dev/null 


<? 
include ("funcao.php"); 
#$mconnect = new lsm_connection; // cria a conexao persistente ao banco de dados 

$host = "127.0.0.1" ; 
$user = "root" ; 
$passw = "" ; 
$db = "asteriskcdrdb" ; 

MYSQL_CONNECT($host, $user, $passw) OR DIE("nao"); 
@mysql_select_db( "$db") or die( "Nao posso selecionar a tabela"); 

#$data=date("Y-m-d-H-i"); //data e hora #$data="2008-07-01 20:55:36"; 
$data=date("Y/m/d"); // data 
$data_hoje=date("Y-m-d"); 
$dia=date("d-m-Y"); 
#somar 1 dia ou diminuir 
#echo strftime("%d/%m/%Y %H:%M:%S", strtotime("-1 days")); 
$ ontem =strftime("%Y/%m/%d", strtotime("-1 days")); 
$dia1=strftime("%d/%m/%Y", strtotime("-1 days")); 

// HORARIOS 
// reduzido 
$hri='00:00:01';$hrf='05:59:00'; 
#$i='2010/12/17'; $i="$i $hri"; #$f='2010/12/17'; $f="$f $hrf"; 
$ri="$data_hoje $hri";$rf="$data_hoje $hrf"; 
// normal 
$hi='07:00:01';$hf='23:59:00'; 
$i="$ ontem $hi"; 
$f="$ ontem $hf"; 

//CALCULO DO REDUZIDO (ESTOU CONSIDERANDO TODAS AS LIGACOES) 
$sql = "select sum(billsec/60) as total from cdr where calldate >= '$ri' and calldate <= '$rf'"; 
$r1 = mysql_db_query("$db", $sql); 
while ($m3 = mysql_fetch_array($r1)){$minutos = $m3["total"];} 
$sql = "select count(*) as total1 from cdr where calldate >= '$ri' and calldate <= '$rf'"; 
$r1 = mysql_db_query("$db", $sql); 
while ($m3 = mysql_fetch_array($r1)){$ligacoes = $m3["total1"];} 
$assunto="PABX-reduzido: ".$dia." "."Total em minutos: ".number_format($minutos,0)." Ligacoes: ".$ligacoes; 
$headers = "From: Greco Internet < pabx@ dominio .com.br >\n"; 
$texto="Horario ".$ri." ate ".$rf; 
$email=" carlos@ dominio .com.br "; 
mail("$email","$assunto","$texto","$headers"); 

//CALCULO DO NORMAL 
$sql = "select sum(billsec/60) as total from cdr where calldate >= '$i' and calldate <= '$f'"; 
$r1 = mysql_db_query("$db", $sql); 
while ($m3 = mysql_fetch_array($r1)){$minutos = $m3["total"];} 
$sql = "select count(*) as total1 from cdr where calldate >= '$i' and calldate <= '$f'"; 
$r1 = mysql_db_query("$db", $sql); 
while ($m3 = mysql_fetch_array($r1)){$ligacoes = $m3["total1"];} 
$assunto="PABX-normal: ".$dia1." "."Total em minutos: ".number_format($minutos,0)." Ligacoes: ".$ligacoes; 
$headers = "From: Greco Internet < pabx@ dominio .com.br >\n"; 
$texto="Horario ".$i." ate ".$f; 
$email=carlos @ dominio .com.br "; 
mail("$email","$assunto","$texto","$headers"); 
?> 

-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: http://listas.asteriskbrasil.org/pipermail/asteriskbrasil/attachments/20101223/29b67716/attachment-0001.htm 


Mais detalhes sobre a lista de discussão AsteriskBrasil