Closed. This question is off-topic。它当前不接受答案。
                            
                        
                    
                
                            
                                
                
                        
                            
                        
                    
                        
                            想改善这个问题吗? Update the question,所以它是on-topic,用于堆栈溢出。
                        
                        2年前关闭。
                                                                                            
                
        
好吧,我最近观察到一种奇怪的行为。

从cmd使用腻子时(Windows)


  我必须使用“ putty -i key.ppk user@host


从bash使用ssh(Linux)


  我必须使用“ ssh -i key.pem user@host


AWS给了我一个“ .pem”文件
我使用puttygen将其转换为.ppk,因为我知道.pem是较旧的格式。

.ppk与Windows的腻子效果很好,但是在Linux中使用相同的.ppk时,它要求我输入密码。

我尝试使用和不使用密码短语.ppk文件

(以下是Linux)
创建没有密码短语的.ppk时,它要求输入一个密码,并说无论我键入什么内容,权限都被拒绝

创建带有密码短语的.ppk时,它会要求输入一个密码,但是即使我键入正确的密码,它也会再次询问,并且当我输入除正确密码短语以外的内容时,循环会退出并显示权限被拒绝。

另外,.pem文件在ssh -i上可在linux上运行,因此我使它在两个版本上均可工作,但是为什么要使用此密码短语,谁能帮忙!

最佳答案

.ppk文件是仅PuTTY文件,由PuTTYgen生成,其中https://unix.stackexchange.com/q/74545/263854进行了更详细的介绍。

正如https://askubuntu.com/questions/818929/login-ssh-with-ppk-file-on-ubuntu-terminal所说,您不应使用.ppk登录SSH,而只能使用.pem登录。尽管有一些工具可以从给定的.pem导出.ppk

08-07 14:50