Aller au contenu

craintdegun

Membres
  • Compteur de contenus

    1
  • Inscription

  • Dernière visite

À propos de craintdegun

craintdegun's Achievements

Newbie

Newbie (1/14)

0

Réputation sur la communauté

  1. 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 ----> 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
×
×
  • 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.