여러서버를 거치는 로그인을 자동으로 해주는 expect script
.pwd_for_svr1 : svr1에 사용되는 passwd가 암호화되어 저장되어 있는 파일 (Openssl Aes 같은걸 사용)
.pwd_for_svr2 : svr2에 사용되는 passwd가 암호화되어 저장되어 있는 파일
#!/usr/bin/expect trap { set rows [stty rows] set cols [stty columns] stty rows $rows columns $cols < $spawn_out(slave,name) } WINCH send_user -- "\npassword for decrypt password : " stty -echo expect_user -re "(.*)\n" set pwd $expect_out(1,string) stty echo set pwdForSvr1 [exec openssl aes-256-cbc -d -pass pass:$pwd -in $env(HOME)/.pwd_for_svr1.enc] set pwdForSvr2 [exec openssl aes-256-cbc -d -pass pass:$pwd -in $env(HOME)/.pwd_for_svr2.enc] eval spawn ssh userid1@svr1 expect -re "password:" send "$pwdForSvr1\r" expect -re "userid1@svr1" send "ssh userid1@svr2\r" expect -re "password:" send "$pwdForSvr2\r" interact