专栏首页CVM技术交流FileZilla 错误:Server unexpectedly closed network connection 无法连接到服务器
原创

FileZilla 错误:Server unexpectedly closed network connection 无法连接到服务器

结论:FileZilla Client v3.20.1 这一版兼容性是最高的

有些linux系统比较老(比如sles11sp3),新版的filezilla client版本比较高(实际是FileZilla FTP Client里的fzputtygen.exe和fzsftp.exe版本比较高)导致CipherSuite密码套件不兼容而出现下图报错,详情见filezilla官网bug说明(这个说明是我定位清楚问题后才意外搜到的,要是早点搜到也不必花好几个小时去排障了)

fzSftp started, protocol_version=8

错误:Server unexpectedly closed network connection

错误:无法连接到服务器

网上说的增加超时时间的办法是不行的,这不是超时时间短造成的问题

奇怪的是用xshell6可以正常ssh远程,用xftp6也可以正常sftp登录,因此断定跟filezilla软件本身有一定关系,但是我打开我2015年安装系统的台式机发现当时安装的file zilla登录sftp正常,怀疑是filezilla版本太新、sftp server(CVM SSH服务)太老的缘故。

我测试了十几版FileZilla Client发现了这个秘密,用3.20.1里的fzputtygen.exe和fzsftp.exe替换3.22.1里的同名文件后,3.22.1可以正常使用。

另外,3.20.1-3.22.1之间的版本均可用3.20.1里的fzputtygen.exe和fzsftp.exe替换后正常使用,但跨protocol_version替换不行。其实这是服务端和客户端双方匹配的问题,要么客户端降低版本迁就服务端,要么服务端升级版本迁就客户端。

CipherSuite密码套件不兼容,详情见filezilla官网bug说明:

https://trac.filezilla-project.org/ticket/10958#no1

通过抓包,看到客户端拿ECDH去匹配,服务端没有ECDH,执行openssl ciphers -v没有显示ECDH

升级服务端openssh再匹配ECDH就有了

然后filezilla client连接sftp就正常了

升级openssh参考了网上一个脚本(见附件),首先是准备那些安装文件,那些文件里telnet-server-1.2-149.1.x86_64.rpm非常难找,我找了好久才找到,放到csdn上了https://download.csdn.net/download/blackbeautybake/11592987

脚本我做了4点修改

1、在脚本最开头安装开发编译环境:zypper in lsb_release lsb gcc gcc-c++ (不像centos可以直接加-y)

2、设置telnet服务(xinetd)开机启动: chkconfig --level 35 xinetd on

3、在脚本service sshd restart这句命令后做了如下修改

mv /etc/ssh/sshd_config /etc/ssh/sshd_config.bak

ln -s /usr/etc/sshd_config /etc/ssh/sshd_config

chkconfig --level 35 sshd on

4、在结尾/etc/init.d/xinetd restart之前做了这几句修改

把sed -i 's/no/yes/g' /etc/xinetd.d/telnet替换为mv /etc/securetty /etc/securetty.bak

做这句修改是为了支持root用户telnet登录,默认是不允许root用户telnet登录的

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • python sdk bottle框架实现web访问时favicon.ico 404这样解决

    大致套路请先阅读python sdk flask框架实现web访问时favicon.ico 404 not found

    我爱你的一诺
  • 云行业风生水起,如何入行?

    建议你投简历前先包装下行业经历,虽然你不曾在多家云计算公司工作过,但是你可以体验很多家云计算公司的产品,这个非常重要,可以让面试官看到你对这个行业的认同和激情

    我爱你的一诺
  • 以1个具体接口为例来展示Windows下腾讯云GO SDK的使用

    建议先阅读下https://golang.org/doc/install,不读直接向下走也可以

    我爱你的一诺
  • golang 闭包

    说起golang闭包,在官方手册里面看过一次,没怎么用过,还是因为6哥经常用,阅读他的代码好多闭包,emmm,今天就学习一下。

    landv
  • 从实例出发,了解单例模式和静态块

    什么是单例模式呢,单例模式(Singleton)又叫单态模式,它出现目的是为了保证一个类在系统中只有一个实例,并提供一个访问它的全局访问点。从这点可以看出,单例...

    古时的风筝
  • php

    单例设计模式 1.控制一个类只能创建一个对象,设置构造函数为私有的。 2.设置静态方法调用类中方法返回实例化。 3.在类中设置静态属性存放实例化对象。 ? 命名...

    wangxl
  • IDOL的代理模式

    情景:娱乐行业的发展在现今是极为迅猛的,五花八门的各种电影,电视剧,综艺节目充斥在我们的周围,很多很多的人都有着自己心目中的IDOL,每个明星都有着自己的特殊技...

    程序员小强
  • Flink1.4 保存点之回溯时间

    这篇文章是系列文章的第一篇,数据工匠团队会在这里为大家展示一些Apache Flink的核心功能。

    smartsi
  • Mysql审核平台Yearning

    Yearning 是一款基于golang开发的 MYSQL SQL语句审核平台。提供查询审计,SQL审核等多种功能。

    行 者
  • Ubuntu安全基线检查

    描述 设置密码失效时间,强制定期修改密码,减少密码被泄漏和猜测风险,使用非密码登录方式(如密钥对)请忽略此项。 加固建议 使用非密码登录方式如密钥对,请忽...

    咻一咻

扫码关注云+社区

领取腾讯云代金券