|
|
楼主 |
发表于 2020-11-5 12:07:11
|
显示全部楼层
使用普通用户登录远程主机,并通过sudo到root权限,通过for循环批量在远程主机执行命令.2 z+ [: G6 A/ W) H( Q
% k% @ u9 q: S
复制代码
/ z6 D& N5 ]* @* D$ cat timeout_login.txt 9 p. s5 Z9 B! c( H
10.0.1.8 h, @: t. f+ K
10.0.1.340 r: N& z3 D' j V: @
10.0.1.88
( E& `& I4 {& c5 l10.0.1.76& L% }/ F; r: z- K, ?1 W" ]
10.0.1.2
. k& A: B( J4 I5 s7 ~) T9 q10.0.1.3
3 Z. l g/ F* i c复制代码
* \5 J1 i9 _: A) \复制代码! d; E( T1 r8 f, [
#!/bin/bash9 M- q$ a `8 L5 v; U
$ t. a7 t: S" }' N
for i in `cat /home/admin/timeout_login.txt`
% K: x$ P# t ^' Ldo
- c' f1 J: ?4 S, _ C1 Y' {( u4 U8 ?& H* E6 O z
/usr/bin/expect << EOF% x! P7 k" h- J/ J0 s
spawn /usr/bin/ssh -t -p 22022 admin@$i "sudo su -"
: A9 Q. i; ]0 D% n! O
2 i* H: ^7 G8 N expect {
& g$ U" {' u; P# g6 E" E' H6 `- q4 a "yes/no" { send "yes\r" }( [! _# b7 }/ t9 c* ]8 i
} 6 M4 Z! [- w" Q; v2 y0 g- g
* i; v k4 R' ^. q( H( e, X( W expect {" F- z% c5 q! J. |( q/ w
"password:" { send "xxo1#qaz\r" }
4 N$ u# L9 k% G7 W& O }
; q3 x# B+ E% U9 f/ ^' C
) W% V4 |2 t) f0 y8 b2 d+ H( u expect {1 i" {, C ^$ j1 n5 D
"*password*:" { send "xx1#qaz\r" }% M* ]- t% Q4 |# O6 S& g( G
}
; x4 b( }) G: G% f5 o# u' g1 `: W. d5 Y
expect "*]#"
* X+ ~) D6 ]" ?* r& i send "df -Th\r"; c7 K: d/ o( c
expect "*]#"
2 y6 e/ H9 B) ]+ {, c send "exit\r"
2 m& O( J+ S. i j9 k expect eof
8 D0 O; i- ^- n3 l$ R
5 r' { w9 ~0 E7 V/ ^8 CEOF0 ? a5 W4 J1 o* A' P
done5 Z; i' A. d$ j5 X8 a1 Z9 R
复制代码
5 h1 i. n/ G! O7 M3 u: | 密码过期需要批量修改密码
n' p T3 c% C0 } n, u
. u# ?' z4 X- |1 U复制代码
( [& A4 U: S3 T9 l; n4 u6 f#!/bin/bash
9 `- f+ O M* q
: C- Y" j" g9 L+ N# p' Ufor i in `cat /root/soft/ip.txt`- w" }6 P. J! D
do0 ^7 Y7 i( @ l5 o: N
$ x, e$ h! I2 p( v% k/ G /usr/bin/expect << EOF v+ Q; ]9 E& V, i
spawn /usr/bin/ssh root@$i
" n4 K2 [3 e" t8 s; @8 A/ O' p2 f8 ~# {% t. Q a7 w! m: Q8 w
expect {4 y; |/ z! d+ D ^
"UNIX password" { send "Huawei@123\r" }
8 K& M$ k: F4 ]; Q3 b9 `( w: X }3 ]# N6 D1 n! D. G' ]' d3 D" L
& P# M2 @5 n' G* i! `% x' f expect {# E% ~+ V5 {, t+ m
"New password:" { send "xxHuzzawexxi@1234#\r" }+ e5 T$ o4 Y# ~/ M+ ], J
}8 j; R: l0 H% p4 }# ?
+ B! \% h5 C+ o" i% M5 ^
expect {
- B. N9 t) A- n "Retype new password:" { send "xxHuzzawexxi@1234#\r" }& D. {+ h; y6 {+ b" [1 v
}
2 d: Y7 \! h- v3 w, E7 p
3 e6 z; l5 O: S5 e expect "*]#"
e0 ?: E9 s2 }8 s/ Y2 E6 D send "echo Huawei@123|passwd --stdin root\r"' F8 |2 E3 z: V! E, C" D: V
expect "*]#"' a: B7 H* S5 Q
send "exit\r"8 f ^5 n; _/ k! \, x) {7 ~( Y
expect eof* z, q& t8 M) W/ ]8 d9 `; s
EOF& j0 ?/ u! o; l0 v
done |
|