当我使用宝塔面板的终端登录到服务器时,每次都需要手动输入密码进行认证。这很不方便,有无甚么方法可让终端在登录时自动进行认证?
expect 工具可以自动化履行命令并辨认并响应输入要求。使用以下命令可以在 Centos 系统上安装它:
yum install expect -y
如果你使用的是 Ubuntu 系统,则可使用以下命令:
apt-get install expect -y
使用以下命令创建一个 expect 文件:
vi /root/login.exp
输入以下内容:
#!/usr/bin/expect
set timeout 30
spawn ssh [lindex $argv 0]@[lindex $argv 1]
expect {
"(yes/no)?"
{
send "yes
"
expect "*assword:" { send "[lindex $argv 2]
" }
}
"*assword:"
{
send "[lindex $argv 2]
"
}
}
interact
这个 expect 文件会自动辨认密码或认证要求,并根据需要履行相应的操作。
使用以下命令运行 expect 文件,在其中添加你的服务器 IP 地址、用户名和密码:
expect /root/login.exp 用户名 服务器IP 地址 密码
运行后就能够自动登录到服务器了,而不需要手动输入密码。
如果你需要频繁登录服务器,你可以将 expect 文件保存在本地计算机上。在 Windows 上,你可使用 PuTTY 来保存这个文件;在 Mac 上,你可使用 Terminal 工具。在运行 expect 文件时,你可以直接从这些工具打开文件并自动登录到服务器。
使用 expect 工具可以方便地自动化登录到服务器,提高工作效力。宝塔面板的终端可使用 expect 文件来自动认证,省去了手动输入密码的步骤,同时也能够保证账户的安全。
本文中提到的产品或服务:
TikTok千粉号购买平台:https://tiktokusername.com/
TOP