這個錯誤表明導入的private key文件不是XShell所支持的,有三種可能:
- 將Public Key當成Private Key導入。。。
- 使用Putty的ppk文件,囧,請使用PUTTY的puttygen.exe轉換成OPENSSH格式的
- Key文件有多種格式(SSH1-RSA, SSH2-RSA, SSH2-DSA, SSH.COM, OPENSSH2-RSA, OPENSSH2-DSA, PPK, SSH2-IETF SECSH[RSA,DSA]),目前看來XShell支持SSH1-RSA, OpenSSH2-RSA, OpenSSH2-DSA, SSH.COM, NetSarang User Key。。。所以如果使用了標准的SSH2-RSA, SSH2-DSA這兩種PrivateKey的同學請試着轉換為OpenSSH格式(SecureCRTの場合:Tools->Convert Private Key to OpenSSH Format)后再導入。
注:
XShell可以生成OPENSSH2-RSA, OPENSSH2-DSA, SSH2-IETF SECSH(RSA,DSA)這幾種格式的KEY文件並能識別,並能互相轉換
SecucreCRT可以生成SSH1-RSA, SSH2-RSA, OPENSSH2-RSA, OPENSSH2-DSA這幾種格式的KEY文件,並能互相轉換
puttygen.exe可以生成SSH1-RSA, PPK, OPENSSH2-RSA, OPENSSH2-DSA, SSH.COM格式的KEY文件,除了SSH1格式都能進行互相轉換,不過如果遇到如下報錯,請更新你的puttygen.exe即可(http://winscp.net/forum/viewtopic.php?t=8324)
“Couldn't load private key (ciphers other than DES-EDE3-CBC not supported)”
由此可見OPENSSH2格式的key文件比較通用一些。