bvac

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

可以用来监控一些端口。

import socket
def check_server(addr, port):
    s = socket.socket()
    try:
        s.connect((addr, port))
        return True
    except socket.error:
        return False
def alert(p):
    from email.mime.text import MIMEText
    import smtplib
    sender = "admin@qq.com"
    receiver = ["admin@qq.com"]
    host = 'smtp.qq.com'
    passwd = 'xxxxx'
    port = 465
    content = '端口:%r 故障' % p
    msg = MIMEText(content)
    msg['From'] = "admin@qq.com"
    msg['To'] =';'.join(receiver)
    msg['Subject'] = "vps警报"
    try:
        smtp = smtplib.SMTP_SSL(host, port)
        smtp.login(sender, passwd)
        smtp.sendmail(sender, receiver, msg.as_string())
    except Exception:
        print("error")
if __name__=='__main__':  
    for p in [443, 2280]:
        result = check_server('23.188.2.75', p)
        if not result:
            alert(p)

 

posted on 2016-04-12 22:26  bvac  阅读(311)  评论(0编辑  收藏  举报