Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/joomla/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 带密钥和不带密码短语的ssh_Linux_Ssh_Ssh Keys_Openssh - Fatal编程技术网

Linux 带密钥和不带密码短语的ssh

Linux 带密钥和不带密码短语的ssh,linux,ssh,ssh-keys,openssh,Linux,Ssh,Ssh Keys,Openssh,我想用scp将目录从服务器A复制到远程服务器B。当我想用脚本执行此操作时,我为服务器生成了一个私钥和一个公钥,这在winScp中可以正常工作 但是当我尝试用shell/skcript复制时 scp -i <DIR>/key.ppk $tmpDirA/*.war $username@$server:$TmpDirB scp-i/key.ppk$tmpDirA/*.war$username@$server:$TmpDirB 有人问我密码 Enter passphrase for ke

我想用scp将目录从服务器A复制到远程服务器B。当我想用脚本执行此操作时,我为服务器生成了一个私钥和一个公钥,这在winScp中可以正常工作

但是当我尝试用shell/skcript复制时

scp -i <DIR>/key.ppk $tmpDirA/*.war $username@$server:$TmpDirB
scp-i/key.ppk$tmpDirA/*.war$username@$server:$TmpDirB
有人问我密码

Enter passphrase for key '<DIR>/key.ppk'
为key'/key.ppk'输入密码短语
在生成密钥时,甚至密码短语也保留为空

两个服务器(openSuse)都有openSsh协议2。这些密钥是rsa密钥

此密钥不是由服务器A生成的。这有关系吗


我看不出我遗漏了什么。因此,感谢您的帮助。

您确定ssh在复制时选择了正确的密钥吗

在~/.ssh中创建一个配置文件,并在其中定义不同的主机,这确保ssh选择正确的密钥


您正在尝试使用PUTTY私钥吗?Openssh不支持putty私钥文件,但是。

您是说公钥吗?他要求输入私钥的短语“输入密钥“/key.ppk”的密码短语,因此ssh选择了正确的私钥。太傻了。。是的,这就是重点。我知道我必须生成密钥。。不知道我什么时候又忘了。谢谢