Accès simplifié à un dépôt SVN par SSH
Transcription
Accès simplifié à un dépôt SVN par SSH
Accès simplifié à un dépôt SVN par SSH Première rencontre du réseau DevelopR6 Fabien PASCALE Laboratoire de Cristallographie, Résonance Magnétique et Modélisations (CRM2) Accès simplifié à un dépôt SVN par SSH, mai 2009, Vandoeuvre-lès-Nancy 1 Les besoins ● Accès simple à un serveur SVN pour un utilisateur novice ● Sécuriser les accès avec SSH ● Gestion des droits des utilisateurs: ➔ accès uniquement aux commandes svn ➔ accès limités à un dépôt Accès simplifié à un dépôt SVN par SSH, mai 2009, Vandoeuvre-lès-Nancy 2 Solution Accéder au serveur SVN avec une clé SSH ● ● ● Créer un compte système unique « user » et générer une paire de clés SSH pour chaque utilisateur Accès au serveur svn avec le préfixe svn+ssh://user@ Restrictions définies pour chaque clé dans /home/user/.ssh/authorized_keys Accès simplifié à un dépôt SVN par SSH, mai 2009, Vandoeuvre-lès-Nancy 3 Côté serveur Linux Paquets nécessaires sous linux – Subversion – Openssh Depuis le compte « user »: – Création d'un dépôt SVN #svnadmin create project – Génération de la paire #ssh-keygen -t rsa -b 1024 -f fabien.key de clés publique-privée SSH – Activation de la clé publique # cat fabien.key.pub >> /home/user/.ssh/authorized_keys Accès simplifié à un dépôt SVN par SSH, mai 2009, Vandoeuvre-lès-Nancy 4 Côté client Windows ● Copie de la clé privée fabien.key ● Conversion de la clé avec puttygen en .ppk ● ● Création d'une session ssh « biblio » dans putty avec authentification en utilisant la clé fabien.ppk et l'IP du serveur Accès au dépôt SVN avec le client TortoiseSVN et l'url de connexion: svn+ssh://user@biblio/ Accès simplifié à un dépôt SVN par SSH, mai 2009, Vandoeuvre-lès-Nancy 5 Côté client Linux ● ● Copie de la clé privée fabien.key dans le répertoire /home/fabien/.ssh/ Définition de la variable d'environnement SVN_SSH #export SVN_SSH= ''ssh -i /home/fabien/.ssh/fabien.key'' ● Accès au dépôt avec l'url: svn+ssh://user@ip_server/ Accès simplifié à un dépôt SVN par SSH, mai 2009, Vandoeuvre-lès-Nancy 6 Restrictions des accès Côté serveur, édition du fichier /home/user/.ssh/authorizeds_keys exécutable limitation à un répertoire option -r $dir identification sur le serveur svn command="/usr/bin/svnserve -t -r /home/user/projet --tunnel-user=fabien",no-portforwarding,no-pty,no-agent-forwarding,no-X11-forwarding ssh-rsa AAAAB...Dh67n8= fabien limitations pour le compte user clé publique Accès simplifié à un dépôt SVN par SSH, mai 2009, Vandoeuvre-lès-Nancy commentaire 7 Nouveau projet au laboratoire ● ● ● ● Création d'un nouveau dépôt et génération des clés pour chaque utilisateur Configuration des clients sur les machines des utilisateurs (Windows et Linux) Création d'une copie locale de travail sur chaque poste Notification par email à chaque modification du dépôt Accès simplifié à un dépôt SVN par SSH, mai 2009, Vandoeuvre-lès-Nancy 8 Vue depuis un client Windows Accès simplifié à un dépôt SVN par SSH, mai 2009, Vandoeuvre-lès-Nancy 9 Vue depuis un client Linux Accès simplifié à un dépôt SVN par SSH, mai 2009, Vandoeuvre-lès-Nancy 10 Conclusion ● Pas de mot de passe ● Connections au serveur SVN via SSH ● Utilisateurs virtuels via les paires de clés SSH ● Gestion des utilisateurs par projet ● Utilisation de client graphique (TortoiseSVN, esvn...) Accès simplifié à un dépôt SVN par SSH, mai 2009, Vandoeuvre-lès-Nancy 11