Buenas noches companeros, les publico este codigo que he realizado con
el objetivo de monitorear si un equipo de red se encuentra online. Las
modificaciones que quisiera que me ayudaran es como hacer para que los
destinatarios se tomen desde un archivo macct.txt. Otra cosa seria como
podria lograr que la salida que da este script por pantalla se pueda
adjuntar al cuerpo del correo.
'''*SALIDA* *PANTALLA*
--------------------------------------------------------------------------------
El IP: 206.190.36.45 ---yahoo.com---
SE ENCUENTRA ONLINE Tue Feb 12 00:28:13 2013
--------------------------------------------------------------------------------
*
**ip.txt *
06.190.36.45 ---yahoo.com---
*macct.txt*
kuroky...@gmail.com
correo2@hotmailcom
'''
# ****************************************
# Programa de Monitoreo de Red #
# Ing. Kennedy Sanchez #
# (Security + MGP) #
# @ksanchez_cld on tweeter #
# ****************************************
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import os, time, subprocess, smtplib
from email.mime.text import MIMEText
horaRaw = time.time()
horaFormato = time.ctime(horaRaw)
os.system('echo > offline.txt') #Limpiar el archivo
iplist = open('ip.txt')
list = iplist.readlines()
for r in list:
ip = r[1:15]
cmd = subprocess.call(["ping", "-c 3", r])
if cmd == 1:
offline = open('offline.txt', 'a')
offline.write(r)
offline.close()
print '*'*80
print cmd
print " El IP:", r, "\n !!!Esta
mostrando problemas de conexion!!! ", horaFormato
print '*'*80
elif cmd == 0:
print '-'*80
print " El IP:", r, "SE ENCUENTRA
ONLINE ", horaFormato
print '-'*80
msg = MIMEText("Listado grupo de IPs Offline")
msg['Subject'] = 'Reporte Diario Monitoreo Equipos de Red CR'
msg['From'] = 'kuroky...@gmail.com'
macct = open('macct.txt') #Listado de cuentas de correo
mlist = macct.readlines()
print mlist
mailServer = smtplib.SMTP('smtp.gmail.com',587)
mailServer.ehlo()
mailServer.starttls()
mailServer.ehlo()
mailServer.login("kuroky...@gmail.com","PASSWORD"
mailServer.sendmail("kuroky...@gmail.com", "mlist", msg.as_string())
mailServer.close()
_______________________________________________
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/