【发布时间】:2013-12-26 06:45:00
【问题描述】:
我正在运行一个自动化脚本来自动化登录和使用 plink 在远程目标上运行的其他一些命令。我使用以下方法进行自动登录并保存 RSA 密钥:
user@ubuntu~$ echo -e 'y\n' | plink root@<target ip> -pw <password> "pwd"
该命令在命令行运行时保存密钥,但在使用脚本运行时,保存RSA密钥不一致。考虑传递的用户名和密码正确,它提示错误消息为Connection refused,因为在提示输入中未获取“y”。
很多时候,它会一次又一次地提示接受密钥,因为我的脚本中同时使用了许多连续的 plink 命令。理想情况下,它不应该多次要求用户输入。我检查了 ~/.putty 文件夹中不存在的“sshhostkeys”文件,这是每次运行 plink 时提示用户输入的原因。
之前有人遇到过这个问题吗?对此有何修复,或对此有任何破解/解决方法?
P.S: 正在排除使用expect脚本,或者使用putty手动保存配置文件,或者手动运行plink命令并保存一次密钥,正在被排除(不考虑)。
【问题讨论】: