bonjour.
j'utilise tortoiseSvn sous windows, et je m'en sert notamment avec l'aide d'un tunnel pour récupérer des versions d'un projet de développement qui possède un repository au sein d'un réseau local. En faisant un tunnel avec putty, j'arrive à utiliser le proxy qui se trouve dans le réseau local, et donc en réglant les paramètres proxy dans tortoise, je peux récupérer mes sources.
J'ai essayé le meme système sous ubuntu. Je crée mon tunnel, et il fonctionne (je règle les paramètres proxy de mon navigateur pour passer par celui de mon réseau local et cela fonctionne).
Là ou intervient le problème est lorsque je veux utiliser subversion pour récupérer le repository. après avoir fait le tunnel (qui fonctionne avec firefox donc) je lance svn, mais j'ai l'impression qu'il ne passe pas par le proxy puisqu'il n'arrive pas à résoudre les noms d'hote locaux (alors que firefox y arrive).
J'ai donc fait un export htt_proxy="http://localhost:3333" où 3333 est le port forwardé sur le proxy distant (même réglage que dans firefox).
Mais cela ne marche pas.
Je pense donc que svn ne passe pas par le proxy, et je ne vois pas comment faire pour récupérer les sources de mon projet.
Pourtant cela doit être faisable dans la mesure ou j'arrive à le faire sous Windows.
Merci
Sous Ubuntu il y a un autre endroit pour régler le proxy... je ne sais pas pourquoi mais la dernière fois que j'ai du configurer un proxy, la variable ne fonctionnait pas alors que le truc d'ubuntu (de gnome en fait) fonctionne.
Bref, Système > Préférences > Serveur mandataire
iscario : tu es sûr d'avoir besoin de tout se bordel pour te connecter à la machine qui héberge le dépot svn ?
(je ne vois pas pourquoi il y a un proxy dans l'histoire perso)
si tu as un moyen simple de le faire je veux bien...
Le proxy n'est peut-être pas nécessaire en effet pour récupérer les sources, par contre j'en ai besoin pour le développement à proprement parler, puisqu'il y a une connexion à une bdd mysql, et j'ai besoin d'avoir accès à phpmyadmin et donc je passe par le proxy interne au réseau local.
Cela dit je n'en ai peut etre pas besion pour récupérer uniquement les sources de dev, mais comment est-ce que je peux faire différement ?
Jackass >> je ne suis pas sûr que ca intervienne dans les paramètres du terminal ca ![]()
"le proxy interne"
ça n'a pas de sens pour moi ça...
Quand tu veux passer d'internet à un réseau local, tu passes par une passerelle (gateway), pas par un proxy. Çe genre de saut, ça peut se configurer au moins pour ssh, et donc tout ce qui en découle (scp, svn, cie. )
Pour info, voici comment j'accède au wiki des élèves de l'ens Lyon (sur le réseau de la résidence : http://flip.residence/wiki ) depuis l'extérieur :
1) dans un terminal, je mets en place le tunnel :
$ ssh -L 8080:flip.residence:80 ssh.ens-lyon.fr cat -
2) j'entre l'adresse en fonction :
$ konqueror http://localhost/wiki/
J'ai l'impression que dans svn, les options ne s'appellent pas comme ca :
http://svnbook.red-bean.com/en/1.5/svn-book.html#svn.advanced.confarea.opts.servers
par "proxy interne" j'entendais proxy à l'interieur du réseau local. Ce n'était pas explicite je l'accorde
En fait j'ai l'habitude de me connecter sur le proxy via la passerelle comme ca j'ai accès à tous les serveur web du réseau local vu que c'est le proxy qui fait la résolution des noms pour moi.
Et comme il y a une option "utiliser proxy" dans TortoiseSvn pour Windows, je me dit que j'étais obligé de passer par le proxy sous linux aussi.
Sauf que ca ne semble pas marcher.
Et le man ne m'aide pas trop...
En tout cas, d'après le lien de godrik, il semble que je doive utiliser l'option "http-proxy-host".
Je testerai ca à l'occasion, merci.
"par proxy interne j'entendais proxy à l'interieur du réseau local. Ce n'était pas explicite je l'accorde"
c'est bien ce que j'ai fini par comprendre... ce que je ne comprends pas, c'est pourquoi utiliser un proxy alors que tu es dans le réseau local.
"vu que c'est le proxy qui fait la résolution des noms pour moi"
la passerelle fait ça tout aussi bien. Sur mon exemple, je suis incapable de résoudre "flip.residence" et pourtant ça marche très bien (parce que c'est la passerelle, ssh.ens-lyon.fr, qui résoud le nom flip.residence, pas ma machine).
Question au passage, tu peux accéder à la machine qui a le dépôt svn via une série de ssh ?
Oui mon explication sur les serveurs de noms ne tient pas la route ![]()
En fait, en me connectant sur le proxy, je ne suis pas obligé de rediriger plusieurs ports vers les différents serveurs web du réseau local.
"Question au passage, tu peux accéder à la machine qui a le dépôt svn via une série de ssh ? "
oui tout à fait.
Donc question bonus : combien de ssh fais-tu ? deux ?
oui, 2 effectivement. Un par la passerelle pour avoir un accès au réseau local, un autre pour me connecter à la machine que je veux atteindre au final.
Du coup tu as deux solutions qui s'offrent à toi :
1) le tunnel :
$ ssh -L 2222:machine.finale:22 passerelle cat -
$ svn co svn+ssh://localhost:2222/var/svn/projet
J'aime pas trop parce qu'il faut relance le tunnel (1ère commande) à chaque fois
2) la configuration futée de ssh.
Dans ton .ssh/config, tu mets un truc du genre :
«
Host *.rezo
User login-local
ProxyCommand ssh login-passerelle@passerelle "tcpconnect $(basename %h .rezo) %p"
»
Avec va, un :
$ ssh puic.rezo
t'envoie directement sur la machine puic du réseau local rezo.
Du coup, tu peux faire :
$ svn co svn+ssh://machine-finale.rezo/var/svn/projet
L'inconvénient, c'est que ça ne marche que pour ssh (et scp, cvs/svn over ssh).
alors j'ai quelques quesitons dans ce cas^^ :
à quoi sert le cat - ![]()
est-ce l'équivalent de -N -f pour les options de ssh
le "svn+ssh" c'est une combinaison propre à svn ou c'est relatif à unix
Et quand je teste la première solution, j'obtiens "could not resolve localhost" (pourtant on retrouve bien un localhost dans /etc/network/interfaces ). Qu'est-ce que cela signifie
en tout cas merci pour les réponses.
svn+ssh est relatif a svn.
svn+ssh://machine-finale.rezo/var/svn/projet veut dire: le repository est dans le repertoire /var/svn/projet de la machine machine-finale.rezo accessible pas ssh
"could not resolve localhost"
il y a eu un long thread sur la debian list il y a peu à ce sujet. Tu pourrais mettre ton /etc/hosts sur http://pastebin.com que je vérifie s'il est ok.
alors, de mémoire, car je n'ai pas le pc sous la main, le /etc/hosts contenait :
127.0.0.1 Localhost
127.0.0.1 Nom de mon pc
Je vérifie ce soir à l'occasion (je suis pas sûr de la syntaxe) pour confirmer (ou infirmer^^)
Si c'est ça, c'est très incomplet (et le message d'erreur est "explicapable" même si j'avoue qu'après avoir débattu avec deux personnes sur le sujet, l'explication n'est pas vraiment fondée à mes yeux).
Bref, dès que tu peux, mets le fichier complet quelque part.
voila :
http://pastebin.com/mffccffe
Bingo !
Mets plutot :
127.0.0.1 localhost nom_machine
::1 localhost
PS : fais une backup du fichier dans l'état courant au cas où le 127.0.1.1 te servirai vraiment. ![]()
mmm, tu aurais une explication sur pourquoi ca deconne (ou un lien sur le thread chez debian) ?