OVH Community, votre nouvel espace communautaire.

Subversion


satnur
30/10/2013, 10h45
Bonjour,

Je rencontre les mêmes difficultés: je testerai ce soir cela. En revanche, je me posait la question suivante: comment as-tu créer les utilisateurs svn ? Par l'intermdiaire du multiFTP pour par des commandes svn ?

A+

Satnur

Citation Envoyé par rosmord
petite remarque après avoir bien galéré pour avoir un svn multi-utilisateurs en ligne de commande :

J'ai sur mon compte ovh configuré plusieurs utilisateurs de svn dans le fichier authorized_keys2. Je me connecte avec ssh sans problème.

ssh-dss ZAQZADZ....... (clef pour ssh)

lignes suivantes :
command="/usr/bin/svnserve --root=CHEMIN_ARCHIVE --tunnel --tunnel-user=UTILISATEUR1_SVN",... ssh-dss ....CLEF2... UTIL1@SITE1.fr
command="/usr/bin/svnserve --root=CHEMIN_ARCHIVE --tunnel --tunnel-user=UTILISATEUR2_SVN",... ssh-dss ....CLEF3... UTIL2@SITE1.fr

Mais ensuite, les connexions sous svn m'identifient systématiquement avec mon login OVH. Les essais du type :

export SVN_SSH="ssh -i $HOME/.ssh/autreClef -q"
svn co svn+ssh://LOGINFTP@MONSITE/MONARCHIVE

échouent lamentablement.

Une discussion avec un collègue qui touche sa bille en réseau a fini par aboutir à une solution :

Je suis sur macos X, et, sur un client unix (ou mac), le logiciel ssh-agent est automatiquement lancé, et va garder en mémoire les clefs utilisées POUR CHAQUE SITE. Résultat :

* j'essaie un ssh sur mon compte (avec ma clef "standard") => ok, pas de mot de passe

* j'essaie un svn avec une autre clef : en fait, c'est la clef précédente qui est transmise... d'où l'échec précédent.

Bref, pour éviter ça, on peut tuer le ssh-agent avant le svn : killall ssh-agent

Le problème ne se pose évidemment que si on a essayé de faire une connexion ssh vers le même endroit dans la même session de travail, et uniquement avec le client standard. Sous eclipse, je n'ai pas eu de problème...

Yannicklal
17/01/2013, 16h46
Après avoir bien cherché pour connecter TortoiseSVN à mon hébergement Pro, voilà la procédure :

Les requis :

- Posséder un hébergement OVH pro minimum
- Connaitre les paramètres d’accès au FTP de cet hébergement

Ensuite

