windows - 通过 shell 脚本使用用户名和密码 SSH 到远程 Windows 机器

标签 windows powershell ssh

我正在尝试使用远程计算机的用户名和密码通过 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/

相关文章:

powershell - PowerShell属性问题

powershell - 以管理员身份在远程计算机上运行 Invoke-Command

shell - 在 *shell* 缓冲区中使用 ssh 后,我可以让 GNU Emacs 对完整的文件名进行制表符吗?

git - 如何从 git 添加 ssh key 到 Jenkins?

windows - 如何通过 Mercurial 进行代码部署?

c++ - 是否有适用于 GIT(C++ 或其他语言)的 API

windows - 构建 DLL 时;我应该链接到什么类型的 CRT?

c# - 使用C#执行Powershell命令时在ScriptBlock中设置参数

windows - 是否可以通过 Citrix 客户端建立 SSH 隧道?

c++ - win32 gui 应用程序需要一个强大的错误系统