远程修改大量服务器密码(expect脚本分享)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/GX_1_11_real/article/details/81167760

前言


为了安全,有时我们会需要修改大量的服务器的登陆密码,关于完成这个工作实际上是有各种方法的,可以使用ansible或expect等工具。

下面就是关于expect脚本的分享(脚本可根据需求更改或完善)

本文使用expect工具,需先安装expect

本脚本在跳板机或对其他服务器进行了免密登陆的服务器上使用效果最佳



补充


为了方便管理,该脚本将调用或产生的文件都放入了/root/gaimi 目录中



脚本使用方法


<1>创建目录
mkdir /root/gaimi

<2>添加要更改密码的ip
将要更改密码的ip添加入/root/gaimi/gai_ip.txt中

<3>执行脚本
执行/root/gaimi/gaimi.sh

<4>查看密码
cat /root/gaimi/gaimi.log



gaimi.sh 脚本内容



#!/usr/bin/expect


#需先安装except   yum -y install expect
#ip必须都已推公钥方可成功




#修改为不同密码脚本,每台服务器随机生成16位的密码
#密码的生成根据mkpasswd的规则


for i in `cat /root/gaimi/gai_ip.txt`

do
      xinmi=`mkpasswd -l 16 -C 3`
      ssh $i echo "$xinmi |passwd --stdin root"
         if [ $? -eq 0 ];then
                        echo "$i is successfully "
                        echo "`date`   $i   $xinmi" >>/root/gaimi/gaimi.log
         else    
                        echo "`date`   $i   is error" 
                        echo "`date`   $i   is error" >>/root/gaimi/gaimi.log
                        continue
         fi      


done

“`

猜你喜欢

转载自blog.csdn.net/GX_1_11_real/article/details/81167760
今日推荐