GNU/Linux >> Tutoriels Linux >  >> Linux

Ajouter la clé publique au fichier known_hosts

C'est comme ça que j'ai fait.

  1. Générer une clé sur le serveur hôte. En utilisant la commande ci-dessous.

*ssh-keyscan -t rsa nom-serveur complet

  1. Copiez maintenant la section en surbrillance (dans l'image) et ajoutez cette clé au fichier "known_host" sur le serveur source. Bien sûr, l'emplacement de ce fichier peut être différent pour différents environnements.

J'ai répondu à une réponse presque similaire sur SuperUser il y a quelques jours. Les parties importantes :

  • Le format diffère
  • Il existe différentes clés d'hôte (types) sur chaque serveur (assurez-vous de coller celle qui est réellement utilisée)
  • Il y a ssh-keyscan qui peut créer le format pour vous

Sinon, préfixez simplement votre clé avec l'adresse IP du serveur (vous pouvez également ajouter le nom d'hôte, après la virgule), supprimez le commentaire à la fin de la ligne et tout va bien. Le format ressemble alors à ceci :

11.22.33.44 ssh-rsa AADGD...

Et encore une remarque, si vous utilisez HashKnownHosts yes (Debian et Ubuntu le font), vous devez re-hacher votre known_hosts tels que :

ssh-keygen -Hf ~/.ssh/known_hosts

Je viens de tomber sur ce problème, voici comment je l'ai abordé :

Au fil du temps, copier les fichiers mécaniquement via

ssh-keyscan server-name >> ~/.ssh/known_hosts

m'a donné des entrées en double dans .ssh/known_hosts.

D'autres méthodes manuelles m'ont obligé à créer le .ssh répertoire n'existait pas déjà, etc.

J'ai décidé de laisser ssh gère-le :

ssh -o StrictHostKeyChecking=no server-name ls

Le -o StrictHostKeyChecking=no l'option répond automatiquement "oui" à la

The authenticity of host 'server-name (12.345.678.900)' can't be established.
RSA key fingerprint is XXXXXXX.
Are you sure you want to continue connecting (yes/no)?

message (insérez ici toutes les mises en garde de sécurité concernant la connexion aléatoire à des machines que vous ne connaissez pas).

Le ls La commande est juste une commande fluff qui s'exécutera et forcera SSH à se déconnecter une fois terminé. Vous pouvez le changer en n'importe quelle commande fluff que vous aimez.

ssh se chargera de créer le .ssh dir (si nécessaire), en ajoutant une seule copie de la clé, etc.

Plate-forme :macOS 10.14


Linux
  1. Comment réparer la clé offensante dans le fichier ~/.ssh/known_hosts

  2. Comment chiffrer un gros fichier dans openssl en utilisant la clé publique

  3. Comment arrêter d'ajouter l'IP d'EC2 àknown_hosts pour ssh ?

  4. SSH - Comment inclure la commande -t dans le fichier ~/.ssh/config

  5. L'authentification par clé publique SSH échoue lorsque UsePAM est défini sur no

Comment configurer l'authentification basée sur la clé Ssh pour Github en utilisant le fichier ~/.ssh/config ?

Comment ajouter une clé publique SSH au serveur

Comment ajouter une clé SSH pour l'accès cPanel SSH

Comment ajouter ma clé SSH à Github/Bitbucket ?

Comment ajouter une clé SSH au code VS et se connecter à un hôte

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