Wie kann ich eine Liste von MACs, Verschlüsselungen und KexAlgorithmen finden, die mein openssh-Client unterstützt?

49

Gibt es eine Möglichkeit, die von sshihm unterstützten MACs, Verschlüsselungen und KexAlgorithmen auszugeben?

Ich möchte es dynamisch herausfinden, anstatt auf die Quelle schauen zu müssen.

Colin Dean
quelle
7
Sie können aus der Ferne auch einen SSH - Servers für die unterstützten Chiffren mit dem jüngsten Sonde nmap Versionen:nmap --script ssh2-enum-algos -sV -p <port> <host>
Eckes

Antworten:

56

Relevante OpenSSH-Manpage: https://man.openbsd.org/ssh#Q

nlu
quelle
Ich wusste, dass es verrückt schien, dass ich es nicht finden konnte.
Colin Dean
8
Es scheint, dass es von Version> = 6.xverfügbar ist (oder sicherlich nicht verfügbar in 5.9).
Pevik
8
Auf alten OpenSSH-Versionen ist der sehr hässliche Weg:strings /usr/sbin/sshd |grep mac
Gert van den Berg
4
Insbesondere -Qwurde in Version 6.3 eingeführt .
JJLIN
19

Sie können einen ssh-Server mit den neuesten nmap-Versionen auch remote auf seine unterstützten Verschlüsselungen prüfen:

nmap --script ssh2-enum-algos -sV -p <port> <host>

Und es gibt auch einen Online-Dienst namens sshcheck.com(und eine ziemlich große Anzahl ähnlicher Scanner-Projekte, wie ich gerade herausgefunden habe).

eckes
quelle
1

Nur ein kurzer Tipp: Wenn Sie zwei Server vergleichen möchten, können Sie die @eckes-Methode wie folgt verwenden:

$ sdiff -bW <(nmap --script ssh2-enum-algos -sV -p 22 192.168.1.107) <(nmap --script ssh2-enum-algos -sV -p 22 192.168.1.10)

