puttygen.exe生成的密钥文件(SSH-2 RSA)
分别有公钥和私钥
服务器端:~/.ssh/authorized_keys
把公钥复制到这个openssh认证文件里面。
客户端FileZilla:
编辑->设置->SFTP->添加密码文件->选择刚才生成的私钥文件。
文件->站点管理器->新建站点->填写ip和端口->选择sftp->登录类型"一般" ,然后用户填写root,密码留空即可。
点击连接,出现下面错误:
命令: keyfile "rsa-key-FileZilla.ppk"
命令: open "root@XXX.XXX.XXX.XXX" 22
命令: Pass:
错误: 认证失败。
错误: 严重错误
错误: 无法连接到服务器
关键是同样的私钥,放在winscp和pageant都可以正常认证连接啊。
难道是这种加密类型FileZilla不支持???
寻找wiki
果然是SSH-2 RSA加密的问题,FileZilla如果要支持SSH-2 RSA加密,需要Putty的其他工具,首先要把密钥转换成Putty的ppk格式,这个我之前就是用这个工具做的密钥,所以没有问题,然后还需要用pageant做代理才能正常使用,在pageant中托管密钥,然后开启FileZilla就可以选择sftp并正常使用了。
http://wiki.filezilla-project.org/Howto
For SFTP using SSH2, FileZilla utilizes the excellent PuTTY tools. To allow the use of RSA / DSA key files with Filezilla, you'll need to download two more tools from PuTTY: Pageant and (assuming your key file isn't already in PPK format) PuTTYgen.
If your key file is already in PuTTY's PPK format you can skip this paragraph. However if your key is in OpenSSH format, you first need to convert it to PuTTY's PPK format. To do this, launch PuTTYgen and from the "Conversions" menu, select the "Import key" option. Select your key and follow the prompts to enter your pass phrase. Save your private key.
Now run Pageant. In your system tray, you'll see the Pageant icon appear. Right-click the icon and select "Add Key" and select your private key (PPK) file. Follow the prompt to enter your pass phrase and you're done.
Now simply launch FileZilla and connect to your server using SFTP using SSH2 with a username and an empty password. Don't forget to close pageant when you're done.