如何使用私钥(无需密码)从 Windows 7 进行 scp?

如何使用私钥(无需密码)从 Windows 7 进行 scp?

我有一个公钥和私钥X:\安全。直接ssh使用私钥就可以连接成功:

ssh -i X:\secure\id_rsa [email protected]

远程服务器已为 ssh 设置完毕,并拥有来自X:\secure\id_rsa.pub添加到/etc/ssh/authorized_keys/远程用户

但是,当我尝试使用

scp somefile.txt -i X:\secure\id_rsa [email protected]:~

系统提示我输入密码。

问题:有没有办法可以无缝地 scp 一个文件,而无需提示,就像使用私钥建立 ssh 连接一样?

答案1

我在一台 Windows 10 机器上,正在连接到 Ubuntu 服务器。我已将其设置为只能使用带有密码的私钥进行连接。

我正在使用 cmder,它适用于 Windows:

scp -i ~\.ssh\privatekey foobar.txt linuxuser@server:/home/linuxuser

~.ssh\指的是C:\用户\.ssh\

答案2

我在 Linux 上,所以我无法测试这个,但你尝试过吗:

scp -i X:\secure\id_rsa somefile.txt [email protected]:~

我很确定你必须把选项放在源文件之前。如果你收到密码提示,那么密钥就不会被发送。

答案3

仅在此给出我的场景作为答案,未来的读者可能会受益。文件从 Windows 系统复制到在 Ubuntu 中运行的 Amazon EC2 实例。

C:\Users>scp -i "C:\aws\keys\JenkinsSrv.pem" jenkins-cli.jar [email protected]:/home/ubuntu
     

                                                                

相关内容