Comment générer et utiliser des clés SSH sur Mac
Par Lucas Russo, développeur de SSHive · Mis à jour le
De zéro clé à un serveur qui refuse les mots de passe, en cinq minutes environ : une clé ed25519 créée dans le Terminal ou dans SSHive, installée sur le serveur, puis utilisée par vos profils.
Les connexions par mot de passe sont précisément ce que les robots qui balaient le port 22 essaient de deviner, jour et nuit. Une paire de clés remplace « ce que vous savez » par « ce que vous possédez » : la moitié privée ne quitte jamais votre Mac, le serveur ne garde que la moitié publique, et une fois la clé en place vous ne tapez plus de mot de passe à chaque connexion. Ce guide utilise ed25519, le type de clé court et rapide qu'accepte tout serveur OpenSSH actuel. Vous pouvez créer la clé dans le Terminal, sous forme de fichier dans ~/.ssh, ou dans SSHive, qui la conserve chiffrée, hors de ~/.ssh. Les deux chemins mènent au même résultat, et aucun ne demande Pro : mot de passe, clé et agent fonctionnent de la même façon dans la version gratuite du client SSH.
Pas à pas
Créer la paire de clés, dans SSHive ou dans le Terminal
Dans SSHive : Réglages › Clés SSH › Générer une clé. Donnez-lui un nom parlant (prod-web, par exemple), gardez Ed25519, le type marqué recommandé (RSA 4096 et ECDSA servent aux serveurs qui le refusent), ajoutez une passphrase si vous le souhaitez, puis cliquez sur Générer. La clé privée est chiffrée avec une clé que garde le Trousseau macOS, et elle n'est jamais écrite dans~/.ssh. Dans le Terminal :ssh-keygen -t ed25519 -C "vous@example.com", Entrée pour accepter~/.ssh/id_ed25519, puis une passphrase. Préférez ce chemin quand d'autres outils du Mac, git ou vos scripts, ont besoin de la clé sous forme de fichier.Installer la clé publique sur le serveur (le dernier mot de passe que vous y tapez)
Clé créée dans SSHive : connectez-vous une fois au serveur avec son mot de passe, puis dans Réglages › Clés SSH ouvrez Installer sur l'hôte à côté de la clé et choisissez cette session. SSHive ajoute la clé publique à~/.ssh/authorized_keyspar la connexion ouverte, comme le feraitssh-copy-id, et vous prévient si elle y figurait déjà. Copier la clé publique, juste à côté, sert si vous préférez la coller vous-même. Fichier de clé créé dans le Terminal :ssh-copy-id -i ~/.ssh/id_ed25519.pub user@host, puis le mot de passe une dernière fois.Associer la clé au profil
Ouvrez le profil (clic droit › Modifier, ou + pour un nouveau). Sous Authentification, choisissez Clé privée : un menu Clé SSH apparaît. Une clé créée dans SSHive figure sous Clés gérées (onglet Clés), et SSHive retrouve seul sa passphrase. Pour un fichier, laissez Fichier local…, cliquez sur Parcourir et sélectionnez~/.ssh/id_ed25519: un ✓ vert signifie que SSHive peut le lire, un ⚠ orange que macOS vous demande de choisir à nouveau le même fichier pour en autoriser l'accès. Cochez Clé protégée par un mot de passe si elle en a un et tapez-le une fois. Vos hôtes ont déjà des lignesIdentityFiledans~/.ssh/config? Importer ce fichier remplit ce champ pour chacun.Ce que SSHive conserve, et où
Un fichier de clé que vous choisissez reste dans~/.ssh: SSHive en retient le chemin et l'autorisation macOS de le lire, rien de plus. Les clés générées dans SSHive, les passphrases et les mots de passe enregistrés sont chiffrés sur votre Mac avec une clé que garde le Trousseau macOS. Touch ID est facultatif : Demander Touch ID avant de déchiffrer les mots de passe est un interrupteur des Réglages, désactivé par défaut.Couper les connexions par mot de passe sur le serveur
Une fois que SSHive se connecte avec la clé, durcissez le serveur : dans/etc/ssh/sshd_config, mettezPasswordAuthentication no, puis rechargez sshd (sudo systemctl reload sshsur Debian et Ubuntu). Gardez cette session ouverte et essayez une nouvelle connexion avant de vous déconnecter : si la clé est refusée, vous avez encore un accès. Dès lors, plus rien sur ce serveur n'accepte de mot de passe, et les robots du port 22 n'ont plus rien à deviner.
Questions fréquentes
Faut-il choisir RSA, ECDSA ou ed25519 ?+
Où sont stockées mes clés SSH sur macOS ?+
ssh-keygen sont des fichiers dans ~/.ssh/ ; ajoutez-en une avec ssh-add --apple-use-keychain et macOS garde sa passphrase dans le Trousseau. Les clés générées dans SSHive ne sont pas des fichiers : SSHive les conserve chiffrées et affiche leur moitié publique dans Réglages › Clés SSH. Sauvegardez vous-même vos fichiers de clé : perdre l'unique copie d'une clé privée vous ferme la porte de tous les serveurs qui lui faisaient confiance.Une même clé peut-elle servir pour plusieurs serveurs ?+
Fonctionnalités SSHive associées
Terminal SSH
Terminal accéléré par le GPU
Essayer SSHive gratuitement sur macOS
Obtenez le client tout-en-un SSH, SFTP, RDP et VNC pour Mac. Téléchargement gratuit, sans inscription.
Télécharger SSHive gratuitement