|
|
楼主 |
发表于 2020-11-5 12:07:11
|
显示全部楼层
使用普通用户登录远程主机,并通过sudo到root权限,通过for循环批量在远程主机执行命令.: w) V% L( a! A2 B
2 O& N. P% ?* [; J" H2 j复制代码
4 u& j! O1 d. a; @3 {# h$ cat timeout_login.txt % m& O$ [& T& I- S) z: {. W
10.0.1.8
+ Y1 Z. x7 k/ S' y10.0.1.34
, W- p5 x) \0 p( E5 X10.0.1.88- O' m7 g8 t X7 V) Q2 p& a
10.0.1.76
) T3 b' k- M% F% t" [, B Z10.0.1.2
6 r+ N0 t0 X4 a, u; w5 {; R/ P10.0.1.3) D5 V9 A% x8 h- [: C/ U/ j% L
复制代码
! i1 m1 X( c# _& I复制代码
& A4 q7 l ]& K$ Y& S g#!/bin/bash
( s! f+ l2 k1 [) q( o! ^* A u
9 e% u% }+ Y+ Z5 ~* E( yfor i in `cat /home/admin/timeout_login.txt`
& I$ ?5 p" O3 @: }8 \1 N4 U+ `- {+ vdo5 V: R+ I) @) r
$ T4 k/ \* e/ g$ W' y /usr/bin/expect << EOF
! b' b5 y6 t! z: e3 c3 X7 ] spawn /usr/bin/ssh -t -p 22022 admin@$i "sudo su -": j$ u$ ?4 {1 C/ \) T- b
2 {7 L% E# t" C. {% n) I
expect {1 c h4 s2 i6 K& C
"yes/no" { send "yes\r" } v" q$ T4 \0 \& X P% a
}
, F- {6 C5 g: u# ^- a5 x7 K w- P5 P! w# C+ N
expect {6 j; ^/ ~0 ` A% }7 X
"password:" { send "xxo1#qaz\r" }3 P! R7 W8 _3 B/ _( {4 \
}
2 n# V4 ?. {% x5 Q' [; o5 s: d
8 t8 I: U7 h! y expect {6 Z: X8 L; T# n& l
"*password*:" { send "xx1#qaz\r" }/ ~% g* e- u) m8 ^3 l
}! @0 X0 f. x' I! \- D
5 i5 i8 ~5 M6 Z expect "*]#"
- n( c. R i8 f; G% N send "df -Th\r"
" U* a. I" a9 e: E0 c9 r$ ^ u expect "*]#"
. u" m0 D2 ~2 l2 r' Z, k send "exit\r"( f1 W, Y4 [7 B7 }
expect eof
- H( u+ `2 c7 U% T$ _( |" H' G! @
' E% z: e' _. ? pEOF
7 [. k1 D; X/ n" Ddone
" N6 M3 J* j! K. T; q复制代码
& }- h! F, a# v2 ]0 I8 R7 y 密码过期需要批量修改密码# j7 ^1 y3 s5 `7 y K. ^
& G1 P r2 o4 ~- O# V% O复制代码1 _6 R, e0 U9 x6 p' o
#!/bin/bash
: N; o' f- i1 Z! K- z" b2 l5 E- g3 S+ c) q' [1 k
for i in `cat /root/soft/ip.txt`3 G4 S+ r, J j9 n1 }) a) k& k
do
- V7 ]; D2 J3 b
2 O. p$ _8 V6 W1 @ /usr/bin/expect << EOF
' M. l: H. v6 ]: D/ z2 ?. r spawn /usr/bin/ssh root@$i: M3 V8 G$ j5 `" ?2 S
8 e2 X8 O4 J/ A/ Y1 ]* X. V
expect {
0 I0 S6 ?& }5 d) w "UNIX password" { send "Huawei@123\r" }% f" S7 p% ~' y. y7 w. i2 \
}$ O% a( e8 i! u0 {
$ x: ?0 M: J% ?3 N: ^3 F0 c! [
expect {" |/ o X1 p+ Z+ s" N
"New password:" { send "xxHuzzawexxi@1234#\r" }
! ^: B! P6 Q4 y$ `* |! B8 b. I: W9 p }* i C$ i- V) {1 \4 X
# y0 S7 {! n' D! Y8 L) A expect {0 \6 i5 E; w- V5 Z! A) X
"Retype new password:" { send "xxHuzzawexxi@1234#\r" }
3 w6 ^/ V( ~# c }
+ \/ z+ U) y9 x) l3 d) z
/ s4 Z. H& ~+ A+ W/ \) w# K; y* t+ t expect "*]#"
8 g! H7 J7 {" R6 W9 J send "echo Huawei@123|passwd --stdin root\r"
, y5 u$ [ \/ t- A x expect "*]#"
% L1 E2 f: F! _: l% B3 w$ h send "exit\r"" [: o, X4 ~: ]% V5 {3 q/ t A, i
expect eof
) \. D" m. N% a* `EOF
, {# k$ `' @- c/ ?1 o' N! p8 s& ?5 Adone |
|