I get the error "no matching host key type found. Their offer: ssh-rsa" when trying to connect with SSH
This error happens when using Android 8.1 or below images. These images use an old version of ssh server. This old ssh server requires extra settings when using OpenSSH >= 8.8 ssh clients.
> Note: > This should not happen with Android 9.0 or higher. > If this is the case, it probably means that your instance is using an image from an old version of Genymotion Device Image (<13.2.0). > Please upgrade your instance(s) to ver.14.0.0 or higher if possible. > New releases include important bugs and critical security fixes.
Workaround: add SSH options to your SSH command
Add the following options to your ssh command:
-o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedAlgorithms=+ssh-rsa
For example:
ssh -i key.pem shell@3.252.167.165 -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedAlgorithms=+ssh-rsa
Workaround: add settings in your SSH config file
Add the following in your ssh config file, /etc/ssh/ssh_config:
HostKeyAlgorithms = +ssh-rsa
PubkeyAcceptedAlgorithms = +ssh-rsa
Alternative: use a different algorithm when creating your key pair
Use a different algorithm when creating your key pair.
Please refer to your Cloud provider documentation for supported algorithms.