Starting Nmap 6.47 ( http://nmap.org ) at 2018-01-22 22:35 ES   Starting Nmap 6.47 ( http://nmap.org ) at 2018-01-22 22:35 ES
Nmap scan report for skinner.bubba.net (192.168.1.107)        | Nmap scan report for mulder.bubba.net (192.168.1.10)
Host is up (0.0037s latency).                                 | Host is up (0.0031s latency).
PORT   STATE SERVICE VERSION                                    PORT   STATE SERVICE VERSION
22/tcp open  ssh     OpenSSH 4.3 (protocol 2.0)               | 22/tcp open  ssh     OpenSSH 5.3 (protocol 2.0)
| ssh2-enum-algos:                                              | ssh2-enum-algos:
|   kex_algorithms: (3)                                       | |   kex_algorithms: (4)
                                                              > |       diffie-hellman-group-exchange-sha256
|       diffie-hellman-group-exchange-sha1                      |       diffie-hellman-group-exchange-sha1
|       diffie-hellman-group14-sha1                             |       diffie-hellman-group14-sha1
|       diffie-hellman-group1-sha1                              |       diffie-hellman-group1-sha1
|   server_host_key_algorithms: (2)                             |   server_host_key_algorithms: (2)
|       ssh-rsa                                                 |       ssh-rsa
|       ssh-dss                                                 |       ssh-dss
|   encryption_algorithms: (13)                                 |   encryption_algorithms: (13)
|       aes128-ctr                                              |       aes128-ctr
|       aes192-ctr                                              |       aes192-ctr
|       aes256-ctr                                              |       aes256-ctr
|       arcfour256                                              |       arcfour256
|       arcfour128                                              |       arcfour128
|       aes128-cbc                                              |       aes128-cbc
|       3des-cbc                                                |       3des-cbc
|       blowfish-cbc                                            |       blowfish-cbc
|       cast128-cbc                                             |       cast128-cbc
|       aes192-cbc                                              |       aes192-cbc
|       aes256-cbc                                              |       aes256-cbc
|       arcfour                                                 |       arcfour
|       [email protected]                             |       [email protected]
|   mac_algorithms: (6)                                       | |   mac_algorithms: (9)
|       hmac-md5                                                |       hmac-md5
|       hmac-sha1                                               |       hmac-sha1
                                                              > |       [email protected]
                                                              > |       hmac-sha2-256
                                                              > |       hmac-sha2-512
|       hmac-ripemd160                                          |       hmac-ripemd160
|       [email protected]                              |       [email protected]
|       hmac-sha1-96                                            |       hmac-sha1-96
|       hmac-md5-96                                             |       hmac-md5-96
|   compression_algorithms: (2)                                 |   compression_algorithms: (2)
|       none                                                    |       none
|_      [email protected]                                        |_      [email protected]

Service detection performed. Please report any incorrect resu   Service detection performed. Please report any incorrect resu
Nmap done: 1 IP address (1 host up) scanned in 0.19 seconds   | Nmap done: 1 IP address (1 host up) scanned in 0.22 seconds

Oben zeige ich einen Side-by-Side-Diff eines CentOS 5.x- und 6.x-Servers.

$ ssh [email protected] cat /etc/redhat-release
CentOS release 5.11 (Final)
$ ssh [email protected] cat /etc/redhat-release
CentOS release 6.8 (Final)

Die Ausgabe zeigt Ihnen, dass Sie 4 zusätzliche Zeilen auf dem CentOS 6.x-Server im Vergleich zu 5.x haben.

Ausgabe lesen

Es gibt 1 zusätzlichen kex_algorithm:

  • diffie-hellman-group-exchange-sha256

3 zusätzliche mac_algorithmen:

slm
quelle
0

Einige der alten Versionen von OpenSSH unterstützen keine Option -Q, so dass diese Arbeiten für jede ssh und es hat Nutzen beiden zeigt Client und Server - Optionen, keine Notwendigkeit für ein 3-rd Party - Tools wie nmap:

ssh -vvv username@servername

Scannen Sie die Ausgabe nach "Local Client KEXINIT Proposal" und Sie werden sehen, welche Chiffren und KEX-Algos und MACs vom Client unterstützt werden.

"Peer-Server KEXINIT-Vorschlag" zeigt Ihnen, welche Server unterstützt.

...
debug2: local client KEXINIT proposal
debug2: KEX algorithms: curve25519-sha256,[email protected],ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group16-sha512,diffie-hellman-group18-sha512,diffie-hellman-group14-sha256,diffie-hellman-group14-sha1,ext-info-c
debug2: host key algorithms: [email protected],[email protected],[email protected],ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,[email protected],[email protected],[email protected],[email protected],ssh-ed25519,rsa-sha2-512,rsa-sha2-256,ssh-rsa
debug2: ciphers ctos: [email protected],aes128-ctr,aes192-ctr,aes256-ctr,[email protected],[email protected]
debug2: ciphers stoc: [email protected],aes128-ctr,aes192-ctr,aes256-ctr,[email protected],[email protected]
debug2: MACs ctos: [email protected],[email protected],[email protected],[email protected],[email protected],[email protected],[email protected],hmac-sha2-256,hmac-sha2-512,hmac-sha1
debug2: MACs stoc: [email protected],[email protected],[email protected],[email protected],[email protected],[email protected],[email protected],hmac-sha2-256,hmac-sha2-512,hmac-sha1
debug2: compression ctos: none,[email protected],zlib
debug2: compression stoc: none,[email protected],zlib
...
debug2: peer server KEXINIT proposal
debug2: KEX algorithms: curve25519-sha256,[email protected],ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group16-sha512,diffie-hellman-group18-sha512,diffie-hellman-group14-sha256,diffie-hellman-group14-sha1
debug2: host key algorithms: rsa-sha2-512,rsa-sha2-256,ssh-rsa,ecdsa-sha2-nistp256,ssh-ed25519
debug2: ciphers ctos: [email protected],aes128-ctr,aes192-ctr,aes256-ctr,[email protected],[email protected]
debug2: ciphers stoc: [email protected],aes128-ctr,aes192-ctr,aes256-ctr,[email protected],[email protected]
debug2: MACs ctos: [email protected],[email protected],[email protected],[email protected],[email protected],[email protected],[email protected],hmac-sha2-256,hmac-sha2-512,hmac-sha1
debug2: MACs stoc: [email protected],[email protected],[email protected],[email protected],[email protected],[email protected],[email protected],hmac-sha2-256,hmac-sha2-512,hmac-sha1
debug2: compression ctos: none,[email protected]
debug2: compression stoc: none,[email protected]
...
Arainchi
quelle