直接上脚本,内有注释

 1 #!/bin/bash
 2 #This is  auto login linux systtem on port 22
 3 #设置文件存放目录
 4 PATHS=/root
 5 #定义要扫描的网段
 6 LAN=192.168.1.1/24
 7 #define port
 8 PORT=22
 9 #define password
10 PASSWORD=123456
11 #read nmap ip,loop
12 #定义用户
13 USERS=root
14 #定义一个新的密码
15 NEWPASS=wangmeiqing
16 #开始扫描网段
17 nmap -n --open -p 22 $LAN   >> $PATHS/linux.txt && grep 192 $PATHS/linux.txt | awk '{print $5}' >>$PATHS/ipa.txt
18 for ip in `cat $PATH/ip.txt`
19 do
20 #显示目标机器根目录,-o StrictHostKeyChecking=no 不用输入yes
21 sshpass -p $PASSWORD  ssh $USERS@$ip -o StrictHostKeyChecking=no "ls /"
22 #判断命令是否执行成功,执行成功,修改密码,把ip写入弱密码文件
23         if [ $? -eq 0 ];then
24 #如果执行成功,修改目标机器的密码
25 sshpass -p $PASSWORD ssh  $USERS@$ip " echo $NEWPASS |passwd --stdin $USERS"
26         echo $ip >> $PATHS/ruo.txt
27 
28         fi
29 done