#!/bin/bash
ip_array="192.168.2.41
192.168.2.42
192.168.2.43"
remote_dir="/tmp"
remote_cmd="/usr/sbin/chpasswd -e < ${remote_dir}/chpass.txt;rm -f ${remote_dir}/chpass.txt"
usernm="testuser"
>newpwd.txt
for ip in ${ip_array}
do
##################获取随机密码
MATRIX="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz~!@#$%^&*()_+="
LENGTH="9"
while [ "${n:=1}" -le "$LENGTH" ]
do
PASS="$PASS${MATRIX:$(($RANDOM%${#MATRIX})):1}"
let n+=1
done
n=1
##################生成密码文件和记录文件
cd /root
secpw=`echo $PASS|xargs openssl passwd -1`
echo $usernm":"$secpw >chpass.txt
echo $ip":"$usernm":"$PASS >>newpwd.txt
PASS=""
##################修改远程主机密码
sshpass -p abcd1234 scp -o StrictHostKeyChecking=no chpass.txt root@$ip:${remote_dir}
sshpass -p abcd1234 ssh -o StrictHostKeyChecking=no -t root@$ip "${remote_cmd}"
echo "..........${usernm}@${ip} password updated!"
done
rm -f chpass.txt
echo "======done!!"