Chinaunix首页 | 论坛 | 博客
  • 博客访问: 140634
  • 博文数量: 31
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 309
  • 用 户 组: 普通用户
  • 注册时间: 2014-06-06 11:27
个人简介

开启暴走模式。

文章分类

全部博文(31)

文章存档

2017年(19)

2016年(1)

2015年(11)

我的朋友

分类: Python/Ruby

2015-08-28 15:21:31

代码中有Ansible的内容,需要搭建Ansible自动化工具,配置host文件和使用authorized_key模块来实现服务器互信,详情请见Ansible分类。

点击(此处)折叠或打开

  1. #! /usr/bin/env python
  2. # -*- coding: utf-8 -*-
  3. # auto. Mr.Wang

  4. import smtplib
  5. import os
  6. import string
  7. from email.mime.text import MIMEText
  8. from random import choice

  9. mailto_list=['XXXXXX@qq.com','XXXXXX@163.com'] #收件人(列表)
  10. mail_host="smtp.163.com" #使用的邮箱的smtp服务器地址
  11. mail_user="USER" #用户名
  12. mail_pass="PASSWORD" #密码
  13. mail_postfix="163.com" #邮箱的后缀

  14. def GenPassword(length=20,chars=string.ascii_letters+string.digits):
  15.     return ''.join([choice(chars) for i in range(length)])

  16. def send_mail(to_list,sub,content):
  17.     me="Mr.Wang"+"<"+mail_user+"@"+mail_postfix+">"
  18.     msg = MIMEText(content,_subtype='plain')
  19.     msg['Subject'] = sub
  20.     msg['From'] = me
  21.     msg['To'] = ";".join(to_list) #将收件人列表以‘;’分隔
  22.     try:
  23.         server = smtplib.SMTP()
  24.         server.connect(mail_host) #连接服务器
  25.         server.login(mail_user,mail_pass) #登录操作
  26.         server.sendmail(me, to_list, msg.as_string())
  27.         server.close()
  28.         return True
  29.     except Exception, e:
  30.         print str(e)
  31.         return False

  32. pasd = GenPassword()
  33. os.system("ansible Test -m shell -a 'echo \"%s\" | passwd --stdin root'"%(pasd))
  34. if send_mail(mailto_list,"WFJ Server Change Password",pasd): #邮件主题和邮件内容
  35.     print "发送成功!"
  36. else:
  37.     print "发送失败!"

阅读(2277) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~