環境: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...