GNU/Linux >> Tutoriels Linux >  >> Linux

Comment vérifier que le certificat Ssh a été signé par la clé privée Ssh Ca spécifiée ?

J'essaie de renforcer ma configuration ssh en utilisant ce matériel. Cela fonctionne bien, mais j'ai une question à laquelle j'ai du mal à trouver la réponse.

Est-ce que quelqu'un sait s'il existe un moyen de vérifier la signature du certificat hôte/utilisateur ssh par rapport à l'autorité de certification SSH ? Je sais que je peux simplement essayer de ssh dans l'hôte, qui détient ce certificat d'hôte, et s'il se connecte, la signature est évidemment correcte…
Mais j'écris une tâche d'automatisation et j'ai besoin d'un moyen programmatique pour m'assurer que le fichier de certificat est signé par CA. Dites quelques ssh-keygen commande ou toute autre chose.

MISE À JOUR :

Comme @PKapp l'a proposé :

J'ai pu comparer deux sorties :l'empreinte digitale de l'AC de signature du certificat côté serveur et l'empreinte digitale de l'AC elle-même

sudo ssh-keygen -L -f /etc/ssh/ssh_host_ed25519_key-cert.pub | fgrep "Signing CA" | sed 's/^[ t]*//' | cut -d ' ' -f 4
SHA256:LkdPQLdx4tuZp7pG0g6nAJqilFd6ZzjGdgVEV9elrdA

sudo ssh-keygen -l -f /etc/ssh/id_ed25519-HostCA.pub | cut -d ' ' -f 2
SHA256:LkdPQLdx4tuZp7pG0g6nAJqilFd6ZzjGdgVEV9elrdA

Si les sorties filtrées sont identiques, alors les certificats correspondent…

Réponse acceptée :

Pour obtenir à distance le(s) certificat(s) d'hôte ssh, vous pouvez utiliser ssh-keyscan -c <hostname> (sans le -c option, vous n'obtiendrez que la ou les clés d'hôte). Pour limiter à un type de certificat spécifique, vous pouvez inclure -t type , en utilisant ssh-rsa pas [email protected] , si nécessaire.

Ensuite, vous pouvez extraire les détails du certificat, y compris la clé publique de l'autorité de certification signataire, avec ssh-keygen -L -f <certfile> . Si vous utilisez (minuscule) -l à la place, puis ssh-keygen ne produit que les informations sur la clé d'hôte (publique) sous-jacente intégrée dans le certificat, plutôt que tous les éléments du certificat.


Linux
  1. Comment générer une paire de clés SSH (avec exemples)

  2. Comment configurer l'authentification basée sur une clé SSH sous Linux

  3. Comment importer une clé privée dans FileZilla pour SFTP

  4. Comment configurer des clés SSH

  5. Ssh – Étant donné une clé Ssh privée, comment récupérer la clé publique ?

Comment SSH établit une communication sécurisée

Comment créer une phrase de passe de clé SSH sous Linux

Comment configurer la clé publique et privée SSH sous Linux

Comment ajouter une clé publique SSH au serveur

Comment améliorer la sécurité SSH sur Ubuntu 18.04

Comment convertir la clé privée de PuTTY (.ppk) en clé SSH