====== C’est quoi ssh ? ====== Une petite recherche internet en utilisant votre moteur favori devrait vous éclairer sur le pourquoi du comment. Par exemple « authentification clef publique ssh ». ====== Guide de survie ssh ====== Pour les gens pressés qui ont été envoyés ici parce qu’ils ont besoin d’une « clef publique ssh » … ===== Génération d’une paire de clefs ===== Une commande, des instructions à lire et à la clé¹ des fichiers générés : $ ssh_keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/home/USERNAME/.ssh/id_rsa): -> Entrée ou saisie de /chemin_choisi/id_rsa Enter passphrase (empty for no passphrase): -> Votre PassPhrase Enter same passphrase again: -> Votre PassPhrase Your identification has been saved in /chemin_choisi/id_rsa. Your public key has been saved in /chemin_choisi/id_rsa.pub. The key fingerprint is: df:92:f0:27:7d:ca:64:55:7e:ec:26:36:cd:bb:4f:7f USERNAME@HOSTNAME The key’s randomart image is: +--[ RSA 2048]----+ | | | | | .| | + | | S . +| | + + . +.| | * * = *| | B + =E| | o o*| +-----------------+ Vous pouvez mettre une PassPhrase vide mais dans ce cas votre clef privée n’est pas protégée et son vol serait problématique. Vous ne devez jamais communiquer la clef privée à un tiers, même de confiance. Seule la clef publique (extension « .pub ») est à partager lorsqu’elle vous est demandée. ¹: jeu de mot intentionnel ===== Transfert d’une clef publique ===== Sur une machine à laquelle vous avez déjà un accès : $ ssh-copy-id USERNAME@HOSTNAME Lors du transfert, vous devrez utiliser un mécanisme d’authentification qui ne met pas en œuvre la clef à transférer puisqu’elle n’est pas encore sur le compte USERNAME de la machine HOSTNAME. Une fois la clef publique transférée, une nouvelle connexion devrait vous demander la PassPhrase : $ ssh USERNAME@HOSTNAME Enter passphrase for key ’/chemin_choisi/id_rsa’: ===== Édition ou consultation de la liste des clefs autorisées dans un compte ===== Sauf configuration différente au niveau du service sshd, l’emplacement du fichier contenant les clefs publiques autorisées à se connecter sur un compte est dans : cat ${HOME}/.ssh/authorized_keys