====== Se connecter sur les stations sans mot de passe ====== Lorsqu'on développe sous Metafor, on est amené à entrer son mot de passe de nombreuses fois. Lors de checkout, update et commit, pour se connecter aux stations... Lorsqu'on débute, c'est assez rassurant, car on évite ainsi de commiter à l'insu de son plein gré, mais après un moment ça devient vite lassant d'entrer 6 fois son mot de passe chaque fois qu'on souhaite updater metafor. Voici donc la procédure à suivre pour pouvoir réaliser toutes ces opérations sans devoir taper son mot de passe. ===== Configurer les clés sur blueberry ===== On se connecte tout d'abord sur blueberry, en utilisant Putty. Pour éviter de retaper à chaque fois le nom de la machine, on peut sauvegarder la session (bouton save). Attention que pour que la procédure fonctionne, le nom de la session doit être égal au nom complet de la machine, donc blueberry.ltas.ulg.ac.be. {{puttyclifton.png}} Dans le répertoire ''/home/userName'' (qui est celui dans lequel on se trouve initialement), on tape : mkdir .ssh (crée dossier caché) chmod 700 .ssh (permission d'acces) cd .ssh rm known_hosts rm known_hosts2 ssh-keygen -t dsa (laisser les noms par défaut) ssh-keygen -t rsa (laisser les noms par défaut) cp id_dsa.pub authorized_keys cat id_rsa.pub >> authorized_keys Pour vérifier que tout s'est bien passé, on tape ''ls -al''. Parmi la liste qui apparaît, on doit trouver un dossier ''.ssh'' avec comme permission d'accès ''drwx- - - - - -'' : {{CliftonLS.png}} On se place ensuite dans dossier en question (''cd .ssh''), et on en affiche le contenu (''ls -al''). Le contenu doit ressembler à ceci : {{CliftonSSHLS.png}} ===== Copier les clés sur les stations ===== Ce dossier ''.ssh'' doit être copié sur les stations sur lesquelles ont souhaite se connecter sans mot de passe. Pour ce faire, on : * revient dans le dossier ''/home/userName'' : ''cd ..'' (depuis le dossier ''.ssh'') * crée un tar du dossier ''.ssh'' : ''tar cvzf ssh.tgz .ssh'' * copie ce tar vers la station, par exemple vers spring : ''scp ssh.tgz spring:'' * se connecte sur la station correspondante : ''ssh spring'' (à ce stade, il faut encore entrer son mot de passe). * décompresse le tar : ''tar xvzf ssh.tgz '' Pour vérifier que la procédure a fonctionné, il suffit de quitter la station (''exit'') et de se reconnecter (''ssh blueberry''). Il ne faut normalement plus taper son mot de passe. ===== Configurer Putty ===== L'étape précédente permet de se connecter sans mot de passe par ssh uniquement. Il faut à présent configurer Putty pour pouvoir faire de même. Pour cela, on utilise FileZilla pour rapatrier sur son PC le fichier ''id_dsa'' (et ''id_dsa.pub'' ?), qui se trouvent dans le dossier ''.ssh'' sur blueberry. On lance ensuite le programme PuttyGen. On clique sur "Load" et on charge le fichier ''id_dsa''. {{PuttyGen1.png}} On clique ensuite sur "Save private key", on confirme que l'on souhaite l'enregistrer sans mot de passe, on lui donne un beau nom du type "privateKey.ppk" et on l'enregistre quelque part (cette clé est l'équivalent de votre mot de passe et ne doit donc pas être diffusée...). Il reste maintenant à donner cette clé à Putty. On ouvre donc Putty et on charge une session. On tape son nom d'utilisateur dans Connection->Data->Auto-login username: {{PuttyCle1.png}} On va ensuite dans Connection->SSH->Auth, on clique sur Browse et on sélectionne la clé "privateKey.ppk" créée précédemment: {{PuttyCle2.png}} On retourne dans Session, on clique sur Save, et la session est à présent configurée pour être chargée sans mot de passe.