table of contents
SSH-KEYSCAN(1) | General Commands Manual | SSH-KEYSCAN(1) |
NOM¶
ssh-keyscan
—
collecter des clefs publiques ssh
SYNOPSIS¶
ssh-keyscan |
[-46Hv ]
[-f file]
[-p port]
[-T timeout]
[-t type]
[host | addrlist namelist] ... |
DESCRIPTION¶
ssh-keyscan
est un utilitaire pour
collecter les clefs d'hôtes ssh publiques de plusieurs hôtes.
Il a été conçu pour assister dans la constitution et la
vérification des fichiers ssh_known_hosts.
ssh-keyscan
fournit une interface minimale commode
pour l'utilisation dans des scripts shell ou Perl.
ssh-keyscan
utilise des
entrées/sorties de socket non-bloquantes pour contacter autant
d'hôtes que possible en parallèle, donc il est très
efficace. Les clefs d'un domaine d'un millier d'hôtes peuvent
être collectées en quelques dizaines de secondes, même
si certains de ces hôtes ne sont pas accessibles ou
n'exécutent pas ssh. Pour l'analyse, il n'est pas nécessaire
de disposer d'un compte sur les machines, et le processus n'implique aucun
cryptage.
Les options sont les suivantes :
-4
- Force
ssh-keyscan
à n'utiliser que les adresses IPv4. -6
- Force
ssh-keyscan
à n'utiliser que les adresses IPv6. -f
file- Lit les hôtes ou les couples addrlist
namelist depuis ce fichier, un par ligne. Si
- est fourni à la place d'un nom de
fichier,
ssh-keyscan
lira les hôtes ou les couples addrlist namelist depuis l'entrée standard. -H
- Hache tous les noms d'hôtes et les adresses dans la sortie. Les
noms hachés peuvent être utilisés normalement par
ssh
etsshd
, mais ne révèlent pas d'informations d'identification dans l'hypothèse ou le contenu du fichier serait dévoilé. -p
port- Port où se connecter sur l'hôte distant.
-T
timeout- Règle la temporisation pour les tentatives de connexion. Si timeout secondes se sont écoulées depuis qu'une connexion a été initiée vers un hôte ou depuis la dernière fois que quelque chose a été lu depuis cet hôte, alors la connexion est fermée et l'hôte en question est considéré indisponible. La valeur par défaut est 5 secondes.
-t
type- Spécifie le type de clef à récupérer des hôtes analysés. Les valeurs possibles sont “rsa1” pour la version 1 du protocole et “dsa”, “ecdsa” ou “rsa” pour la version 2 du protocole. Plusieurs valeurs peuvent être spécifiées en les séparant par des virgules. La valeur par défaut est “rsa”.
-v
- Mode bavard.
ssh-keyscan
affichera des messages de débogage sur son avancement.
SECURITɶ
Si un fichier ssh_known_hosts est construit avec
ssh-keyscan
sans vérifier les clefs, les
utilisateurs seront vulnérables aux attaques
man in the
middle. D'un autre côté, si le modèle de
sécurité tolère un tel risque,
ssh-keyscan
peut aider à la détection
des fichiers de clefs falsifiés ou d'attaques man in the middle qui
auraient eues lieu après la création du fichier
ssh_known_hosts.
FICHIERS¶
Format d'entree:
1.2.3.4,1.2.4.4 name.my.domain,name,n.my.domain,n,1.2.3.4,1.2.4.4
Format de sortie pour les clefs RSA1:
host-or-namelist bits exponent modulus
Format de sortie pour les clefs RSA, DSA et ECDSA:
host-or-namelist keytype base64-encoded-key
Où keytype est soit “ecdsa-sha2-nistp256”, “ecdsa-sha2-nistp384”, “ecdsa-sha2-nistp521”, “ssh-dss” ou “ssh-rsa”.
/etc/ssh/ssh_known_hosts
EXEMPLES¶
Afficher la clef d'hôte rsa pour la machine hostname:
$ ssh-keyscan hostname
Trouver tous les hôtes depuis le fichier ssh_hosts qui ont des clefs nouvelles ou différentes de celles du fichier ssh_known_hosts:
$ ssh-keyscan -t rsa,dsa,ecdsa -f ssh_hosts | \ sort -u - ssh_known_hosts | diff ssh_known_hosts -
VOIR AUSSI¶
AUTEURS¶
David Mazieres ⟨dm@lcs.mit.edu⟩ a écrit la version initiale et Wayne Davison ⟨wayned@users.sourceforge.net⟩ a ajouté le support de la version du protocole version 2.
BUGS¶
La commande génère des messages "Connection closed by remote host" sur les consoles de toutes les machines analysées si le serveur a une version antérieure à la version 2.9. C'est parce qu'il ouvre une connexion au port ssh, lit la clef publique et lâche la connexion dès qu'il obtient la clef.
August 31, 2010 | Linux 5.14.0-427.18.1.el9_4.x86_64 |