[gen_confs/,surveillance/] virus splitte vers virus et autodisc_virus
Pour que le systeme n'enleve pas les deconnexions manuelles, et pour pouvoir mettre un message different aux gens deconnectes manuellement darcs-hash:20100316200552-ddb99-86effb62af5f560cd99563326d98d9721e51e289.gz
This commit is contained in:
parent
2d5c0b4757
commit
ed855e941f
5 changed files with 20 additions and 9 deletions
|
@ -282,6 +282,10 @@ class sable(base_reconfigure):
|
|||
from gen_confs.squid import squid_p2p
|
||||
self._do(squid_p2p())
|
||||
|
||||
def blacklist_autodisc_virus(self):
|
||||
from gen_confs.squid import squid_autodisc_virus
|
||||
self._do(squid_autodisc_virus())
|
||||
|
||||
def blacklist_autodisc_upload(self):
|
||||
from gen_confs.squid import squid_autodisc_upload
|
||||
self._do(squid_autodisc_upload())
|
||||
|
|
|
@ -76,6 +76,11 @@ class squid_autodisc_p2p(squid) :
|
|||
FICHIER = "/etc/squid3/blacklist_autodisc_p2p"
|
||||
chaine = "autodisc_p2p"
|
||||
|
||||
class squid_autodisc_virus(squid) :
|
||||
""" Génère le fichier blacklist-virus pour squid """
|
||||
FICHIER = "/etc/squid3/blacklist_autodisc_virus"
|
||||
chaine = "autodisc_virus"
|
||||
|
||||
class squid_virus(squid) :
|
||||
""" Génère le fichier blacklist-virus pour squid """
|
||||
FICHIER = "/etc/squid3/blacklist_virus"
|
||||
|
|
|
@ -90,10 +90,11 @@ else:
|
|||
##################################################################################
|
||||
### Items de la blackliste
|
||||
blacklist_items = { u'bloq': u'Bloquage total de tous les services',
|
||||
u'virus': u'Bloquage sur squid',
|
||||
u'virus': u'Passage en VLAN isolement',
|
||||
u'upload': u"Bloquage total de l'accès à l'extérieur",
|
||||
u'warez': u'Bloquage sur squid',
|
||||
u'p2p': u"Bloquage total de l'accès à l'extérieur",
|
||||
u'autodisc_virus': u'Autodisconnect pour virus',
|
||||
u'autodisc_upload': u'Autodisconnect pour upload',
|
||||
u'autodisc_p2p': u'Autodisconnect pour P2P',
|
||||
u'ipv6_ra': u'Isolement pour RA' }
|
||||
|
|
|
@ -55,7 +55,8 @@ def do_auth(mac):
|
|||
return (-1, "Bloquage total des services pour cette machine", "")
|
||||
|
||||
# les gens qui doivent être isolés
|
||||
if 'virus' in m[0].blacklist_actif() or 'ipv6_ra' in m[0].blacklist_actif() :
|
||||
if ('virus' in m[0].blacklist_actif() or 'ipv6_ra' in m[0].blacklist_actif()
|
||||
or 'autodisc_virus' in m[0].blacklist_actif()):
|
||||
return (0, "Bad boy", "isolement")
|
||||
|
||||
# L'adherent ne paie pas, on le met sur le vlan radin
|
||||
|
|
|
@ -294,14 +294,14 @@ for ip, nombre in infectes:
|
|||
curseur.execute(requete)
|
||||
|
||||
# On récupère les index des lignes de bl où il y a marqué virus
|
||||
index = [blacklist.index(x) for x in blacklist if 'virus' in x ]
|
||||
index = [blacklist.index(x) for x in blacklist if 'autodisc_virus' in x ]
|
||||
if index:
|
||||
# L'adhérent est déjà blacklisté
|
||||
proprio.blacklist((index[0], ['now', '-', 'virus', hostname]))
|
||||
proprio.blacklist((index[0], ['now', '-', 'autodisc_virus', hostname]))
|
||||
proprio.save()
|
||||
else:
|
||||
# L'adhérent n'est pas encore blacklisté
|
||||
proprio.blacklist(['now', '-', 'virus', hostname])
|
||||
proprio.blacklist(['now', '-', 'autodisc_virus', hostname])
|
||||
proprio.save()
|
||||
|
||||
################################################################################
|
||||
|
@ -340,14 +340,14 @@ for ip, nombre in infectes:
|
|||
curseur.execute(requete)
|
||||
|
||||
# On récupère les index des lignes de bl où il y a marqué virus
|
||||
index = [ blacklist.index(x) for x in blacklist if 'virus' in x ]
|
||||
index = [ blacklist.index(x) for x in blacklist if 'autodisc_virus' in x ]
|
||||
if index:
|
||||
# L'adhérent est déjà blacklisté
|
||||
proprio.blacklist((index[0], ['now', '-', 'virus', hostname]))
|
||||
proprio.blacklist((index[0], ['now', '-', 'autodisc_virus', hostname]))
|
||||
proprio.save()
|
||||
else:
|
||||
# L'adhérent n'est pas encore blacklisté
|
||||
proprio.blacklist(['now', '-', 'virus', hostname])
|
||||
proprio.blacklist(['now', '-', 'autodisc_virus', hostname])
|
||||
proprio.save()
|
||||
|
||||
|
||||
|
@ -390,7 +390,7 @@ for IP in infectes:
|
|||
# ont pu s'ajouter.
|
||||
lignes_enlevees = 0
|
||||
for ligne in bl:
|
||||
if '$-$virus$%s' % hostname in ligne:
|
||||
if '$-$autodisc_virus$%s' % hostname in ligne:
|
||||
liste = ligne.split('$')
|
||||
argument = [liste[0], 'now', liste[2], liste[3]]
|
||||
index = bl.index(ligne)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue