昨天我们不得不对服务器的SSH配置做一些改进。由于我们的新服务器密钥不同,因此更改需要删除现有客户端密钥。
我可以使用ssh
和sftp
(已清除相应known_hosts
个文件中的旧密钥)登录服务器。
不幸的是,我的Filezilla客户端根本不会登录。我已启用调试视图并查看以下内容:
11:29:57 Status: Connecting to my.box.example.com...
11:29:57 Trace: Going to execute /usr/bin/fzsftp
11:29:57 Response: fzSftp started
11:29:57 Trace: CSftpControlSocket::ConnectParseResponse(fzSftp started)
11:29:57 Trace: CSftpControlSocket::SendNextCommand()
11:29:57 Trace: CSftpControlSocket::ConnectSend()
11:29:57 Command: keyfile "/home/acoder/.ssh/fz"
11:29:57 Trace: CSftpControlSocket::ConnectParseResponse()
11:29:57 Trace: CSftpControlSocket::SendNextCommand()
11:29:57 Trace: CSftpControlSocket::ConnectSend()
11:29:57 Command: open "acoder@my.box.example.com" 22
11:29:57 Trace: Server version: SSH-2.0-OpenSSH_6.6.1
11:29:57 Trace: Using SSH protocol version 2
11:29:57 Trace: We claim version: SSH-2.0-PuTTY_Local:_Sep_14_2013_01:12:43
11:29:57 Trace: CSftpControlSocket::ResetOperation(66)
11:29:57 Trace: CControlSocket::ResetOperation(66)
11:29:57 Error: Could not connect to server
我尝试在命令行中使用fzsftp
:
acoder@laptop ~ $ fzsftp acoder@my.box.example.com
0fzSftp started
3psftp: Using userhost passed on commandline: acoder@my.box.example.com
>
没有进一步发生。如果我输入ls
,则不会返回任何内容..只需挂起>
即可。
然而,如果我发出一个直接的sftp电话:
sftp acoder@my.box.example.com
我没有提示就登录(如预期的那样)。
是什么给出了?
答案 0 :(得分:0)
问题出在服务器的MAC上。配置更新让我们删除了MAC hmac-sha1
。这是上述头痛的根源。当我将hmac-sha1
添加回MAC列表并重新启动sshd时,我能够连接旧版本的Filezilla。
通过升级到最新版本的Filezilla(3.25.2)解决了这个问题。
由于我的客户端正在运行Linux Mint的LTS版本,我首先必须安装gcc-4.9:
# sudo add-apt-repository ppa:ubuntu-toolchain-r/test
# sudo apt-get update
# sudo apt-get install gcc-4.9 g++-4.9
当sshd_config:MACs
不包含hmac-sha1