O OpenSSH 5.7 introduziu a opção KexAlgorithms
:
ssh(1)/sshd(8): add a KexAlgorithms knob to the client and server
configuration to allow selection of which key exchange methods are
used by ssh(1) and sshd(8) and their order of preference.
Portanto, se você tiver pelo menos essa versão, poderá passar -oKexAlgorithms=<kex_list>
para especificar suas preferências.
AFAICT, o cliente OpenSSH na verdade não irá imprimir qual algoritmo kex foi negociado, mas se você passar -vv
e olhar as kex_parse_kexinit
linhas, você pode ver a lista de algoritmos kex (assim como listas de criptografia, MAC, etc. algoritmos) suportados pelo cliente, seguidos pelas listas suportadas pelo servidor. Em teoria, o cliente selecionará o primeiro algoritmo em sua lista que também aparece na lista do servidor (ou seja, a seleção favorece a preferência do cliente). Portanto, para a lista de clientes a,b,c
e a lista de servidores c,b
, o cliente escolhe o algoritmo b
.