[surveillance/{filtrage_netacct,statistiques}.py] Traitement protocoles inconnus
Si le protocole est inconnu, on utilise -1 (par contrainte dans la base Pgsql, l'id doit correspondre à un protocole inscrit dans la table protocole). Statistiques.py envoie un resume des IPs ayant envoye des paquets avec des protocoles Ethernet inconnus. darcs-hash:20091120165732-ddb99-21e096790eb19b1ca581bc14b487241ffde5d721.gz
This commit is contained in:
parent
d0a6e18cf5
commit
a29343a4d4
2 changed files with 42 additions and 0 deletions
|
@ -30,6 +30,18 @@ reseau = config.NETs['all']
|
||||||
pgsql = PgSQL.connect(host='pgsql.adm.crans.org', database='filtrage', user='crans')
|
pgsql = PgSQL.connect(host='pgsql.adm.crans.org', database='filtrage', user='crans')
|
||||||
pgsql.autocommit = True
|
pgsql.autocommit = True
|
||||||
|
|
||||||
|
# Récupération de la table de protocoles :
|
||||||
|
##########################################
|
||||||
|
requete = "SELECT id from protocole"
|
||||||
|
curseur = pgsql.cursor()
|
||||||
|
curseur.execute(requete)
|
||||||
|
curseur.fetchall
|
||||||
|
tableau = curseur.fetchall()
|
||||||
|
protocole = []
|
||||||
|
for cellule in tableau:
|
||||||
|
protocole.append(cellule[0])
|
||||||
|
|
||||||
|
|
||||||
# Fonction de commit :
|
# Fonction de commit :
|
||||||
######################
|
######################
|
||||||
def commit(act, prec={'donnees':0}):
|
def commit(act, prec={'donnees':0}):
|
||||||
|
@ -59,6 +71,9 @@ def commit(act, prec={'donnees':0}):
|
||||||
port_crans = int(act["port_%s" % crans])
|
port_crans = int(act["port_%s" % crans])
|
||||||
port_ext = int(act["port_%s" % ext])
|
port_ext = int(act["port_%s" % ext])
|
||||||
|
|
||||||
|
if proto not in protocole:
|
||||||
|
proto = -1
|
||||||
|
|
||||||
# Traitement dans la base SQL
|
# Traitement dans la base SQL
|
||||||
date = strptime.syslog2pgsql(strftime("%b %d %H:%M:%S",localtime(int(act["date"]))))
|
date = strptime.syslog2pgsql(strftime("%b %d %H:%M:%S",localtime(int(act["date"]))))
|
||||||
curseur = pgsql.cursor()
|
curseur = pgsql.cursor()
|
||||||
|
|
|
@ -136,6 +136,28 @@ gros_uploads_des_serveurs = stats(ip_crans=serveurs_ips,
|
||||||
# Statistiques virus/p2p : #
|
# Statistiques virus/p2p : #
|
||||||
############################
|
############################
|
||||||
|
|
||||||
|
# IPs envoyant des paquets de protocole Ethernet inconnu :
|
||||||
|
#########################################################
|
||||||
|
requete = """SELECT COUNT(*), ip_ext
|
||||||
|
FROM upload
|
||||||
|
WHERE
|
||||||
|
id=-1
|
||||||
|
GROUP BY ip_ext"""
|
||||||
|
curseur.execute(requete)
|
||||||
|
|
||||||
|
liste_etherunk = tableau(data = [[l[0], gethostname(str(l[1]))]
|
||||||
|
for l in curseur.fetchall()],
|
||||||
|
titre = ['nombre','ip'],
|
||||||
|
largeur = [10, 30],
|
||||||
|
alignement = ['d','c']).encode('iso-8859-15')
|
||||||
|
|
||||||
|
|
||||||
|
# statistiques des gros uploads depuis les serveurs
|
||||||
|
###################################################
|
||||||
|
gros_uploads_des_serveurs = stats(ip_crans=serveurs_ips,
|
||||||
|
show=['ip_crans', 'ip_ext'], upload_mini=50,
|
||||||
|
show_limit=100).encode('iso-8859-15')
|
||||||
|
|
||||||
# Machines actuellement déconnectées :
|
# Machines actuellement déconnectées :
|
||||||
######################################
|
######################################
|
||||||
requete = "SELECT DISTINCT ip_crans FROM avertis_virus"
|
requete = "SELECT DISTINCT ip_crans FROM avertis_virus"
|
||||||
|
@ -242,6 +264,10 @@ Content-Type: text/plain; charset="iso-8859-15"
|
||||||
|
|
||||||
%(liste_serveurs)s
|
%(liste_serveurs)s
|
||||||
|
|
||||||
|
*IPs envoyant des paquets de protocole Ethernet inconnu*
|
||||||
|
|
||||||
|
%(liste_etherunk)s
|
||||||
|
|
||||||
*Machines actuellement déconnectées pour virus*
|
*Machines actuellement déconnectées pour virus*
|
||||||
|
|
||||||
%(liste_virus)s
|
%(liste_virus)s
|
||||||
|
@ -276,6 +302,7 @@ corps = message % { 'From': expediteur,
|
||||||
'To': destinataire,
|
'To': destinataire,
|
||||||
'uuid': uuid,
|
'uuid': uuid,
|
||||||
'gros_uploads_des_serveurs': gros_uploads_des_serveurs,
|
'gros_uploads_des_serveurs': gros_uploads_des_serveurs,
|
||||||
|
'liste_etherunk': liste_etherunk,
|
||||||
'liste_serveurs': liste_serveurs,
|
'liste_serveurs': liste_serveurs,
|
||||||
'liste_upload': liste_upload,
|
'liste_upload': liste_upload,
|
||||||
'liste_p2p': liste_p2p,
|
'liste_p2p': liste_p2p,
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue