本文地址:https://itlanyan.com/bitvise-cannot-connect-to-ubuntu-20-04/,转载请注明出处。

单位服务器从Ubuntu 18.04 LTS升级到最新版Ubuntu 20.04 LTS以来,小问题不断。今天同事又反应了新问题:原来用的好好的Bitvise现在无法连接了。

根据其提供的信息,问题的关键在于这句话:”no mutually supported key exchange algorithm“。即最新版Ubuntu用了更安全的密钥交换算法,而Bitvise不支持这些算法,因此无法完成连接。

Bitvise连接Ubuntu 20.04报错
Bitvise连接Ubuntu 20.04报错

解决办法是之一是在ssh配置文件/etc/ssh/sshd_config末尾加入如下行:

Ciphers aes128-ctr,aes192-ctr,aes256-ctr

HostKeyAlgorithms ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,ssh-rsa,ssh-dss

KexAlgorithms ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group14-sha1,diffie-hellman-group-exchange-sha256

MACs hmac-sha2-256,hmac-sha2-512,hmac-sha1

接着重启sshd服务:systemctl restart sshd,这样Bitvise便可以正常工作了。

修改服务端配置就让现有的客户端正常工作,这是兼容的做法。如果希望使用新版Ubuntu的安全设置,解决办法是换客户端,例如改用Putty、Xshell等ssh客户端。本人用的Mac,自带的OpenSSH客户端支持新型安全算法,因此不受上面问题影响。

参考

1. Ubuntu升级20.04后无法启动的解决办法

2. Ubuntu升级后提示undefined symbol: AS_APPSTREAM_METADATA_PATH

3. Windows系统免费SSH客户端