shell批量修改主机密码的实现示例

2024-03-01 0 337
目录
  • 1.编写执行脚本
  • 2.测试时设置密码为1
  • 3.取随机密码测试

1.编写执行脚本

vim host-pass.sh

#!/bin/bash

#配置旧的密码文件
cat >old_pass.txt <<EOF
10.36.192.182 root 123 22
10.36.192.184 root 123 22
EOF

[ -f /etc/init.d/functions ] && . /etc/init.d/functions
OLD_INFO=old_pass.txt
NEW_INFO=new_pass.txt
# yum install -y sshpass
for IP in $(awk \’/^[^#]/{print $1}\’ $OLD_INFO); do
#user–> root
USER=$(awk -v I=$IP \’I==$1{print $2}\’ $OLD_INFO)
#pass–>password
PASS=$(awk -v I=$IP \’I==$1{print $3}\’ $OLD_INFO)
#port–>22
PORT=$(awk -v I=$IP \’I==$1{print $4}\’ $OLD_INFO)
#新密码–>8位随机数
#NEW_PASS=1
NEW_PASS=$(openssl rand -base64 8)

# sshpass是一个工具,用于自动输入密码来建立SSH连接;StrictHostKeyChecking=no 选项告诉SSH客户端跳过主机密钥的检查,
#下载sshpass
yum -y install sshpass &>>/dev/null

sshpass -p \”$PASS\” ssh -p $PORT $USER@$IP -o StrictHostKeyChecking=no \”echo $NEW_PASS |passwd –stdin $USER\” && \\
(
echo \”$IP $USER $NEW_PASS $PORT [`date \’+%F %T\’`]\” >> $NEW_INFO && \\
action \”配置成功 $USER $IP $NEW_PASS\” /bin/true
) || \\
action \”配置失败 $USER $IP $PASS\” /bin/false
done

2.测试时设置密码为1

shell批量修改主机密码的实现示例

3.取随机密码测试

NEW_PASS=$(openssl rand -base64 8)

shell批量修改主机密码的实现示例

到此这篇关于shell批量修改主机密码的实现示例的文章就介绍到这了,更多相关shell批量修改主机密码内容请搜索悠久资源网以前的文章或继续浏览下面的相关文章希望大家以后多多支持悠久资源网!

您可能感兴趣的文章:

  • PowerShell批量修改AD用户密码属性的代码

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

悠久资源 linux shell shell批量修改主机密码的实现示例 https://www.u-9.cn/jiaoben/linuxshell/179013.html

常见问题

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务