我正在尝试使用远程计算机的用户名和密码通过 SSH 连接到远程 Windows 计算机(AWS ec2 实例)。我需要自动化此连接以从我的脚本(shell 或 Power shell)运行一些远程命令而不提示我输入密码,我的脚本不应该因期望提示密码而失败
我不想使用 sshpass 或任何生成的 key (通过使用 ssh-keygen)。由于我运行此命令/脚本的源机器不是专用机器,因此我可能每次都在不同的机器上运行它。我还尝试使用 AWS 提供的 .PEM 文件进行连接,如下所示(认为在使用脚本时可能很容易)。
$ssh -i aws_keypair.pem Administrator@10.10.10.10
Administrator@10.10.10.10's password:
即使我使用了 .PEM 文件,它仍然需要我输入密码,我还尝试在远程 Windows 机器中的路径“C:\Users\Administrator.ssh\”下创建一个文件“authorized_keys”。它仍然提示我输入密码。
期待 :
使用 PEM 文件连接到远程 Windows 机器并运行一些远程命令。
(或者)
当我尝试从某个脚本(shell/power shell)进行连接时,它不应该提示我输入密码。
最佳答案
我可以使用 来实现这一点联系 命令(需要在源机器上安装 Putty 才能执行此命令)。所以现在,我能够在脚本(Shell 脚本)中成功传递用户名和密码,并且一切都按预期工作。
仅供引用,我正在粘贴对我有用的确切命令
$echo y | plink -ssh Administrator@10.10.10.10 -pw abc123 "dir"
关于windows - 通过 shell 脚本使用用户名和密码 SSH 到远程 Windows 机器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56916842/