1. Télécharger Putty Installer et pas Putty seul, nous avons besoin de Putty, PuttyGen, Pageant et Plink (http://www.chiark.greenend.org.uk/~s.../download.html)
2. Installer Putty

Dans Putty

3. Ouvrir Putty, ne changer rien des valeurs qui sont par défaut sauf ce qui est décrit ici :
a. La catégorie Session est sélectionnée (partie de gauche)
b. Dans la partie de droite dans Host Name entrer l’adresse FTP de l’hébergement (ex : ftp.monsite.com)
c. Port : 22
d. Connection type : SSH
e. Saved Sessions : le nom que vous voulez donner à cette connexion (selon votre convenance, sans espace)
f. Sauvegarder cette connexion (Save)
g. Dans les catégories, sélectionner Connection/Data
h. Auto-login username : le login FTP de l’hébergement (donné par OVH)
i. Dans les catégories, sélectionner Connection/SSH
j. Preferred SSH protocol version : 2
k. Cocher la case Enable lagacy use single-DES in SSH-2
l. Dans les catégories, sélectionner Session (tout en haut)
m. Sauvegarder les modifications (Save)
n. Putty est prêt à faire feu pour OVH
4. La session d’authentification de Putty est très courte, ce qui ne laisse généralement pas le temps d’enter un mot de passe complexe, copier le mot de passe de l’accès FTP.
5. Dans Putty, cliquer sur Open, une fenêtre de session apparaît, le login doit déjà apparaître puisqu’il a été paramétré en 3.h.

Dans la fenêtre de session

6. Le système est en attente du mot de passe, sans attendre coller (par crtl+V ou Maj+Ins) le mot de passe après avoir cliqué dans la fenêtre de session. Attention il ne se passe rien à l’écran, le mot de passe n’apparaît pas, c’est normal, valider aussitôt.
7. Une fois logué, on va créer les clés publiques et privées :
a. Entrer :
Code:
ssh-keygen -b 1024 -t dsa -f tortoise_key
si on a choisi de ne pas entrer de mot de passe, le système demande quel est le mot de passe (enter passphrase) valider deux fois pour ne pas entrer de mot de passe.
b. Si on désire coder la clé par un mot de passe
Code:
ssh-keygen -b 1024 -t dsa -N motdepasse -f tortoise_key
c. La clé a été générée si on tape
Code:
ls
(LS en minuscule) on affiche les répertoires présents dans l’hébergement depuis la racine et le fichier tortoise_key (clé privée) et tortoise_key.pub (clé publique)
8. Créer le répertoire .ssh en entrant
Code:
mkdir .ssh
9. Set des droits entrer :
Code:
chmod 700 .ssh
10. Copie de la clé publique dans le répertoire .ssk entrer :
Code:
mv tortoise_key.pub .ssh/authorized_keys2
(attention si ce fichier existe déjà il sera écrasé)
11. On vérifie que le fichier est bien là sélectionner le répertoire :
Code:
cd .ssh
puis :
Code:
ls –la
on doit obtenir quelque chose comme :
Code:
-rw-r--r--+ 1 loginFTP users 1382 Jan 16 23:21 authorized_keys2
12. Maintenant on doit récupérer le contenu de la clé privée, revenir sur le répertoire racine :
Code:
cd ..
13. Puis entrer :
Code:
vi tortoise_key
14. Sélectionner l’ensemble du texte à la souris, faire bien attention à arrêter la sélection à la fin du dernier tiret.

Dans le Bloc Note

15. Coller la sélection dans le bloc note et sauvegarder le fichier sans extension, ne pas sélectionner le type .txt mais sélectionner *.*, on obtient néanmoins un fichier avec une extension .txt mais sans format texte. Nom du fichier tortoise_private, à enregistrer sur le bureau par exemple.
16. Fermer la fenêtre de session, fermer le bloc note.

Dans PuttyGen

17. Ouvrir PuttyGen
18. Cliquer sur Load et sélectionner le fichier tortoise_key crée avec le bloc note.
19. Une fois la clé chargée, on clique sur Save private key et on enregistre la cle sous tortoise_private, par exemple. Définir un endroit pour l’enregistrement du fichier qui ne changera plus sur la machine, c’est important pour la suite.
20. Fermer PuttyGen

Dans Putty

21. Ouvrir Putty
22. Sélectionner la session que nous avions précédemment sauvegardée et cliquer sur Load
23. Dans les catégories, sélectionner Connection/SSH/Auth
24. Dans Private key file for authentication sélectionner le fichier tortoise_key.ppk qui a été généré avec PuttyGen (celui qui ne doit plus changer de place)
25. Dans les catégories, sélectionner Session et sauver la session (Save)

Dans l’explorateur

26. Charger la clé privée en mémoire : double cliquer sur le fichier tortoise_key.ppk, un petit ordinateur avec un chapeau apparait dans la barre des tâches. C’est Pageant un programme résident qui gère les clés en mémoire.

Dans Putty

27. Maintenant dans Putty, on s’assure que la session qui nous intéresse est bien chargée, on clique sur Open, la session SSH démarre automatiquement dans la fenêtre de session avec les clés qui ont été créés.
28. Si la session ne démarre pas automatiquement, ce n’est pas la peine d’aller plus loin, il faut recommencer à partir du point 3.

Dans l’explorateur

29. Pageant n’a pas de système de sauvegarde, les clés qu’il contient sont volatiles et seront perdues au redémarrage de la machine, on va créer un raccourci pour lancer Pageant au démarrage avec notre clé privée.
30. Créer un raccourci
31. Sur ce raccourci faire clic droit, propriétés
32. Dans Cible entrer le chemin de Pageant un espace et le chemin du fichier qui contient la clé privée (voilà pourquoi il ne doit pas changer d’endroit), ce qui donne :
Code:
"C:\Program Files (x86)\PuTTY\pageant.exe" "C:\Users\momo\Desktop\mes_cles\tortoise_private.ppk"
33. Finir par Ok et placer ce raccourci dans le dossier Démarrage de la machine (voir fonctionnalités Windows).
34. Ainsi à chaque démarrage de la machine, la clé sera chargée en mémoire.

Dans la fenêtre de session

35. Si Putty n’a pas été fermé, profiter de la session en cours pour créer le répertoire de dépôt sur l’hébergement
36. Entrer :
Code:
mkdir svn
37. Et :
Code:
svnadmin create svn/depot_test (entrer le nom que l’on désire)
38. Fermer la session

Partie Tortoise

39. Télécharger et installer TortoiseSVN pour 32 ou 64 bits (sans importance) (http://tortoisesvn.net/downloads.html)
40. Créer un dossier que l’on va lier avec le dépôt svn
41. Cliquer droit sur le dossier et faire TortoiseSVN Settings
42. Cliquer sur Network
43. Dans SSH client indiquer le chemin qui pointe sur TortoisePlink.exe (qui se trouve dans le répertoire d’installation de TortoiseSVN)
44. Finir par OK
45. Cliquer droit sur le dossier et faire SVN Chekout
46. Dans la fenêtre qui aparaît, on entre la sequence suivante :
Code:
svn+ssh://nom de la session Putty (qui sert à sauver la session)/svn/depot_test
et faire OK. Bah ça marche pas ! Normal : ça ne fonctionne pas sur un hébergement mutualisé OVH mais cela fonctionne sur un hébergement dédié.
47. On va utiliser la méthode du tunnel pour connecter Tortoise à notre dépôt.

Dans PuttyGen

48. Récupérer la clé publique : ouvrir PuttyGen et charger la clé privée que l’on a gardée quelque part sur la machine (tortoise_key.ppk)
49. Copier toute la clé publique qui apparaît dans la fenêtre et construire cette séquence sur une seule ligne :
Code:
command="/usr/bin/svnserve --root=/racine de l’hébergement qui ressemble à homez.xxx/login du FTP/svn --tunnel --tunnel-user=user de votre choix",no-port-forwarding,no-agent-forwarding,no-X11-forwarding,no-pty ssh-dss AAAAB3…Ro3QMQ== imported-openssh-key
50. La partie qui commence ssh-dss est la clé précédemment copiée, user de votre choix est un nom sans espace sans lien avec quoi que ce soit, cela permettra à SVN d’indiquer qui aura fait les modifications s’il existe plusieurs utilisateurs susceptible de travailler sur le dépot.
51. Sauver cette séquence dans le bloc note par exemple.

Dans Putty

52. Ouvrir Putty et ouvrir une session (la même créé précédemment)
53. Entrer
Code:
cd .ssh
54. Puis
Code:
vi authorized_keys2
, ce qui a pour action d’éditer le fichier que nous avons créé au point 10.
55. Aller à la fin de la clé enregistrée avec la flèche du clavier (droite), aller à la ligne (entrée)
56. Taper
Code:
i
pour entrer en insertion puis coller la séquence constuite pour le tunnel.
57. Faire echap puis taper
Code:
:wq
(enregistrement et quiter)
58. Quitter la session

Dans l’explorateur

59. Se repositionner sur le dossier local à lier à SVN et faire un clic droit SVN Chekout
60. Entrer cette séquence dans l’URL :
Code:
svn+ssh://loginFTP@ftp.nomsite.com/homez.xxx/loginSite (le même que FTP ?)/svn/depot_test
61. Et voilà

La première partie de ce tuto est visible sur Youtube : http://www.youtube.com/watch?v=BoKHoRWu4EE

rosmord
08/12/2010, 16h21
Bon, la méthode que je donne plus haut ne marche pas bien (en tout cas sous mac os X). Mais j'ai finalement trouvé une variante qui fonctionne.

Donc, le cadre :
* on veut pouvoir gérer plusieurs utilisateurs
* côté client, je veux pouvoir avoir plusieurs identités sur le même compte si je veux (bon, c'est un peut idiot).

Alors :

* On suit la doc pour générer les clefs et modifier le fichier authorized_keys2 sur le seveur ovh.

Dans la ligne à éditer, vérifiez bien la valeur de --root= et de tunnel-user.
Le mail à la fin est purement indicatif

* Tester éventuellement avec un client graphique, histoire de...
* Côté client:

** Commandes à taper :**
La commande magique par laquelle commencer est :
ssh-add -D
Ensuite:
export SVN_SSH="ssh -i $HOME/.ssh/maClef"
svn co svn+ssh://MON_LOGIN_FTP@MONSERVEUR/MON_ARCHIVE

par exemple, si vous êtes le possesseur de trucmuche.org, que vous vous connectez normalement en utilisant le login "truc"
et que vous avez créé dans le dossier svn une archive svn nommé machin
vous aurez probablement quelquechose du genre

svn co svn+ssh://truc@trucmuche.org/machin


ssh-add -D vide le cache de ssh, et lui permet donc de lire votre clef.

Lecaramel
17/11/2010, 10h50
Un truc qui est sur, je repasse au dédié à la fin de mon abonnement mutualisé... au moins, SVN marchait sans soucis.. Vraiment pas content du mutualisé, et le prix est quand même relativement élevé au final...
Me diras tu, ça résoud pas ton soucis..

emmett
17/11/2010, 08h27
Bonjour,

Malgré tous les excellents conseils de ce forum, les tutorials lus sur le sujet et les recherches sur Google, je ne suis pas parvenu à accéder à mon dépôt subversion sur plan mutualisé OVH à partir de commandes lignes d'une session Cygwin alors que ma configuration Eclipse peut l'accéder sans problème.

Voici le résumé des étapes de ma configuration.

Génération clé public+privée ssh sur machine locale sous Windows 7 :

Installation de Cygwin (http://www.cygwin.com/) avec les packages ssh et svn
Lancement session ssh en double cliquant sur l'icone Cygwin installée
ssh-keygen -t dsa
2 fichiers crées dans C:/CYGWIN_DIR/home/user/WINDOWS_LOGIN : id_dsa et id_dsa.pub
Fichier id_dsa copié sur machine locale dans C:/CYGWIN_DIR/home/user/WINDOWS_LOGIN/.ssh
Fichier id_dsa.pub transféré par ftp sur serveur OVH dans /HOME/FTP_LOGIN/.ssh



Création fichier /HOME/FTP_LOGIN/.ssh/authorized_keys2 avec sur une seule ligne :

command="/usr/bin/svnserve --root=/homez.XXX/FTP_LOGIN/svn --tunnel --tunnel-user=SVN_USER",no-port-forwarding,no-agent-forwarding,no-X11-forwarding,no-pty SSH_PUBLIC_KEY

SSH_PUBLIC_KEY étant le contenu du fichier id_rsa.pub



Checkout du dépôt à partir du workspace sur machine locale :

svn co svn+ssh://FTP_LOGIN@ftp.DOMAIN.com/REPOSITORY/PROJECT

génére l'erreur suivante sans même me demander le password du compte FTP_LOGIN :
svn: Error in child process: exec of 'C:\Program' failed: No such file or directory



Tout conseil serait le bienvenu.
Merci

holblin
10/10/2010, 05h55
Je viens d'y arriver ! SUCESSS !

Alors mon problème était : home.342 ....

En effet tout le monde copie home.342 dans le root (en tous cas pas mal)

Essayez de mettre homeZ.342 ... enfin home.XXX ... Je vous colle ma ligne :
Code:
command="/usr/bin/svnserve --root=/homez.342/login/svn --tunnel --tunnel-user=login",no-port-forwarding,no-agent-forwarding,no-X11-forwarding,no-pty ssh-dss AAAAB3NzaC1kc3MAAACBA......WZ1wpcBRbqi9AjMxaLDIE8Q== login
Je ne sais pas pourquoi j'ai rajouté un login à la fin ....

en gros c'est

Code:
command="/usr/bin/svnserve --root=/homez.XXX/USER1/svn --tunnel --tunnel-user=USER2",no-port-forwarding,no-agent-forwarding,no-X11-forwarding,no-pty ssh-dss CLEDSS
ou plutot :

Code:
command="/usr/bin/svnserve --root=/PWD/svn --tunnel --tunnel-user=USER2",no-port-forwarding,no-agent-forwarding,no-X11-forwarding,no-pty ssh-dss CLEDSS

rosmord
29/09/2010, 17h20
petite remarque après avoir bien galéré pour avoir un svn multi-utilisateurs en ligne de commande :

J'ai sur mon compte ovh configuré plusieurs utilisateurs de svn dans le fichier authorized_keys2. Je me connecte avec ssh sans problème.

ssh-dss ZAQZADZ....... (clef pour ssh)

lignes suivantes :
command="/usr/bin/svnserve --root=CHEMIN_ARCHIVE --tunnel --tunnel-user=UTILISATEUR1_SVN",... ssh-dss ....CLEF2... UTIL1@SITE1.fr
command="/usr/bin/svnserve --root=CHEMIN_ARCHIVE --tunnel --tunnel-user=UTILISATEUR2_SVN",... ssh-dss ....CLEF3... UTIL2@SITE1.fr

Mais ensuite, les connexions sous svn m'identifient systématiquement avec mon login OVH. Les essais du type :

export SVN_SSH="ssh -i $HOME/.ssh/autreClef -q"
svn co svn+ssh://LOGINFTP@MONSITE/MONARCHIVE

échouent lamentablement.

Une discussion avec un collègue qui touche sa bille en réseau a fini par aboutir à une solution :

Je suis sur macos X, et, sur un client unix (ou mac), le logiciel ssh-agent est automatiquement lancé, et va garder en mémoire les clefs utilisées POUR CHAQUE SITE. Résultat :

* j'essaie un ssh sur mon compte (avec ma clef "standard") => ok, pas de mot de passe

* j'essaie un svn avec une autre clef : en fait, c'est la clef précédente qui est transmise... d'où l'échec précédent.

Bref, pour éviter ça, on peut tuer le ssh-agent avant le svn : killall ssh-agent

Le problème ne se pose évidemment que si on a essayé de faire une connexion ssh vers le même endroit dans la même session de travail, et uniquement avec le client standard. Sous eclipse, je n'ai pas eu de problème...

jabberwock
03/08/2010, 21h34
Pour la partie Eclipse, je viens de repasser un peu de temps dessus pour voir ce que ça donnait. Et là, ça marche bien. Donc je vais expliquer ce que j'ai fait.

Je me suis basé sur l'article suivant : http://www.tylek.org/?p=144

Pour information, j'utilise Eclipse 3.6 (fraichement installé) sous Windows 7 (donc les chemins seront plutôt valable pour Windows 7). J'ai installé tous les plugins de l'update site suivant http://subclipse.tigris.org/update_1.6.x (oui je sais, tout n'est pas forcément utile mais je viens de faire ça en 15 minutes alors j'ai pas réfléchi )

La configuration SVN dans Eclipse est la suivante :
Dans Window > Preferences > Team > SVN > SVN Interfaces, choisir l'interface JavaHL (c'est peut être fait par défaut, là je ne m'en souviens pas).

Configuration particulière pour que ça fonctionne :
  • Editer le fichier config du répertoire C:\Users\\AppData\Roaming\Subversion
    Je dois avoir SVN d'installé ou quelque chose comme ça. En toute logique le dossier Subversion mentionné au dessus à dû être créé soit lors de l'installation de Tortoise soit de SlikSvn (je viens de voir que j'avais ça sur mon PC). Je penche tout de même pour SlikSVN http://www.sliksvn.com/en/download
  • Vérifier que l'entête de section [tunnels] n'est pas commenté (pas de # devant). Si c'est le cas, décommenter là.
  • Ajouter ou modifier la ligne ssh = (elle devrait être commenté) de la façon suivante : ssh = CHEMIN_VERS_PLINK -2 -i CHEMIN_VERS_LA_CLE_PRIVE_UTILISE_PAR_PAGEANT
    Pour les chemins, il est impératif de mettre des guillemets doubles dans le cas où le chemin contiendrait des espaces. De même, il est impératif d'utiliser des / et non pas des \
  • Enregistrer la modification
  • Lancer Eclipse et se connecter au repository
    à priori, pas besoin de lancer pageant par contre, ça reste utile pour Tortoise.


En espérant que ceci aidera quelques perdus qui comme moi o déjà galéré sur l'utilisation de svn+ssh sous Eclipse.

jabberwock
02/08/2010, 19h49
@TobyKaos Je n'ai pas trouvé de solution à l'heure actuelle mais si tu en trouves une, merci de la mettre ici, je pense que ça aidera pas mal de monde.

jobino
28/07/2010, 13h16
Dans le guide de Ovh, il faudrait préciser qu'il faut utiliser Pageant et installer ses clés privées pour que ça marche car le client svn et pageant sont séparés. Enfin, en ce qui me concerne j'ai pédalé pas mal de temps là dessus.

TobyKaos
27/07/2010, 16h13
Bon et bien pareil avec Eclipse. Premièrement j'arrive bien à me servir de svn avec tortoisesvn et pageant (avec clef privée, public). Je me suis donc dit que je pouvais utiliser pageant avec eclipse. Mais non que ce soit activé ou non j'ai toujours:

Checkout operation for 'svn+ssh://monlogin@mondomaine.com/MonProjet' failed.
svn: No repository found in 'svn+ssh://monlogin@mondomaine.com/MonProjet'

J'ai bien vue que l'on pouvez ajouter la clef privée dans les paramètres d'éclipse mais il me demande une passphrase et je ne crois pas en avoir mis une. (et si c'estle cas je ne m'en rappel plus).

Comment faire pour récupérer mon projet sous eclipse dans mon workspace. (vraiment embettant je préfère visual mais bon je suis obligé d'utiliser eclipse pour compiler).

jabberwock
23/06/2010, 20h53
Bon alors après vérification, avec Tortoise, j'arrive, sans avoir à préciser un login/mot de passe, à me connecter à mon dépôt sur OVH. Il ne me reste plus qu'à finaliser la connexion à partir d'Eclipse et à partir de Netbeans...

Je sens que ce n'est pas gagné. Je vous en dit plus tout à l'heure.

jabberwock
22/06/2010, 21h56
Bonjour à vous,

Je pense que je suis un boulet, mais là, j'avoue, je sèche complètement.

Donc j'aimerais utiliser le SVN de mon hébergement pro avec Eclipse (et/ou Netbeans, je ne suis pas sectaire). J'ai essayé d'utiliser le tutoriel suivant pour l'intégration dans Eclipse.

Et là ça coince au niveau du "Share Project".

En fait, je me paye les erreurs suivantes (après que l'IDE m'ait demandé mon mot de passe, ce qui est assez illogique)

svn: No repository found in 'svn+ssh://loginFTP@mondomaine.net/repository/nomduprojet'
svn: No repository found in 'svn+ssh://loginFTP@mondomaine.net/repository/nomduprojet'
mkdir --parents -m "Initial import." svn+ssh://loginFTP@mondomaine.net/repository/nomduprojet
svn: No repository found in 'svn+ssh://loginFTP@mondomaine.net/repository'
svn: No repository found in 'svn+ssh://loginFTP@mondomaine.net/repository'

Après le tutoriel n'est peut être pas bon. J'ai également testé simplement la connection par clé privé publique à partir de mon poste mais ça ne semble pas concluent. (j'ai pu largement merder là dessus)

Pour information, je suis sous windows 7, j'utilise Eclipse 3.5 et/ou Netbeans 6.8.

Merci d'avance pour vos éventuelles réponses et pour accessoirement des protocoles de tests à effectuer pour vérifier ma configuration serveur.

bolops
01/04/2010, 10h54
Un grand merci, Sébastien !
C'est vrai, il faut que je change de lunettes, c'est écrit dans la notice, et dans des post précédents. Mais une accumulation d'erreurs m'avait amené à faire n'importe quoi. Merci de t'être donné la peine d'examiner mon message!

Donc, avec Tortoise, ça fonctionne bien. Grâce à ce forum, je suis réconcilié avec l'informatique!

Merci à tous.

Sébastien Ferry
01/04/2010, 01h47
Citation Envoyé par bolops
- lorsque je ne charge pas ma clé privée dans pageant, ou lorsque je supprime le fichier .ssh/authorized_keys2, ou lorsque ce fichier contient des erreurs qui le rendent inutilisable, svn fonctionne correctement, mais je dois taper deux fois mon mot de passe de connexion (celui qui me sert pour ftp et ssh) à chaque action!
Je suppose que lorsque tu n'utilises pas la clé pour te connecter (mais le mot de passe), tu ne bénéficies pas des spécificités du fichier .ssh/authorized_keys2, notamment de l'option --root="..."

Citation Envoyé par bolops
- par contre, lorsque j'ai l'impression de suivre à la lettre les modes d'emploi, avec chargement de ma clé privée dans pageant, et un fichier .ssh/authorized_keys2 complet, j'ai l'erreur:

No repository found in 'svn+ssh://loginFTP@nomDeDomaine/homez.XXX/loginFTP/svn/depot_test'

Mon fichier .ssh/authorized_keys2 est:
command="/usr/bin/svnserve --root=/homez.XXX/loginFTP/svn --tunnel --tunnel-user=loginFTP",no-port-forwarding,no-agent-forwarding,no-X11-forwarding,no-pty ssh-dss ma_CLE_PUBLIQUE dsa-key-20100331
Et que donne un svn+ssh://loginFTP@nomDeDomaine/depot_test?

En effet, si tu précises command="/usr/bin/svnserve --root=/homez.XXX/loginFTP/svn ..." et ensuite tu demandes svn+ssh://loginFTP@nomDeDomaine/homez.XXX/loginFTP/svn/depot_test je suppose que SVN va rechercher svn+ssh://loginFTP@nomDeDomaine/homez.XXX/loginFTP/svn/homez.XXX/loginFTP/svn/depot_test, et ne le trouve pas!

C'est à dire que le chemin absolu doit aller soit dans le authorized_keys2, soit dans la commande.

Disclaimer: je dis ça, mais moi non plus je n'ai pas lu le manuel , et je n'utilise pas pageant (mais une variable d'environnement).

Lecaramel
31/03/2010, 14h57
Je suis dans exactement le même cas.... et ma clef est bien valide...

bolops
31/03/2010, 14h42
Tout d'abord, merci à tous ceux qui postent des informations, cela m'a permis d'avancer un peu depuis deux jours!
Toutefois, je rencontre les mêmes problèmes que vous, et je crois avoir remarqué ceci:
- lorsque je ne charge pas ma clé privée dans pageant, ou lorsque je supprime le fichier .ssh/authorized_keys2, ou lorsque ce fichier contient des erreurs qui le rendent inutilisable, svn fonctionne correctement, mais je dois taper deux fois mon mot de passe de connexion (celui qui me sert pour ftp et ssh) à chaque action!
- par contre, lorsque j'ai l'impression de suivre à la lettre les modes d'emploi, avec chargement de ma clé privée dans pageant, et un fichier .ssh/authorized_keys2 complet, j'ai l'erreur:

No repository found in 'svn+ssh://loginFTP@nomDeDomaine/homez.XXX/loginFTP/svn/depot_test'

Mon fichier .ssh/authorized_keys2 est:
command="/usr/bin/svnserve --root=/homez.XXX/loginFTP/svn --tunnel --tunnel-user=loginFTP",no-port-forwarding,no-agent-forwarding,no-X11-forwarding,no-pty ssh-dss ma_CLE_PUBLIQUE dsa-key-20100331

Je travaille sous Windows Vista,
avec PuTTY 0.6
tortoise SVN 1.6.7 Subversion 1.6.9

Si quelqu'un voit l'erreur que je commets, je lui serai très reconnaissant si il me l'indique!
Merci.

Lecaramel
24/03/2010, 09h19
Niaatan: oui, c'est mon identifiant OVH FTP de 8 character max.
Damss : moi, j'ai pas trop le choix...

Damss
24/03/2010, 09h11
Me concernant, ça ne marche jamais avec "svn+ssh://userFTP@domain.tld/depot", je suis obligé de mettre l'adresse complète (avec home machin).

'fin bref, je laisse tomber, ça ne marche pas leur truc, la doc est insuffisante et j'ai déjà passé une demi journée pour rien.

Je verrais pour mettre ça sur l'offre minicloud si elle sort dans pas trop lgtps, sinon j'irai voir ailleurs.

Mais bon c'est décevant de voir une fonctionnalité annoncée en gros sur l'offre et qui ne marche quasiment pas. Ça serait que pour moi, ok, c'est que je suis l'idiot de service, mais là quasiment tout le monde galère ou utilise des bidouilles.

Niaatan
24/03/2010, 09h10
Ton identifiantOVH est bien le nom du userFTP ? Et non pas ton xx#####-ovh

Lecaramel
24/03/2010, 09h08
Voila le contenu de mon authorized_keys2 :

command="/usr/bin/svnserve --root=/homez.301/identifiantOVH/svn --tunnel --tunnel-user=lecaramel",no-port-forwarding,no-agent-forwarding,no-X11-forwarding,no-pty ssh-dss AAAAB3NzaC1kc3MAAAC....euddT+XJA4g== identifiantOVH@ssh1.300gp.ha.ovh.net

et ma commande de checkout:
svn+ssh://identifiantOVH@monhost.fr/test

J'utilise la clef d'un ami qui marche sur son mutu, avec son SVN, on a les mêmes settings.. seul le mutu change...

Niaatan
24/03/2010, 08h59
tu utilises bien cette url pour te connecter à ton dépot :
svn+ssh://userFTP@domain.tld/depot
Avec le nom du dépot directement après le domaine ?

Lecaramel
24/03/2010, 08h53
Moi, mon problème n'est pas la connexion, mon problème est qu'il ne trouve pas le dépot...

Niaatan
23/03/2010, 22h24
J'ai réussi à me connecter en SSH en utilisant une paire de clés, mais en rentrant la clé dans les options de PuTTY. Pageant n'a jamais donné de bons résultats chez moi malgré mes tentatives.

En revanche il semblerait que Pageant permette de stocker la clé privée pour le svn qui n'est alors pas demandée par Tortoise...

Damss
23/03/2010, 21h25
Ben :
- je génère la clé sans passphrase avec puttygen
- mon fichier authorized_key ressemble à ça :

command="/usr/bin/svnserve --root=/homez.43/_mon_login_ftp/svn --tunnel --tunnel-user=mon_username",no-port-forwarding,no-agent-forwarding,no-X11-forwarding,no-pty ssh-dss AAA...blahblahblah...Av68L8hpA== dsa-key-20100323

- je met le fichier private key dans pageant
- je me connecte avec tortoise (j'ai essayé plusieurs variantes... avec le login ftp, avec le nom de l'user...)
- il me demande un mot de passe... > donc ssh fail

par contre avec le mot de passe ftp ça marche, mais bon pas envie de devoir l'entrer à chaque action.

Sinon... je comptais me servir de mon hébergement pro pour mettre tt le nécessaire à un serveur d'intégration: svn + phing + phpunit + xinc... à votre avis c'est jouable ou je perds mon temps ?
(vu qu'apparemment svn est pas accessible par le php, ça limite déjà les possibilités)

Merci d'avance !

Niaatan
23/03/2010, 21h09
A quel moment ça ne marche pas ?
(également : utilises-tu Pageant?)

Sans passphrase ça marche, oui.
Si tu ne génères qu'une clé ça peut surement marcher, c'est un problème que j'avais eu moi : quand je générais la clé svn, il me demandait aussi une clé pour me connecter en ssh... Mais maintenant que j'y repense, c'est surement de la faute de Pageant...

EDIT : GROSSE MEPRISE : j'ai confondu Pageant et PuTTYgen dans mon message, c'est rectifié, mais c'est con n_n

Damss
23/03/2010, 21h08
Et ben... ça marche pas...

Questions:
- si on a pas d'utilité à automatiser l'authentif de l'accès ssh avec putty, on peut générer qu'une clé pour svn et c'est tout ?
- si on met pas de passphrase, c'est censé marcher quand même ?

Niaatan
23/03/2010, 19h23
Les prérequis (pour Windows)
  • PuTTY avec PuTTYgen
  • avoir ouvert Le guide SVNMutu dans un onglet
  • Un serveur OVH Mutualisé de game Pro ou supérieur


La mise en place
  • Ouvrir PuTTYgen, régler les Parameters (SSH-2 DSA 1024)
  • Generate, puis bouger la souris dans la zone blanche pour générer du hasard
  • Mettre un commentaire et/ou une passphrase sur sa clé
  • Copiez/collez le contenu du cadre dans un bloc notes + Save private key
  • Répéter l'opération pour avoir 2 couples de clés pour la suite. Un servira à vous connecter en SSH (je vous recommande la passphrase), l'autre en SVN (d'un côté, je vous recommande aussi la passphrase ;p)

  • Se connecter en SSH sur son hébergement grâce à PuTTY (host mydomain.tld, port 22, type SSH, puis une fois connecté, vos identifiants FTP)
  • mkdir .ssh
  • chmod 700 .ssh
  • vim .ssh/authorized_keys2
  • Touche [i] du clavier pour rentrer en mode insertion (modifier le contenu)
  • Copiez le contenu du bloc notes 1 (qui contient votre accès SSH) et collez le dans PuTTY (clic droit pour coller)
  • Faires un retour à la ligne (la barre d'état doit indiquer : -- INSERTION -- 2,1)
  • Copiez la commande que vous trouverez dans le Guide suivi d'un espace, suivi du contenu du deuxième fichier texte (qui doit commencer par "ssh-dss puis une bouillie de caractères puis votre commentaire)
  • Faites [Echap] pour sortir du mode Insertion, puis taper ":wq" (sans les guillemets) pour enregistrer et quitter le fichier


Utiliser le SSH
  • Ouvrir à nouveau PuTTY, mêmes paramètres que la dernière fois mais allez dans Connection>SSH>Auth et indiquez le chemin de votre clé privée SSH
  • Pensez à enregistrer vos paramètres dans Session (Save)
  • Cliquez sur Open. Si vous avez configuré une passphrase, elle vous sera demandée par le serveur après avoir rentré votre nom d'user FTP
  • Notez que vous n'utilisez plus votre passFTP pour vous connecter. Si vous perdez votre clé privée, il vous suffit de retirer le chemin dans Connection>SSH>Auth pour retrouver l'ancien fonctionnement


Utiliser le SVN
  • Suivez le guide OVH. Je réécrirais cette partie plus tard, mon estomac m'appelle et je lui voue une obéissance absolue.


N'oubliez pas le Guide
  • N'hésitez surtout pas à commenter, critiquer ce guide. J'espère qu'il servira à tous ceux qui ont ramé comme moi. Grâce à OVH, j'en sais plus sur l'authentification par clé sur un serveur Linux ;p pour un PowerUser de Windows comme moi, c'est toujours intéressant.

Lecaramel
23/03/2010, 17h06
Niaatan : ca serait le bienvenue
J'ai eu plusieurs échanges avec le support, on peut pas dire que ça avance.... J'ai un ami chez qui ça marche sur son mutu, pas avec le mien, pourtant à conf qui semble identique.

Un échange avec le support m'a fait comprendre qu'il fallait générer la clef sur le serveur directement et pas via Puttygen.. sauf que Pagent ne reconnait pas la clef... super..

Niaatan
23/03/2010, 16h55
J'ai fini par réussir à faire ce que je voulais, je posterai ce soir de chez moi si je trouve le temps

Damss
23/03/2010, 16h53
Bonjour,

ça déconne à mort chez moi aussi.
L'authentif par clé ne marche pas, je suis obligé de passer par le mot de passe à entrer plusieurs fois à chaque action, ce qui le rend inutilisable.

Merci à OVH de faire le nécessaire pour rendre cette option utilisable, car là apparemment beaucoup de monde galère et le guide semble incomplet.

Pour une fonctionnalité annoncée en gros dans l'offre d'hébergement, c'est pas génial.

Niaatan
10/03/2010, 17h02
J'en suis resté coincé au même point que vous environ...
Et je remercie l'instigateur de cette page, elle est plus claire que le guide officiel n_n

Je ne sais pas comment configurer svn pour utiliser un couple login/pass différent de ceux du master FTP.
Je ne sais pas comment faire le checkout avec Tortoise (quelle URL passer, comment gérer les clés, quels mots de passe taper...)

Si quelqu'un avance, mettre ce post à jour serait un vrai plus n_n
Merci beaucoup

#EDIT : Peut-être que se passer de l'authentification par clé peut m'arranger, si il est possible de configurer un mot de passe pour l'utilisateur du svn plutôt (voire, pour LES utilisateurs)

Lecaramel
06/03/2010, 13h45
Onest pas obliger d'utiliser pour les users SVN des users créés en multiftp (hstoire d'avoir des users créés quelque part sur la machine ?)

Lecaramel
06/03/2010, 11h28
bon, je reviens sur ce problème, j'ai pas le choix, dans 3 semaines, je coupe le dédié...

Si je met en place ma clef pub / privé brut, sans rajouter ce qui est dans le tuto et que je fais un checkout avec mon identifiant FTP/ssh, aucun soucis, ca marche nickel, je checkout, update, commit sans problèmes.

Donc mes clefs sont bonnes à ce niveau la.
Je décide alors de rajouter les lignes correspondant au tutorial pour rajouter le user, etc... et la, j'ai le droit a une demande de password lors du checkout. Est ce qu'il tente de se connecter avec le user SVN en ssh ??

command="/usr/bin/svnserve --root=/homez.310/mon_hebergementFTP/svn --tunnel --tunnel-user=mon_userSVN",no-port-forwarding,no-agent-forwarding,no-X11-forwarding,no-pty ssh-rsa AAAAB3NzaC1yc2EAAAAB

Ma commande de checkout: svn+ssh://mon_userSVN@monsite.fr/homez.310/mon_hebergementFTP/svn/ledepot

Et si je fias un checkout en mettant mon l FTP comme user pour le checkout et dans ma clef, , j'ai une erreur de checkout disant que le dépôt n'existe pas...

Et je préfererai avoir un identifiant par user, vu que je vais avoir 8 users à rajouter...
Bref, les idées sont les bienvenues !

Christuff
01/03/2010, 16h47
est-ce que quelqu'un arrive a utiliser des logins sur leur svn ?

( faire en sorte qu'on se logguer pour avoir accès au svn ) ?

Personnellement j'arrive restreindre l'accès pour tout le monde, mais pas par utilisateur ( si je le fais, je n'arrive pas a me connecter, tortoise ne me propose pas de login / pass a entrer pour utiliser des identifiants )

snyfir
28/02/2010, 16h06
Bonjour,

J'ai créé plusieurs dépots svn sur mon mutualisé 90Plan. Je voulais savoir s'il est possible de specifier pour chaque utilisateur qu'elle depot il a le droit d'avoir accés ? car quand je rajoute une clé pour un utilisateur, celui-ci peux acceder à tout les depots.

De même, est ce que de donner une clé à quelqu'un pour qu'il puisse utiliser le depot est risqué. J'entend par la est-ce qu'il est possible avec cette clé d'aller ailleur que dans les dépot svn.

Merci d'avance pour votre réponse.

huugooo
26/02/2010, 01h17
Pour ceux qui galèrent encore... si un mot de passe vous est demandé :

Ne confondez pas passphrase (lié à la clé publique placée sur le serveur) et le password de votre compte chez ovh.

* Si la passphrase vous est demandée c'est que vous en avez mis une dans la clé, et donc il est normal que le mdp vous soit demandé.

SOLUTION:
Ne PAS indiquer de passphrase pour générer vos clés.


* Si ce qui vous est demandé est le password de cette facon :
"votre_login@90plan.ovh.net's password:"
C'est que ca foire au niveau du fichier authorized_keys2


Pour voir si au moins la config du serveur svn est bonne, effacez le fichier authorized_keys2 et essayez de faire un checkout par exemple avec la commande
"svn checkout svn+ssh://votre_login@90plan.ovh.net/homez.XXX/votre_login/svn/depot_test"
en remplacant XXX par les bons chiffres et 90plan par votre abonnement correspondant.
Le serveur vous demandera le mot de passe 2 fois, si ça marche c'est qu'au moins SVN est ok .

Lecaramel
15/02/2010, 08h11
Bon, si je n'utilise pas ma clef ssh et que je rentre mon pass à la main, ça marche bien. Donc soit j'ai un problème dans ma clef, soit un problème dans les chemins présent dans ma clé publique... je sèche un peu...

Lecaramel
14/02/2010, 21h37
Je remonte le sujet
J'ai exatement le même probleme:
URL 'svn+ssh://xxxxx@yyyyyyy.fr/test' doesn't exist
Donc pas de soucis pour me connecter, j'ai toujours ce retour, y compris en rentrant le chemin complet depuis le serveur... je tourne un peu en rond depuis deux heures en essayant un peu tout...

Ma clé :
command="/usr/bin/svnserve --root=/homez.310/xxxxx/test --tunnel --tunnel-user=userSNV",no-port-forwarding,no-agent-forwarding,no-X11-forwarding,no-pty ssh-dss AAAAB3NzaC1kc3MAAACBAMb........
xxxxx étant bien sur mon identifiant FTP

Merci !

kreatik
30/12/2009, 09h54


Apparemment le pb vient de chez ovh ils sont en train de voir ça...

kreatik
30/12/2009, 08h57
Tu as crypté la clé en RSA ?

kreatik
30/12/2009, 08h13
LOL


Merci, je test ça de suite, par contre je me connect avec putty pour tester et je n'ai rien trouvé pour integrer la clé dans putty...

Et avec zend studio même erreur donc le pb vient bien de la config.

edit : marche pas...

Sébastien Ferry
30/12/2009, 03h37
Citation Envoyé par pascalc
svn: No repository found in 'svn+ssh://monloginftp@monnomdedomaine/depot_test'
Citation Envoyé par kreatik
+1 une idée ?
J'ai rencontré le même problème sur un 90plan.

La bonne solution pour utiliser directement svn+ssh://loginftp@domaine/depot_test est d'utiliser la clé ssh lors de la connexion.

Voilà un fichier ssh-env.bat qui le fait (attention à utiliser / pour séparer les répertoires, ou \\), pour une utilisation en ligne de commande (ça marche aussi avec rapidsvn):
Code:
set SVN_SSH=plink.exe -i D:/ssh/ma-cle-mutu-pour-svn.ppk
PATH=%PATH%;D:\Program Files\Subversion
La mauvaise solution, qui marchait quand même, était d'utiliser le nom du chemin complet: svn+ssh://loginftp@domaine/home/identifiant/svnrepo/depot_test, mais c'était une mauvaise solution.

Après, pour les bonnes et les mauvaises solutions:
JOURNALISTE : Mais au fond quelle différence y a t il entre la bonne et la mauvaise solution ?
RIRES CHASSEUR 3 : Ah j'l'atendais celle là j'l'attendais. Non mais la mauvaise solution bon bah c'est le gars qui a un svn y voit un truc qui bouge y checkout
JOURNALISTE : Et la bonne solution ?
CHASSEUR 3 : La bonne solutionn c'est un gars il a un svn, un svn y voit un truc qui bouge y checkout mais….
CHASSEUR 2 : Ce n'est pas la même chose y'a la bonne solution, et y'a la mauvaise solution, y'a le viandard et y'a le non viandard
CHASSEUR 1 : Bon y faut expliquer tu vois y'a la mauvaise solution, le gars y voit un truc qui bouge y checkout, y checkout. La bonne solution le gars y voit un truc y checkout mais c'est la bonne solution
CHASSEUR 3 : Voilà c'est ça on ne peut pas les confondre

...

kreatik
29/12/2009, 22h43
Citation Envoyé par pascalc
...
svn: No repository found in 'svn+ssh://monloginftp@monnomdedomaine/depot_test'


Une idée du pourquoi?
+1 une idée ?

pascalc
05/12/2009, 05h11
Bonjour,

J'ai suivi ce tuto ainsi que celui d'OVH mais lorsque je fais un checkout, il me dit systématiquement que le dépôt n'existe pas:

svn: No repository found in 'svn+ssh://monloginftp@monnomdedomaine/depot_test'


Une idée du pourquoi?

Merci

itsehi
25/11/2009, 15h57
TextMate

Si vous êtes un utilisateur de TextMate, un moyen facile de créer un projet utilisant un serveur SVN est le suivant :

  1. Allez en ligne de commande pour faire un checkout à la main dans le dossier de votre choix,
  2. Placez vous dans le dossier nouvellement créé, qui portera le nom de votre dépôt, et lancer mate, en ligne de commande, depuis ce dossier.


Cela devrait ressembler à quelque chose comme cela :
Code:
$ svn co svn+ssh://LOGINFTP@DOMAINE/DEPOT
(demande de mot de passe..)
$ cd DEPOT
$ mate .
Si tout ce passe bien, TextMate s'ouvrira avec le panel de gauche ouvert, et vos fichiers provenant du dépôt qui y apparaissent. Il ne vous reste plus qu'à enregistrer l'ensemble dans un nouveau projet.

TextMate gère magnifiquement bien le protocole Subversion. Il est disponible directement via le raccourci Ctrl+Maj+A, où dans le menu Bundles.

itsehi
25/11/2009, 15h42
1. Introduction

Après avoir commandé un hébergement Pro chez OVH, j'ai voulu configurer le serveur SVN mis à ma disposition. Je me suis alors aidé du tutoriel fourni par OVH.. Et je me suis rendu compte que ce dernier était bien loin d'être parfait. De ce fait, j'ai perdu des heures à faire fonctionner ce service correctement. J'espère que ce petit guide vous aidera à gagner du temps !

2. Côté client

Je ne vais pas réinventer la roue, de ce côté là, le guide d'OVH (http://guides.ovh.com/SVNMutu) est amplement suffisant à propos du sujet. Vous pouvez donc vous en inspirer pour créer votre clé publique.

Ce qui peut être intéressant, pour plus de clarté, serait de spécifier soit même le commentaire (-C sous Linux) bien que ce soit loin d'être nécessaire :
Code:
$ ssh-keygen -t dsa -C "mail@votredomaine.tld"
3. Côté serveur

3.1. Création du dépôt

A nouveau, le guide OVH est suffisamment clair pour ne pas devoir répéter la marche à suivre. Vous pouvez donc vous en inspirer.

3.2. Ajout de la clé publique

Ici, ça devient très brouillon de la part d'OVH. Je pense qu'une plus longue explication de leur part m'aurait éviter bien des problèmes.

Comme il est dit, il vous faut d'abord créer un fichier dans lequel on stockera votre clé publique :
Code:
$ mkdir .ssh
$ chmod 700 .ssh
$ vi .ssh/authorized_keys2
Si vous n'êtes pas adepte du monde Linux, rien ne vous empêche de faire ces manipulations, et celles qui suivent avec un client SFTP.

Cette parenthèse faite, vous allez devoir y insérer la ligne suivante :
Code:
command="/usr/bin/svnserve --root=/HOMEXXX/LOGINFTP/svn --tunnel --tunnel-user=USER",no-port-forwarding,no-agent-forwarding,no-X11-forwarding,no-pty VOTRECLE

HOMEXXX correspond au chemin absolu vers le répertoire (expliqué plus bas);
LOGINFTP correspond à votre login FTP principal;
USER correspond au nom d'utilisateur auquel sera associé les changements d'une partie quelconque de la structure du dépôt. La seule restriction est qu'il ne doit PAS contenir d'espace;
VOTRECLE qui correspond à votre clé publique, copiée/collée sur 1 seule ligne !!

Pour le chemin absolu, vous avez plusieurs façon de l'obtenir :
  • Vous êtes connecté en SSH sur le serveur OVH. Vous vous rendez dans le répertoire svn que vous avez créé et vous taper pwd en ligne de commande. Le résultat est ce que vous attendez,
  • Vous être connecté au manager OVH. Vous vous rendez dans la section Mutualisé, Hébergement. Ensuite, dans Synthèse, vous verrez le nom du serveur de données (ex: homez-64). Le chemin à indiquer sera alors /homez.64/LOGINFTP/svn, si vous avez créer le répertoire svn à la racine de votre compte (sinon, veillez à modifier le chemin).

Au final, vous devriez avoir un ligne du genre :
Code:
command="/usr/bin/svnserve --root=/homez.XX/YYYYY/svn --tunnel --tunnel-user=UUUU",no-port-forwarding,no-agent-forwarding,no-X11-forwarding,no-pty ssh-dss AAAAB3NzaC1kc3MAAACBAJGdHduP(...)XUDwFWN9HRygw== CCCC
Le tout sur une ligne !!!

4. Utilisation

Maintenant, il ne reste plus qu'à faire un checkout du nouveau dépôt créé. Pour cela, vous devez utiliser le lien suivant (sous Linux comme sous Windows) :
Code:
svn+ssh://LOGINFTP@DOMAINE/DEPOT

LOGINFTP correspond à votre login FTP principal;
DOMAINE correspond à votre nom de domaine (cerise.fr, jaimelavie.be, etc.);
DEPOT correspond au nom que vous avez spécifié dans la commande svnadmin create lors de la création du dépôt.

5. Plusieurs comptes

Essais en cours.