[mac_prises] Mail de destination dans config, et présentation "améliorée"
This commit is contained in:
parent
8ffe83a331
commit
d5811da81d
2 changed files with 29 additions and 14 deletions
|
@ -3,9 +3,15 @@
|
|||
|
||||
""" Variables de configuration pour mac_prises. """
|
||||
|
||||
#: Pour spammer test@lists.crans.org, mettre à true.
|
||||
#: Pour spammer disconnect@lists.crans.org à chaque analyse, mettre à True
|
||||
hargneux = False
|
||||
|
||||
#: Mail de destination des infos.
|
||||
if hargneux:
|
||||
mail_to = "test@lists.crans.org"
|
||||
else:
|
||||
mail_to = "disconnect@lists.crans.org"
|
||||
|
||||
#: Si pour une chambre donnée, il y a plus de 300 entrées filaires
|
||||
#: n'appartenant pas à l'adhérent propriétaire de la mac, on prévient.
|
||||
max_inconnues_par_jour = 480
|
||||
|
|
|
@ -19,6 +19,7 @@ sys.path.append('/usr/scripts/')
|
|||
import lc_ldap.shortcuts
|
||||
import lc_ldap.objets
|
||||
import collections
|
||||
from email.header import Header
|
||||
|
||||
ldap = lc_ldap.shortcuts.lc_ldap_local()
|
||||
|
||||
|
@ -139,7 +140,7 @@ def summary():
|
|||
chambres.update(chbres)
|
||||
number += len(dataframe)
|
||||
data += [[dtype, ", ".join(list(chbres)), donnee[0], donnee[1], donnee[2]] for donnee in dataframe]
|
||||
output += u'Sur le relevé %s, la mac est apparue %s fois. Elle est apparue dans les chambres suivantes : %s.\n' % (dtype, number, ", ".join(list(chambres)))
|
||||
output += u'Sur le relevé %s, la mac est apparue %s fois dans de multiples chambres simultanément. Elle est apparue dans les chambres suivantes : %s.\n' % (dtype, number, ", ".join(list(chambres)))
|
||||
output += u'Consulter les logs (en PJ) pour plus d\'informations.\n\n'
|
||||
try:
|
||||
maxlen = max([len(a[1]) for a in data]) + 4
|
||||
|
@ -210,13 +211,21 @@ if __name__ == '__main__':
|
|||
Logs = u''
|
||||
if '--summary' in sys.argv or 'summary' in sys.argv:
|
||||
# On envoie le résumé
|
||||
output += u' *Résumé des apparitions de mac dans plusieurs chambres*\n\n'
|
||||
output += u'+---------------------------------------------------------------+\n'
|
||||
output += u'| Résumé des apparitions de mac dans plusieurs chambres |\n'
|
||||
output += u'+---------------------------------------------------------------+\n\n'
|
||||
texte, Logs = summary()
|
||||
output += texte
|
||||
output += u"\n\n"
|
||||
if '--reperage' in sys.argv or 'reperage' in sys.argv:
|
||||
# On envoie le repérage
|
||||
output += u' *Repérage de spoof potentiel par comptage*\n\n'
|
||||
output += u'+---------------------------------------------------------------+\n'
|
||||
output += u'| Repérage de spoof potentiel par comptage |\n'
|
||||
output += u'+---------------------------------------------------------------+\n\n'
|
||||
output += u"""Attention, cette fonctionnalité est plus une forme de stalking que très utile.\n"
|
||||
Elle visait initialement à repérer les machines qui étaient trop longtemps dans
|
||||
une chambre qui n'est pas celle où elles devraient être, cependant, les divers
|
||||
tests menés n'ont pas prouvé une grande efficacité de cette méthode.\n\n"""
|
||||
output += reperage_mac_inconnue()
|
||||
|
||||
Logs = Logs.encode('UTF-8')
|
||||
|
@ -226,7 +235,7 @@ if __name__ == '__main__':
|
|||
sys.exit(0)
|
||||
message = """From: %(from)s
|
||||
To: %(to)s
|
||||
Subject: Résumé quotidien : mac_prises.
|
||||
Subject: %(subject)s
|
||||
Content-Type: multipart/mixed; boundary="_424234545aaff-ffca234efff-556adceff5646_"
|
||||
|
||||
--_424234545aaff-ffca234efff-556adceff5646_
|
||||
|
@ -243,16 +252,16 @@ Content-Disposition: attachment; filename="logs_analyse"
|
|||
--_424234545aaff-ffca234efff-556adceff5646_--
|
||||
"""
|
||||
|
||||
corps = message % { 'from': 'Spoofing watcher <spoof-watcher@crans.org>',
|
||||
'to': 'test@lists.crans.org',
|
||||
'subject': 'Résumé journalier ',
|
||||
corps = message % { 'from': 'Spoofing watcher <disconnect@lists.crans.org>',
|
||||
'to': mac_prise.mail_to,
|
||||
'subject': Header(u"Résumé quotidien des correspondances mac_prises.", "UTF-8"),
|
||||
'contenu': output,
|
||||
'logs': Logs,
|
||||
}
|
||||
|
||||
mail = smtplib.SMTP('localhost')
|
||||
mailfrom = 'spoof-watcher@crans.org'
|
||||
mailto = 'test@lists.crans.org'
|
||||
mailfrom = 'disconnect@lists.crans.org'
|
||||
mailto = mac_prise.mail_to
|
||||
mail.sendmail(mailfrom, mailto, corps)
|
||||
else:
|
||||
Logs = [u"Logs du script %s\n\n\n" % sys.argv[0]]
|
||||
|
@ -274,13 +283,13 @@ Content-Type: text/plain; charset="UTF-8"
|
|||
%(logs)s
|
||||
"""
|
||||
|
||||
corps = message % { 'from': 'Spoofing watcher <spoof-watcher@crans.org>',
|
||||
'to': 'test@lists.crans.org',
|
||||
corps = message % { 'from': 'Spoofing watcher <disconnect@lists.crans.org>',
|
||||
'to': mac_prise.mail_to,
|
||||
'subject': 'Logs de %s' % sys.argv[0],
|
||||
'logs': "".join(Logs),
|
||||
}
|
||||
|
||||
mail = smtplib.SMTP('localhost')
|
||||
mailfrom = 'spoof-watcher@crans.org'
|
||||
mailto = 'test@lists.crans.org'
|
||||
mailfrom = 'disconnect@lists.crans.org'
|
||||
mailto = mac_prise.mail_to
|
||||
mail.sendmail(mailfrom, mailto, corps.encode('utf-8'))
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue