Aller au contenu

Compiler Et Installer Tor


Amsonia

Messages recommandés

Bonjour,

Je souhaite opérer un nœud TOR sur mon Syno. Je viens de faire une mais, en attendant (ou à côté, c'est comme on veut :P), je tente l'install à la mano.

TOR est présent dans IPKG mais dans une version obsolète : la 0.2.2.32-1 et l'on est en 0.2.2.35 (lire les releases notes).

Bref, je suis ce tuto => http://malexmave.tum...79/synology-tor

Je bloque à l'exécution de ./configure qui m'a dit qu'il ne trouvait pas le chemin de 'libevent'.

J'ai donc fait un ipkg install libevent et relancé le ./configure et là ça me dit ça :


checking whether we need extra options to link libevent... configure: error: Found linkable libevent in (system), but it does not seem to run, even with -R. Maybe specify another using --with-libevent-dir}

J'ai ensuite fait un
which libevent

mais ça ne ressort rien.

Une idée ?

Merci :-)

Lien vers le commentaire
Partager sur d’autres sites

Hmm ok j'ai ça qui ressort dans /opt/lib/

lrwxrwxrwx  1 root root	  21 May 16 01:15 libevent-2.0.so.5 -> libevent-2.0.so.5.1.6

-rwxr-xr-x  1 root root  294692 Apr 17 20:54 libevent-2.0.so.5.1.6

lrwxrwxrwx  1 root root	  21 May 16 01:15 libevent.so -> libevent-2.0.so.5.1.6

lrwxrwxrwx  1 root root	  26 May 16 01:15 libevent_core-2.0.so.5 -> libevent_core-2.0.so.5.1.6

-rwxr-xr-x  1 root root  185756 Apr 17 20:54 libevent_core-2.0.so.5.1.6

lrwxrwxrwx  1 root root	  26 May 16 01:15 libevent_core.so -> libevent_core-2.0.so.5.1.6

lrwxrwxrwx  1 root root	  27 May 16 01:15 libevent_extra-2.0.so.5 -> libevent_extra-2.0.so.5.1.6

-rwxr-xr-x  1 root root  129956 Apr 17 20:54 libevent_extra-2.0.so.5.1.6

lrwxrwxrwx  1 root root	  27 May 16 01:15 libevent_extra.so -> libevent_extra-2.0.so.5.1.6

lrwxrwxrwx  1 root root	  29 May 16 01:15 libevent_openssl-2.0.so.5 -> libevent_openssl-2.0.so.5.1.6

-rwxr-xr-x  1 root root   23988 Apr 17 20:54 libevent_openssl-2.0.so.5.1.6

lrwxrwxrwx  1 root root	  29 May 16 01:15 libevent_openssl.so -> libevent_openssl-2.0.so.5.1.6

lrwxrwxrwx  1 root root	  30 May 16 01:15 libevent_pthreads-2.0.so.5 -> libevent_pthreads-2.0.so.5.1.6

-rwxr-xr-x  1 root root   11320 Apr 17 20:54 libevent_pthreads-2.0.so.5.1.6

lrwxrwxrwx  1 root root	  30 May 16 01:15 libevent_pthreads.so -> libevent_pthreads-2.0.so.5.1.6
Devrais-je me contenter de lancer ./configure de la manière suivante ?
./configure --with-libevent-dir=../../opt/lib/[/code]

Lien vers le commentaire
Partager sur d’autres sites

Tu devrais surtout cross compiler ....

Il faut que tu te montes un environnement de cross compilation sur une machine (qui peut etre une VM) sous Linux en utilisant la gpl et la toolschain fournit par syno. Tu auras moins de soucis il faudra ensuite préciser dans les paramètres du .configure que c'est une cross compilation.

Il y a des articles sur le forum et sur le site de syno à ce ce sujet

Lien vers le commentaire
Partager sur d’autres sites

Bon ok les gars, j'y suis parvenu o/

Le tuto était clair, je l'ai suivi même si j'ai voulu jouer les cadors à un moment en ne réfléchissant pas…

J'ai voulu installer wget-ssl, ça me dit qu'il y a conflit avec wget alors, comme un con, je remove wget ^^

Bref, ça tourne. MAIS j'ai vraiment du me planter quelque part parce que ça ne me sort pas de binaire ou alors l'executable semble être qqpart dans un sous-dossier des sources.

Dans le tuto le gars dit que Tor aurait du créer un dossier dans /usr/local/etc/tor/torrc. Ça ne l'avait pas fait chez moi.

De même pour la création automatique du fichier de log dans /usr/local/log/tor/notice.log

Je vais me pencher sur SynoCommunity. je serai sacrément fier de pouvoir réellement contribuer à qqchose comme ça :-)

Si, comme le dit Diaoul, il suffit de savoir lire et écrire en anglais, ça devrait pouvoir être possible.

Pour l'instant je laisse tourner mon truc quelques jours, histoire de voir.

J'ai justement un mac que je voudrais passer sous Ubuntu, ce sera ma machine de *vraies* geekeries :)

Sinon, maintenant que j'ai pas mal de choses qui tournent sur mon nas, j'aimerais de plus en plus pouvoir garder un œil dessus alors je vais voir comment faire interagir le nas avec ce logiciel "magique" qu'est GeekTool.

La première étape va être de pouvoir me connecter en SSH via les clefs pour ne plus avoir à taper mon mdp à chaque fois…

Lien vers le commentaire
Partager sur d’autres sites

Une virtual machine serait plus adaptée à la cross compilation. Premièrement parce que c'est mieux d'avoir une distrib standard type Debian et deuxièmement parce que c'est facile à ejecter en cas de pépin et tu perds pas tout ton OS ;)

Perso j'utilise VirtualBox sur windows comme linux avec un disque iSCSI sur mon Syno pour la souplesse :)

Debian squeeze c'est parfait.

Lien vers le commentaire
Partager sur d’autres sites

  • 1 an après...

Bonjour,

Faisant tourner un noeud Tor sur un DS211j, et vu que les packages IPKG ne suivent pas les dernières versions des sources du projet Tor, je me suis lancé pour compiler Tor par moi-même, beaucoup de galères, mais vu que j'ai réussi : je viens donc donner quelques trucs

c'est pas forcément le plus propre, mais ça compile

pour ceux qui veulent connaitre Tor , je vous renvoie vers Wikipedia : Tor, comment le configurer : la FAQ de Tor ou quels sont les risques à faire noeud de sortie : l'association nos oignons.

je n'explique ici que la façon de compiler

2 façons :

----> le mode cross compilation (depuis une VM Ubuntu)

sachant que j'ai un Marvell Kirkwood mv6281 (dixit cette page), que mon systeme tourne sous un linux 2.6.32.12 (uname -r sur mon NAS), il me faut donc la Tool Chain suivante pour DSM4.3 avec mon proc : gcc421_glibc25_88f6281-GPL.tgz

tar xvzf gcc421_glibc25_88f6281-GPL.tgz –C /usr/local/

et hop, c'est installé

ensuite, on récupère les dernières sources de
* libevent
* openssl
* Zlib

* Tor

il va falloir compiler pour chaque source

positionnement de l’environnement

export CFLAGS="-I/usr/local/arm-none-linux-gnueabi/include"
export LDFLAGS="-L/usr/local/arm-none-linux-gnueabi/lib"
export RANLIB=/usr/local/arm-none-linux-gnueabi/bin/arm-none-linux-gnueabi-ranlib
export LD=/usr/local/arm-none-linux-gnueabi/bin/arm-none-linux-gnueabi-ld
export CC=/usr/local/arm-none-linux-gnueabi/bin/arm-none-linux-gnueabi-gcc
export LD_LIBRARY_PATH=/usr/local/arm-none-linux-gnueabi/lib
export AR=/usr/local/arm-none-linux-gnueabi/bin/arm-none-linux-gnueabi-ar
export ARCH=arm

une subtilité indique que j'ai du m'y reprendre

on commence par la libevent

./configure --prefix=/usr/local/arm-none-linux-gnueabi/libevent --host=arm-none-linux
make ARCH=arm CROSS_COMPILE=/usr/local/arm-none-linux-gnueabi/bin/arm-none-linux-gnueabi-
make install

on passe à openssl

./Configure --prefix=/usr/local/arm-none-linux-gnueabi/openssl dist threads -D_REENTRANT [subtilité, tor veut du multithreading et certains systèmes ne le font pas par défaut, faut donc passer de l'option via threads cf le fichier INSTALL d'openssl]
make CC=$CC AR="$AR r" RANLIB=$RANLIB
make install

on continue avec la zlib

./configure --prefix=/usr/local/arm-none-linux-gnueabi/zlib
make CC=$CC AR=$AR RANLIB=$RANLIB [subtilité, faut pas mettre le "$AR r" ce coup-ci car le make l'inclut déjà]
make install

c'est bon, on a tout : passons à la compilation du nœud tor

./configure --prefix=/usr/local/arm-none-linux-gnueabi/tor --host=arm-none-linux --with-libevent-dir=/usr/local/arm-none-linux-gnueabi/libevent --with-openssl-dir=/usr/local/arm-none-linux-gnueabi/openssl --with-zlib-dir=/usr/local/arm-none-linux-gnueabi/zlib
make CC=$CC
make install

victoire, on vient de réussir une cross compilation
si on veut, on peut alors prendre les fichiers obtenus et les mettre sur le NAS
on a dans

./etc/tor/torrc.sample
./bin/torify
./bin/tor
./bin/tor-gencert
./bin/tor-resolve
./share/tor/geoip6
./share/tor/geoip
./share/man/tor.1
./share/man/tor-gencert.1
./share/man/tor-resolve.1
./share/man/torify.1
./share/doc/tor-gencert.html
./share/doc/tor.html
./share/doc/torify.html
./share/doc/tor-resolve.html


----> le mode compilation directement sur le NAS

c'est plus simple mais quand ça marche

subtilité : pour compiler Tor correctement, il faut la libssp (cf ce joli bug) qui n'est plus fourni avec GCC dans la version 4.2.3.1 qui est disponible via IPKG http://ipkg.nslu2-linux.org/feeds/optware/cs08q1armel/

on peut constater qu'il y a d'autres répertoires

cs05q1armel
cs05q3armel
cs06q3armel

quézaco ?
à priori, c'est des versions différentes de glib et autres gcc mais toujours pour ma version de processeur
cs05q1armel --> glibc 2.3.4, gcc 3.4.3, libstdc++ 6.0.3
cs05q3armel --> glibc 2.3.6, gcc 3.4.4, libstdc++ 6.0.3
cs06q3armel --> glibc 2.3.6, gcc 4.1.2, libstdc++ 6.0.8 (not a full feed)
cs08q1armel --> glibc 2.5, gcc 4.2.3, libstdc++ 6.0.9

je suis donc allé dans cs06q3armel et j'ai récupéré gcc_4.1.2-5_arm.ipk
désinstallation de mon gcc 4.2.3, installation via ipkg en mode local du gcc 4.1.2

ensuite, ça ressemble un peu à la première méthode

on récupère les sources de
* libevent
* openssl
* Zlib

* Tor

libevent

./configure

make

make verify   --> histoire de vérifier, mais c'est pas obligatoire

sudo make install

openssl

./config

make

make test --> histoire de vérifier, mais c'est pas obligatoire

make install

zlib

./configure
make test --> histoire de vérifier, mais c'est pas obligatoire

make install

tor

./configure --with-openssl-dir=/opt/lib
make
make install

si au lancement de Tor, on voit dans les logs

We were compiled with headers from version 2.0.21-stable of Libevent, but we're using a Libevent library that says it's version 2.0.15-stable.

c'est juste que notre librairie libevent est dans /usr/local/lib/ mais il existe aussi du libevent dans /lib (et ça, c'est de l'installation lié au système synology)
j'ai juste renommé libevent-2.0.so.5.1.3 et libevent-2.0.so.5 -> libevent-2.0.so.5.1.3

et j'ai mis à la place mes librairies libevent-2.0.so.5.1.9 et libevent-2.0.so.5 -> libevent-2.0.so.5.1.9

Tor v0.2.4.20 running on Linux with Libevent 2.0.21-stable and OpenSSL 1.0.1f.

conseil : créer un user spécifique avec des droits restreints sur le syno dont le seul but est juste de faire tourner le noeud

Lien vers le commentaire
Partager sur d’autres sites

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.