Python语言技术文档

微信小程序技术文档

php语言技术文档

jsp语言技术文档

asp语言技术文档

C#/.NET语言技术文档

html5/css技术文档

javascript

点击排行

您现在的位置:首页 > 技术文档 > Python与其他语言

python实现linux服务器批量修改密码并生成execl

来源:中文源码网    浏览:179 次    日期:2024-05-17 17:08:23
【下载文档:  python实现linux服务器批量修改密码并生成execl.txt 】


python实现linux服务器批量修改密码并生成execl
批量修改linux服务器密码,同时生成execl表格
复制代码 代码如下:#!/usr/bin/env python#coding:utf8#随机生成自定义长度密码from random import choiceimport string,pickle
def GenPassword(length=8,chars=string.ascii_letters+string.digits): return ''.join([choice(chars) for i in range(length)])def passlist(r_user,c_user,ip_list,web_list): dic={} for i in ip_list: if i.split()[1] in web_list: dic[i.split()[1]]=[i.split()[0],{r_user:GenPassword(32),c_user:GenPassword(32)}] else: dic[i.split()[1]]=[i.split()[0],{r_user:GenPassword(32)}] return dicdef ip_list(ip_file): with open(ip_file) as file: ip_file=file.read().strip().split("\n") #web_list=[i for i in ip_file if i in web_list] return ip_filedef save_dic(): dic=main() with open("../host_message.pickle","w") as fd: pickle.dump(dic,fd)def main(): file="/root/cui/script/python/ip.txt" web_list=[ip1,ip2,ip3,ip4] file_list=ip_list(file) file_dic_pass=passlist("root","www",file_list,web_list) return file_dic_pass
if __name__=="__main__": save_dic()
复制代码 代码如下:#!/usr/bin/env python#coding:utf8#批量修改密码主程序import picklefrom ssh_co.ssh_connect import sshdfrom command.ip_passwd import save_dic,mainfrom execl import set_execldef read_dic(): with open("host_message.pickle","rb") as f: return pickle.load(f)def ssh_main(): pid_host=1 host_message=read_dic() host_list=host_message.keys() print host_list for host_msg in xrange(len(host_list)): host_attribute=(host_list[host_msg],port,user,passwd) ssh_conn=sshd(host_attribute,pid_host) if "www" in host_message[host_list[host_msg]][1].keys(): for username in xrange(len(host_message[host_list[host_msg]][1].keys())): try: user=host_message[host_list[host_msg]][1].keys()[username] passwd=host_message[host_list[host_msg]][1][host_message[host_list[host_msg]][1].keys()[username]] results=ssh_conn.set_ssh_cmd(u"/bin/echo %s|/usr/bin/passwd --stdin %s" %(passwd,user)) print results,host_list[host_msg],user+"-----------"+passwd except: print results,host_list[host_msg],user+"-----except------"+passwd else: user=host_message[host_list[host_msg]][1].keys()[0] passwd=host_message[host_list[host_msg]][1][host_message[host_list[host_msg]][1].keys()[0]] result=ssh_conn.set_ssh_cmd(u"/bin/echo %s|/usr/bin/passwd --stdin %s" %(passwd,user)) print result,host_list[host_msg],user+"-----------"+passwdif __name__ == "__main__": dic=main() with open("host_message.pickle","w") as fd: pickle.dump(dic,fd) set_execl() ssh_main()

相关内容