Secretive est une nouvelle app qui intéressera une petite audience, mais c’est peut-être votre cas. Seuls les Mac équipés d’une puce T2 et donc d’une enclave sécurisée, c’est-à-dire les portables avec Touch ID, l’iMac Pro, le Mac Pro de 2019 et les Mac Mini à partir de 2018, peuvent utiliser l’app1. Par ailleurs, elle n’aura d’intérêt que si vous utilisez des clés SSH au quotidien, puisque son rôle est de les stocker dans l’enclave.
Les clés SSH servent à se connecter à un serveur distant. C’est la méthode recommandée aujourd’hui à la place des mots de passe. L’idée est de générer sur votre ordinateur local deux clés de chiffrement uniques : l’une, publique, sera copiée sur le serveur distant quand l’autre, privée, doit rester sur l’ordinateur. Lors de la connexion, le serveur dispose d’une liste de clés SSH qui identifient les ordinateurs autorisés et la connexion ne se fait que si la clé publique du serveur et la clé privée de l’ordinateur sont présentes.
C’est une information naturellement sensible, puisque si quelqu’un met la main sur votre clé SSH privée, il pourra se connecter à tous les serveurs distants associés sans limite. En temps normal, les clés SSH ne sont pas forcément sécurisées2, elles sont stockées dans un dossier caché de votre dossier personnel (~/.ssh
) et si quelqu’un a accès à votre Mac, il aura aussi accès aux clés. Avec Secretive, l’information est déplacée dans l’enclave sécurisée qui est chiffrée et inaccessible sans le mot de passe de la session.
Secretive ne se contente pas de déplacer les clés SSH dans l’enclave sécurisée, l’app propose une interface de gestion pour ajouter et supprimer des clés, ou encore les ajouter au presse-papier. Sur les Mac avec un capteur Touch ID, l’accès aux données peut se faire avec lecture d’empreintes, vous pouvez aussi utiliser une Apple Watch ou à défaut saisir le mot de passe de votre session. Mieux vaut une méthode plus simple toutefois, puisque l’opération d’authentification devra être effectuée à chaque utilisation des clés, dans le terminal, mais aussi dans un client Git, par exemple.
Il faut avoir confiance pour donner ainsi accès à toutes ses clés SSH à un développeur tiers. Secretive est une app gratuite et surtout open-source, vous pouvez ainsi vérifier ce qu’elle fait précisément en consultant son code source. Son développeur prend le sujet de la sécurité très au sérieux, il fournit notamment un log complet de chaque version proposée au téléchargement et vous pouvez le contacter directement si une faille de sécurité a été découverte dans son code.
Secretive n’est proposée qu’en anglais et macOS 10.15 est nécessaire pour l’installer.
-
Techniquement, vous pouvez aussi utiliser l’app sans puce T2, à condition d’avoir une clé USB sécurisée, comme une YubiKey. ↩
-
Il est possible de définir un mot de passe lors de leur création, ce qui ajoute une couche de sécurité. ↩