Au BIK'LAB, nous utilisons l'authentification via SSH, pour administrer à distance nos serveurs ou publier des commit
git sans (re)taper de mot de passe.
Ce tuto vous montre simplement comment générer une paire de clé sur une station GNU/Linux ou Unix (ex: Ubuntu ou MacOSX) et partager la clé publique.
SSH (Secure Shell) est un protocole de communication sécurisé fondé sur le principe de clé asymétrique :
Ce système de clé asymétrique se matérialise donc par 2 fichiers, pour chacune des clés. La clé publique peut être diffusée librement sur les réseaux même publics et non sécurisés alors que la clé privée doit absolument rester secrète sur votre disque dur.
Pour des questions de rapidité d'authentification, nous choisissons par défaut le chiffrement RSA.
Et voilà, vous avez généré une clé SSH, ce qui se matérialise par 2 fichiers dans votre repertoire utilisateur.
La commande ls ~/.ssh/id*
permet de lister les fichiers commençant par id
dans le repertoire .ssh
, repertoire utilisé pour stocker vos clés SSH.
user@user-laptop:~$ ls ~/.ssh/id* /home/user/.ssh/id_rsa /home/user/.ssh/id_rsa.pub
id_rsa
est votre clé secrète que vous devez impérativement garder confidentielle ;Au niveau système, la clé secrète doit donc être inaccessible aux autres utilisateurs, tandis que votre clé publique devrait être accessible en lecture à tout le monde.
La commande ls -la ~/.ssh/id*
permet de lister les fichiers commençant par id
dans le repertoire .ssh
, et d'afficher en plus (option -la
), les droits d'accès des utilisateurs et groupes à vos clés.
user@user-laptop:~$ ls -la ~/.ssh/id* -rw------- 1 user user 2602 janv. 22 09:54 /home/user/.ssh/id_rsa -rw-r--r-- 1 user user 570 janv. 22 09:54 /home/user/.ssh/id_rsa.pub
L'architecture clé asymétrique permet une large diffusion de votre clé publique sans l'exposer.
Idéalement, vous devez donc rajouter cette clé sur votre page de profil, ou dans votre signature, pour permettre aux admins de l'ajouter aux différents services auxquels vous pouvez accéder.
Une clé est en fait une paire de fichiers texte (ASCII). Il est donc possible de partager sa clé soit via le fichier, soit en partageant la chaîne de caractères du fichier id_rsa.pub
.
La commande cat
permet de lire le contenu d'un fichier dans le terminal. Vous pouvez aussi utiliser vore éditeur préféré (certainement, codium ?)
Dans ce cas, il suffit de copier cette chaîne de caractères sur votre profil
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDcQiIz3dxDFvcfD6cs842HWcJTpjnXfFwmeiID62Oh4EUnauFjpTgqjU2f6NL4eSWR10k5FcGdyEINwx1cXBfg0TrILzv/T/zS7Zr07+vV8leZdKYEqMRKRNMsXEZpncB0W2jIQEA1Pj9eG5K2UsJVCOuhsPJoKtmoW+vFwRhL5cEqSrvQwzd+5Yz1Fs8JoODV4VoTWzbRfKaht8uOl0QLrkxMmM19NejFde5KO/wG75r6lHYv+XRylPgXOATeo4XzIBomNBo1CeGLpNv62Pg5NuimWP6wT1QrghFy+WSQUpBEdY54d3r4bdMERc3JC6dTaOC0By0jdihL0+xqbJ6fMxEthNLxMUz2hqcRiKs5mZkD0mbb8B4UP4ZvuedxL3zeGD0MaaLVzqTitSrEpvFEa0u9nl4i4GYWwsyhrvqkYkcJlCUaZsvlQeGOTb5yT/Z+4Ul1v/k7yxB1n2QJ6Pb8/PfNPXw0Bkx/nSC4myNhl6BAgqOPTc6fD4cQgRVYei0= user@user-laptop
Todo
Todo
Todo