温馨提示×

Ubuntu expect与SSH自动登录

小樊
90
2024-07-17 14:27:44
栏目: 智能运维

Expect 是一个自动化工具,可以用来自动化与交互式程序的交互。在 Ubuntu 中,可以使用 Expect 来实现自动登录 SSH。

首先,需要安装 Expect 工具:

sudo apt update
sudo apt install expect

然后,创建一个脚本来自动化 SSH 登录:

#!/usr/bin/expect

set timeout 10
set host [lindex $argv 0]
set user [lindex $argv 1]
set password [lindex $argv 2]

spawn ssh $user@$host

expect {
    "yes/no" {
        send "yes\r"
        exp_continue
    }
    "password:" {
        send "$password\r"
    }
}

interact

保存脚本为 ssh_login.exp,并赋予执行权限:

chmod +x ssh_login.exp

然后可以通过以下命令来执行脚本,并自动登录 SSH:

./ssh_login.exp hostname username password

注意替换 hostname、username 和 password 为实际的 SSH 主机、用户名和密码。这样就可以实现自动登录 SSH。

0