今天装了个CentOS
6.0的虚拟机,不知道是否因为选了“basic server”安装的原因
putty能够正常访问,但是用winscp连接是时候却出现了如下错误
“无法初始化SFTP协议。主机是SFTP服务器吗?”
到网上找也没找到一个可靠的解决方法,甚至下载了最新版本的winscp也照旧
后来在winscp官方网站看到有人说是不是协议没有选成sftp
但是看了我的却是已经默认选了sftp,而且,我也试过从另一个linux用scp命令是OK的
所以我试着把sftp换成scp协议,竟然成功了,接着上传文件也成功。
总结:具体原因未知,希望有高手知道的可以回复一下,谢谢
有碰到同样问题的也可以试一下我的办法
2011-11-10 补充 方案二
下载最新的openssh portable源码包,编译安装
此处必须用portable版本
并将旧的rpm包卸载:
rpm -e openssh openssh-server openssh-clients
rm -rf /etc/ssh
再源码安装
重新启动sshd,彻底解决问题。sftp协议又可以用了
方案二的方式在使用过程中发现还是有问题:
这个服务脚本不能通过chkconfig加入服务,所以不能开机启动
改了脚本可以启动了,也会总是报密码错误而无法登陆。但是重启sshd却又能登陆了
2011-11-14 补充 方案三
下载openssh
5.5的rpm源码包openssh-5.5p1-24.fc14.2.sr