zoukankan      html  css  js  c++  java
  • python批量修改linux主机密码

    +++++++++++++++++++++++++++++++++++++++++++
    标题:python批量修改Linux服务器密码
    时间:2019年2月24日
    +++++++++++++++++++++++++++++++++++++++++++
    1. 包含文件
    1.1 脚本文件
    注意:建议不要直接复制使用,在linux平台用vi创建文件,将内容写进去,使用tab键进行缩进,本文中的缩进可能存在问题。
    import paramiko
    import os

    test_fail='result.fail'
    if os.path.exists(test_fail):
      os.remove(test_fail)

    test_ok='result.ok'
    if os.path.exists(test_ok):
      os.remove(test_ok)

    pass_file=open('passwd','r')
    for line in pass_file:
      inform=line.split()
      ipaddr=inform[0]
      username=inform[1]
      old_pass=inform[2]
      new_pass=inform[3]
      port=22
      try:
        ssh=paramiko.SSHClient()
        ssh.load_system_host_keys()
        ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
        ssh.connect(hostname=ipaddr,username=username,password=old_pass,timeout=5)
        ssh.exec_command('echo "%s"|passwd --stdin root'%new_pass)
        ret_ok=open('result.ok','a+')
        ret_ok.write(ipaddr+" is OK ")
        ret_ok.close()
        ssh.close()
      except Exception as e:
        ret_fail=open('result.fail','a+')
        ret_fail.write(ipaddr+" is failed ")
        ret_fail.close()
    pass_file.close()

    1.2 配置文件
    注意:
    文件名为passwd,为题python脚本提供数据
    文件内容如下:
    192.168.44.100 root pass_old1 pass_new1
    192.168.44.110 root pass_old2 pass_new2
    192.168.44.120 root pass_old3 pass_new3

    1.3 脚本使用指导文件
    步骤一:将服务器信息写入passwd文件
    第一列 服务器IP地址
    第二列 需要修改密码的用户名
    第三列 原始密码
    第四列 新密码
    注意:每列之间使用空格隔开,并且passwd与change_pass.py在同级目录下
    步骤二:python change_pass.py
    注意:脚本执行完成后,在当前目录下生成result.ok和reslut.fail分别记录主机密码的修改的成功与失败的情况(成功或失败是通过ssh是否连接成功进行判定的)

    欢迎大家查看学习,如果发现发布内容存在问题,希望大家能够留下宝贵的评论,会尽快确认并进行更正。如果大家存在类似的问题也可以留言,尽量和大家一起解决,共同进步。后期会持续更新相关内容。
  • 相关阅读:
    jenkins 持续集成iOS开发
    CocoaPods 简介
    iOS 10 Programming Fundamentals with Swift 学习笔记 0
    人生,从来没有白走的路
    Oracle数据库备份与恢复命令
    远程备份数据库文件
    恢复误删数据库数据
    Oracle同义词创建及其作用
    同义词使用案例
    ORA-01940无法删除当前已连接用户
  • 原文地址:https://www.cnblogs.com/lv1572407/p/10427093.html
Copyright © 2011-2022 走看看