shell通過ssh批量修改centos密碼

2021-10-10 07:44:21 字數 1656 閱讀 5595

環境:centos7

1、準備ip位址文字

[root@186 ~]

# cat ip

100.98.100.186

100.98.100.188

2、編寫批量修改密碼指令碼

[root@186 ~]

# more change-passwd.sh

#!/bin/bash

source /etc/profile

#人機互動是否執行批量修改密碼

while

true;do

stty -icanon min 0 time 100

echo -n "automatic execute ten seconds after,are you sure you want to start the task(yes or no)?"

read arg

case

$arg

in y|y|yes|yes)

break;;

n|n|no|no)

exit;;

"")#autocontinue

break;;

esac

done

#讀取ip位址使用隨機數作為密碼修改root密碼輸入到檔案ma.txt中

for ip in

`cat ip`

dop=

`< /dev/urandom tr -dc 0-9-a-z-a-z-/|

head -c $

;echo

` echo

$pecho

$ipssh

$ip"echo $p|passwd --stdin root"if[

$?='0']

then

echo

$ip密碼$p

>> ma.txt

else

echo

'faild'

fidone

3、賦權並執行

[root@186 ~]

# chmod u+x change-passwd.sh

[root@186 ~]

# ./change-passwd.sh

automatic execute ten seconds after,are you sure you want to start the task(yes or no)?yes

zyukjjnxer

100.98.100.186

changing password for user root.

passwd: all authentication tokens updated successfully.

42trlhphka

100.98.100.188

changing password for user root.

passwd: all authentication tokens updated successfully.

[root@186 ~]

# cat ma.txt

100.98.100.186密碼zyukjjnxer

100.98.100.188密碼42trlhphka

CentOS通過shell指令碼防止SSH暴力破解

bin bash rm rf tmp ip list cat var log secure grep failed password for awk sort uniq c tmp ip list cat var log secure grep invalid user awk sort uniq ...

java 通過 ssh 執行 shell 命令

public abstract class shell implements autocloseable class ssh2shell extends shell public static string errormsg new string 利用jsch包實現遠端主機shell命令執行,鏈結遠...

通過指令碼批量部署ssh私鑰認證

以下來自 expect是在tcl基礎上建立起來的,它還提供了一些tcl所沒有的命令,它可以用來做一些linux下無法做到互動的一些命令操作,在遠端管 理方面發揮很大的作用。spawn命令啟用乙個unix程式來進行互動式的執行。send命令向程序傳送字串。expect 命令等待程序的某些字串。expe...