歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> Linux服務器

ssh自動登錄並且su的腳本

從一台Linux機器上用u1用戶自動登錄到服務器, 然後su成u2

  - 需要安裝expect

  - 腳本如下:

#!/usr/bin/expect
#auto ssh login
set timeout 10
set sshhost [lindex $argv 0]
set u1 "user1"
set p1 "password1"
set u2 "user2"
set p2 "password2"
spawn ssh -l$u1 -pPortNumber $sshhost
expect {
  "yes/no" {
    send "yes\r"
    exp_continue 
  } "*assword:*" {
    send "$p1\r"
    exp_continue
  } "*ast login:*" {
    # 在s1上變成u2/p2用戶:
    send "LANG=en_US.UTF-8\r"
    expect "\$*"
    send "su - $u2\r"
    expect "*assword:*"
    send "$p2\r"
    interact
    exit 0
  } timeout {
    send_user "connection to $sshhost timeout!\n"
    exit 1
  } "*ncorrect*" {
    send_user "password incorrect!\n"
    exit 2
  } "*ermission*" { #for LINUX ssh
    send_user "password Error!\n"
    exit 2
  } eof {
    exit 3
  }
}
- 調用:
./connnect.sh ipaddress

Copyright © Linux教程網 All Rights Reserved