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