saltstack+python批量修改服务器密码
saltstack安装:略过
python脚本修改密码:
# -*- coding utf-8 -*-
import socket
import re
import os
import sys
import crypt localIP = socket.gethostbyname(socket.gethostname()) def password():
localIP = socket.gethostbyname(socket.gethostname()) #获取本地ip
a = re.split('[.]', localIP) #切割ip地址并生成列表
addr = a[3]
ps = "Subuy2017@"+addr
return ps new_passwd = crypt.crypt(password(),"ab") #将生成的密码加密
change_passwd = "usermod -p %s test" %(new_passwd) #采用usermod方式修改密码,必须使用密文密码来修改
os.system(change_passwd)
print("Congratulation!,password for %s is %s " %(localIP,password()))
sys.exit()
结合以上脚本配合saltstack 命令来批量修改服务器密码:
[root@testd files]# salt -N 'test' state.highstate
rac2:
----------
ID: file
Function: file.managed
Name: /usr/local/shell/change_passwd.py
Result: True
Comment: File /usr/local/shell/change_passwd.py updated
Started: 10:57:38.489545
Duration: 568.87 ms
Changes:
----------
diff:
---
+++
@@ -17,7 +17,7 @@
return ps new_passwd = crypt.crypt(password(),"ab")
-change_passwd = "usermod -p %s test" %(new_passwd)
+change_passwd = "usermod -p %s root" %(new_passwd)
os.system(change_passwd)
print("Congratulation!,password for %s is %s " %(localIP,password()))
sys.exit()
----------
ID: pkg_install
Function: cmd.run
Name: python /usr/local/shell/change_passwd.py
Result: True
Comment: Command "python /usr/local/shell/change_passwd.py" run
Started: 10:57:39.059976
Duration: 114.552 ms
Changes:
----------
pid:
19860
retcode:
0
stderr:
stdout:
Congratulation!,password for IP地址 is Subuy2017@162 Summary
------------
Succeeded: 2 (changed=2)
Failed: 0
------------
Total states run: 2
rac1:
----------
ID: file
Function: file.managed
Name: /usr/local/shell/change_passwd.py
Result: True
Comment: File /usr/local/shell/change_passwd.py updated
Started: 10:57:39.149359
Duration: 598.117 ms
Changes:
----------
diff:
---
+++
@@ -17,7 +17,7 @@
return ps new_passwd = crypt.crypt(password(),"ab")
-change_passwd = "usermod -p %s test" %(new_passwd)
+change_passwd = "usermod -p %s root" %(new_passwd)
os.system(change_passwd)
print("Congratulation!,password for %s is %s " %(localIP,password()))
sys.exit()
----------
ID: pkg_install
Function: cmd.run
Name: python /usr/local/shell/change_passwd.py
Result: True
Comment: Command "python /usr/local/shell/change_passwd.py" run
Started: 10:57:39.749030
Duration: 109.626 ms
Changes:
----------
pid:
720
retcode:
0
stderr:
stdout:
Congratulation!,password for IP地址 is Subuy2017@161 Summary
------------
Succeeded: 2 (changed=2)
Failed: 0
------------
Total states run: 2
saltstack+python批量修改服务器密码的更多相关文章
- Ansible playbook 批量修改服务器密码 先普通后root用户
fsckzy Ansible playbook 批量修改服务器密码 客户的需求:修改所有服务器密码,密码规则为Rfv5%+主机名后3位 背景:服务器有CentOS6.7,SuSE9.10.11,r ...
- Python脚本批量修改服务器密码
搭建环境 centos 7.4 使用脚本 python 批量修改connect用户的密码 生成密码为随机密码 保存为xls文档 passwd_chang #!/usr/bin/env python ...
- Python自动批量修改服务器密码
工作中,我们经常会定期更换服务器密码,如果手动去修改,不仅费时,而且容易出错.下面提供了一种思路,可以实现批量.自动修改服务器密码. 大致思路:首先,为每一台服务器设定一个唯一标识:其次,将每台服务器 ...
- python实现批量修改服务器密码
需求:机房.线上有多台主机,为了保障安全,需要定期修改密码.若手动修改,费时费力易出错. 程序应该满足如下需求 : 1.在现有的excel密码表格,在最后一个字段后面生成新的密码,另存为一个新的exc ...
- python批量修改ssh密码
由于工作需要本文主结合了excel表格,对表格中的ssh密码进行批量修改 以下是详细代码(python3): #!/usr/bin/env python#-*-coding:utf-8-*- impo ...
- ansible批量修改服务器密码
看了一下网上代码大多数是ansible-playbook实现的,需要写一个脚本,或者手动传递变量进去. 以前用python tcp模块写过客户端主动上报修改密码脚本 今天写一个ansible主控客户端 ...
- Python 批量修改root密码
#_*_coding:utf8_*_ from multiprocessing import Process, Pool import paramiko import sys,os host_list ...
- python批量修改linux主机密码
+++++++++++++++++++++++++++++++++++++++++++标题:python批量修改Linux服务器密码时间:2019年2月24日内容:基于python实现批量修改linu ...
- 批量修改Linux密码脚本(Python)
搭建环境 centos 7.4 使用脚本 python 批量修改connect用户的密码 生成密码为随机密码 保存为xls文档 #!/usr/bin/env python # -*- coding: ...
随机推荐
- 网络结构解读之inception系列四:Inception V3
网络结构解读之inception系列四:Inception V3 Inception V3根据前面两篇结构的经验和新设计的结构的实验,总结了一套可借鉴的网络结构设计的原则.理解这些原则的背后隐藏的 ...
- C/C++编译的程序内存组成:
#include int main(){int a[1000000];//局部变量return 0;}编译运行后发现溢出错误.#include int a[1000000];//全局变量int mai ...
- [转]使用RDLC报表
使用RDLC报表(一) 1 建立数据源 启动VS2005新建一个窗体项目,命名为TestProj 在左边的窗体内选择“添加新数据源”或在菜单上操作“添加新数据源”: 选择后出现对话窗体,选 ...
- mysql复制关系
一旦建立好主从复制关系后就不要在从库上执行任何dml和ddl操作,包括创建用户也不行. 那么万一在从库上执行了dml或者ddl操作了,会有何影响,以及如何恢复? slave同步状态中出现Slave_S ...
- Odoo Documentation : Fields
Fields Basic fields class openerp.fields.Field(string=None, **kwargs) The field descriptor contains ...
- vbox虚拟机复制&&虚拟机指定静态IP
一.复制镜像(假设源镜像已经用桥接方式,可以访问互联网). 注意需要重新生成mac地址 二.复制完成,启动复制好的镜像(注意,此时的镜像无法联网) vi /etc/udev/rules.d/70-pe ...
- 499 单词计数 (Map Reduce版本)
原题网址:https://www.lintcode.com/problem/word-count-map-reduce/description 描述 使用 map reduce 来计算单词频率http ...
- NGINX模块开发 之 验证URL參数
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/RoyalApex/article/details/26404379 作者:邹祁峰 邮箱:Qifeng ...
- fork 与 vfork
fork 函数复制父进程(包括父进程的地址空间)产生子进程 在父进程返回子进程ID,在子进程本身返回0. fork一般有两个用处: 1.网络服务进程等待请求,新请求到来,fork一个子进程处理,父进程 ...
- Luogu P2864 [USACO06JAN]树林The Grove(bfs)
P2864 [USACO06JAN]树林The Grove(bfs) 题面 题目描述 The pasture contains a small, contiguous grove of trees t ...