Existe-t-il un moyen de rendre ssh
le type de MAC, de chiffrements et de KexAlgorithms qu'il prend en charge?
Je voudrais découvrir dynamiquement au lieu de devoir regarder la source.
Page de manuel OpenSSH pertinente: https://man.openbsd.org/ssh#Q
Ciphers
: ssh -Q cipher
MACs
: ssh -Q mac
KexAlgorithms
: ssh -Q kex
PubkeyAcceptedKeyTypes
: ssh -Q key
Vous pouvez également sonder à distance un serveur ssh pour ses chiffrements pris en charge avec les versions récentes de nmap:
nmap --script ssh2-enum-algos -sV -p <port> <Host>
Et il existe également un service en ligne appelé sshcheck.com
(et un assez grand nombre de projets de scanner similaires à ceux que je viens de découvrir).
Un conseil rapide: si vous voulez comparer 2 serveurs, vous pouvez utiliser la méthode @eckes comme ceci:
$ 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
Dans ce qui précède, je vous présente un diff côte à côte d’un serveur CentOS 5.x et 6.x.
$ ssh [email protected] cat /etc/redhat-release
CentOS release 5.11 (Final)
$ ssh [email protected] cat /etc/redhat-release
CentOS release 6.8 (Final)
La sortie indique que vous avez 4 lignes supplémentaires sur le serveur CentOS 6.x par rapport à 5.x.
Il y a 1 kex_algorithm supplémentaire:
3 mac_algorithmes supplémentaires: