|
|
楼主 |
发表于 2020-11-5 12:07:11
|
显示全部楼层
使用普通用户登录远程主机,并通过sudo到root权限,通过for循环批量在远程主机执行命令.
& U" o" q! u% w8 y
6 h- F: W) a3 m( \ m9 x$ w复制代码4 W }9 s2 E2 `, Z4 C( j
$ cat timeout_login.txt
) R1 _" r& _& u4 z% Z10.0.1.8
2 }; O! s# H$ j% m/ `: b$ U10.0.1.34
6 ^3 J6 D$ n5 d10.0.1.88
6 o. i( u7 q0 c5 X( }10.0.1.76
9 j- R- c" u7 n. N: x10.0.1.2
4 h+ a9 n' E- T10.0.1.3& V; W$ W' X$ u- y0 o3 ]$ |# m
复制代码
! D, B( U/ A* @# k复制代码. ^" e! Y; K; ?" w) ?5 V
#!/bin/bash
+ A% J' n1 }6 p8 z* N! e5 K' @# G7 @$ z" }% u9 D# Q
for i in `cat /home/admin/timeout_login.txt`3 R3 _& ]7 V8 ~; ?
do
- e' H3 l4 H3 _9 W1 C
% b9 t& m/ s3 {! h- j) B /usr/bin/expect << EOF4 f- T2 ]6 N: V- G% ^- h3 `8 r
spawn /usr/bin/ssh -t -p 22022 admin@$i "sudo su -"
" @- C1 d5 f" w0 ~3 @; _! K! I' y u6 x% ?6 k. c. w
expect {+ G# F7 c! G* _( b: C& f
"yes/no" { send "yes\r" }1 o( H+ P0 f' ?& C% g
}
& P* Q5 P# ^ R" z( ]
$ ^' @- N# e& W4 U7 Z expect {% _. t, w9 A/ \1 O. }
"password:" { send "xxo1#qaz\r" }+ q0 X7 Q% L1 s( m8 f+ V
}9 O( `# ]$ R/ o) O* R' x
; o% T" a+ G& h$ P1 }' @' C expect {
) }% ]6 {4 v5 V "*password*:" { send "xx1#qaz\r" }2 q" N4 k% \) |+ P; a3 `. U
}5 j v6 |8 u' b0 b: t: Z8 A7 Q! H4 s6 A
8 U& Q/ A3 ~% J/ ]: v: z( U+ ~( O
expect "*]#", o5 w! v% I; ?- q. h
send "df -Th\r"7 M" E( Q+ o8 l
expect "*]#"0 f {6 L- {" A+ S& i
send "exit\r"
) t x5 C3 s" M+ |8 m. ] o5 b1 J2 M expect eof
$ B2 K+ [8 {9 \3 ~/ W* @; [. h( M% J* c- h/ Z# f
EOF
% K' P& L4 |# ~5 udone
5 t9 ?, b6 K9 V7 q# \* g复制代码
& e9 ^ d' y! g# E5 C0 S 密码过期需要批量修改密码
0 a( t5 O X% F4 R/ H: u4 A/ T$ @$ ?7 q# d* j2 S
复制代码9 L& M8 Q3 u& E. y6 E4 t; s
#!/bin/bash' O Q( ?, r2 s3 F
, l4 p2 R. {3 M( A0 F
for i in `cat /root/soft/ip.txt`7 |- s5 R1 u/ O+ i; l
do; m- C3 B! i* ]; B3 R4 Y k; T8 k
$ L* H0 J) n$ v: X) u2 N
/usr/bin/expect << EOF" T& y- K& h P& I. ~
spawn /usr/bin/ssh root@$i
' E/ c1 v4 J, ?8 k c
, \ O+ g6 r" X6 T expect {. V% i6 B9 C5 N% D: B
"UNIX password" { send "Huawei@123\r" }+ x' L- @3 x! h5 q; J/ o! j! m, `
}
3 k; C9 M, j9 ^& V, j4 t
+ L# T& Q4 a6 d( C4 h% v2 [ expect {
6 G! x5 _4 ^7 r' ^% K) ~7 h6 [ "New password:" { send "xxHuzzawexxi@1234#\r" }3 x, }) i( P5 x; y4 Q
}
. Z# E" |+ e: e2 |3 |; L" J$ {: ~% [* j w+ ~
expect {& B W. N& u1 x% f# R/ O i
"Retype new password:" { send "xxHuzzawexxi@1234#\r" }: q2 `5 t* L% ^$ ]* _0 f
}- U9 }/ l& O+ L v5 D& u
( n3 |/ @- x7 U, o/ D; ?& s" F expect "*]#"
. S6 L8 w& m4 }" i& _+ J' m send "echo Huawei@123|passwd --stdin root\r"6 q5 E4 T8 ^! N
expect "*]#"0 e, W0 R' h, H9 [- Y
send "exit\r"- ]) m$ f8 b5 @! `/ I
expect eof$ I _9 N6 {6 y3 z
EOF
, F" O0 {0 b. a9 L% Adone |
|