As chaves privadas criptografadas mantêm a chave pública correspondente descriptografada . É assim que o cliente SSH pode se conectar ao servidor remoto sem perguntar a senha (ele só oferece a parte pública nesse ponto). Sempre que o servidor aceita a chave pública, o cliente no seu PC quer descriptografar a chave privada e irá pedir-lhe a senha.
Agora, sempre que o servidor só aceita conexão de um endereço IP específico, isso já foi recusado na primeira etapa e explica a mensagem que você recebeu do servidor "Roaming não permitido pelo servidor".
Então, meu melhor palpite é que seu servidor é restrito de alguma forma para permitir apenas endereços IP específicos para essa chave. Você pode fazer isso de várias maneiras, mas isso é comum em ~/.ssh/authorized_keys
:
from="192.168.1.2" ssh-rsa AAAAB3NzaC[...]
Para provar que você pode ler a chave pública de uma chave privada criptografada sem senha, execute:
ssh-keygen -y -f /path/to/private/key