plink在执行批处理时将我置于交互式shell提示中



我正在尝试使用plink(Putty链接)使用批处理文件连接到测试服务器,以避免任何用户提示和执行shell脚本。但它在使用我不想要的用户名和密码登录后显示了一个用户交互提示,从而暂停。

请提供任何建议,说明为什么会发生这种情况,或者我是否需要更改配置中的任何设置以使其工作。

下面是相同的日志。我希望它在这一步之后执行一个shell脚本,在此之前它会停止并plink将我放入一个交互式shell 中

D:>plink -v -ssh xxx@xxx.xxx.xxx.xx.com –pw XXXXX
Looking up host "xxx@xxx.xxx.xxx.xx.com"
Connecting to xxx.xx.xxx.xx port 22
Server version: SSH-2.0-OpenSSH_5.1
Using SSH protocol version 2
We claim version: SSH-2.0-PuTTY_Release_0.63
Doing Diffie-Hellman group exchange
Doing Diffie-Hellman key exchange with hash SHA-256
Host key fingerprint is:
ssh-rsa 1024 a5:c3:96:57:53:7c:72:06:8d:86:09:76:27:3e:18:8d
Initialised AES-256 SDCTR client->server encryption
Initialised HMAC-SHA1 client->server MAC algorithm
Initialised AES-256 SDCTR server->client encryption
Initialised HMAC-SHA1 server->client MAC algorithm
Using username "xxx".
Attempting keyboard-interactive authentication
Access granted
Opening session as main channel
Opened main channel
Allocated pty (ospeed 38400bps, ispeed 38400bps)
Started a shell/command
Last login: Wed Mar  5 09:56:41 2014 from 10.34.39.22

←[?1034hxxxxavu2:←]2;xxx@xxxxavu2~ >

使用SSH时,在第一次连接时,需要验证服务主机密钥才能进行连接。

通过plink,命令行将生成一个提示,要求用户"是否接受服务主机密钥?(y/n)";。

步骤1:修复";来自服务器的键盘交互式认证提示";

按照URL指令;尝试在你的腻子中进行键盘交互验证(SSH-2)。

https://support.linuxacademy.com/hc/en-us/articles/360027730172-How-Can-I-Copy-and-Paste-into-Putty-on-Windows

步骤2:下面是命令将修复";验证服务主机密钥";对于使用plink的每个Linux服务器的第一个SSH连接。

echo yes|C:\PuTTY\prink.exeuser-name@10.148.147.41-pw***************日期

步骤3:现在您可以立即运行下一个脚本,如"服务器正常运行时间检查";或";监视代理重新启动";使用带批处理选项的plink(禁用所有交互式提示)

C:\PuTTY\plink.exe-批处理user-name@10.148.147.41-pw***************-m C:\uptime_linux.sh
C:\PuTTY\prink.exe-批处理user-name@10.148.147.41-pw***************-m C:\monitoring-agent-check_linux.sh

上述信息的100%将帮助您使用plink实用程序自动化linux任务。

它给了你一个交互式shell,因为你实际上并没有给它一个在连接后执行的命令。用引号括起你的命令,例如:

D:>plink -v user@xxx.xxx.xxx.xxx -pw XXXXX "df -h"

最新更新