Freenet
le
sous-réseau chiffré et décentralisé
La page officielle de Freenet : http://freenet.sourceforge.net
Traduction française par J.S. Lebacq : http://www.freenet-project.fr.st
Qu'est-que
Freenet ?
Freenet est un réseau "partagé", à l'intérieur
d'Internet, c'est-à-dire qu'il est formé de tous les ordinateurs
connectés à Internet et faisant tourner le logiciel Freenet,
qui se mettent en relation et dialoguent les uns avec les autres en dehors
de toute structure centralisée, sur un schéma proche des
logiciels Napster ou Gnutella
(les outils favoris des amateurs de fichiers MP3).
Mais Freenet va plus loin que Gnutella : il est conçu spécialement
pour assurer l'anonymat et la permanence des informations qui y résident.
Toute censure est impossible car Freenet utilise un système de mémoire-cache
et de routage intelligent, qui dirige les requêtes plus efficacement,
clone automatiquement les informations les plus populaires, et rend la
saturation du réseau presque impossible.
Pour faire partie du réseau Freenet, il suffit juste d'avoir
un ordinateur avec une connexion internet et la possibilité de lancer
un serveur Freenet.
Pourquoi
Freenet est unique ?
(extrait de la FAQ)
- Freenet ne repose sur aucune forme d'administration ou de contrôle
centralisée.
- Il est virtuellement impossible de retirer par la force un document
de Freenet.
- Aussi bien les auteurs que les lecteurs des informations stockées
sur ce système peuvent rester anonymes s'ils le désirent.
- Les informations peuvent être réparties sur le réseau
Freenet de telle manière qu'il soit difficile de déterminer
où elles sont stockées.
- Tout le monde peut publier des informations : il est inutile d'acheter
un nom de domaine, ni même de posséder une connexion internet
permanente.
- La disponibilité de l'information augmente en proportion de
la demande.
- Une information peut se déplacer d'une partie d'Internet où
elle est faiblement consultée pour un autre lieu où la demande
est plus grande.
Installation
1) Installer JAVA
- Freenet est écrit en Java. Vous avez donc besoin d'avoir un
JRE (Java Runtime Environment) installé sur votre machine.
- Si vous n'en avez pas, téléchargez gratuitement chez
Sun le JRE :
- Pour Linux, 1.2, à l'adresse :
http://java.sun.com/products/jdk/1.2/jre/download-linux.html
- Pour Windows, 1.3, à l'adresse :
http://java.sun.com/j2se/1.3/jre/download-windows.html
- Installez le JRE selon les instructions fournies.
Sous
Linux :
- Pour installer le JRE sous Linux, il est nécessaire d'être
"root".
- Le JRE est un "tgz" qu'il suffit de décompresser. Par exemple
:
- Loggez vous "root" sur une console
- Copiez le fichier jre1_2_2-linux-i386.tar.gz dans
le répertoire /usr/local/bin de votre machine
- Tapez :
cd /usr/local/bin
- Décompressez-le en tapant :
tar -zxf jre1_2_2-linux-i386.tar.gz
- Changez son propriétaire en tapant :
chown -R root: jre1.2.2
- Assurez-vous que les droits d'exécution sont corrects
en tapant :
chmod -R a+rX jre1.2.2
- Si vous installez le JRE dans /usr/src/local/bin/jre1.2.2 par exemple,
il faut que la commande "java" soit accessible dans le "path"
système. Le plus simple pour cela est de créer un lien symbolique.
- Créez donc un lien symbolique comme suit (sous root) :
ln -sv /usr/src/local/bin/jre1.2.2/bin/java
/usr/bin/java
Sous
Windows :
Pour Windows, l'installation du JRE est simple et ne nécessite
aucune manipulation particulière (même pas de rebooter !
;-)
2) Installer le logiciel
FREENET
- Récupérez ensuite la dernière version de Freenet
disponible pour votre plate-forme (actuellement la version 0.2), en téléchargeant
:
- Pour Linux :
http://download.sourceforge.net/freenet/freenet-0.2.tgz
- Pour Windows :
http://download.sourceforge.net/freenet/freenet-0.2.zip
Sous
Linux :
Pour installer et faire tourner Freenet sous Linux, il n'est pas
nécessaire d'être "root", à condition que Java soit
déjà installé sur la machine, et que vous puissiez
exécuter un programme Java dans votre répertoire personnel.
Sous
Windows et Linux :
- Créez un répertoire pour Freenet dans votre répertoire
personnel
- Extrayez le contenu de l'archive Freenet (.zip ou .tgz) dans ce répertoire.
C'est tout ! Vous pouvez commencer à utiliser Freenet !
3) L'interface graphique
beta : Freenet Centre
Freenet Centre (FNC) est disponible sur : http://ironbark.bendigo.latrobe.edu.au/FNC/
Les
utilisations possibles
Freenet a pour le moment une interface de type "ligne de commande".
Sous Linux, il s'utilise donc dans une console virtuelle, ou un X-Term.
Sous Windows, il s'utilise depuis une "fenêtre DOS".
Freenet est composé de deux modules:
- Un module "client", qui permet d'envoyer et de récupérer
des fichiers sur Freenet;
- Un module "serveur", qui permet de faire de votre machine un "noeud"
(serveur) du réseau Freenet.
Client et "noeud serveur"
Il n'est pas obligatoire de faire tourner un "serveur" pour pouvoir
utiliser le "client".
Nous vous conseillons d'installer un "noeud serveur" sur votre machine
si :
- Vous avez une connexion permanente ou semi-permanente à Internet
(ligne spécialisée, câble, ADSL...)
- Vous avez une adresse IP fixe ou qui change rarement (une fois par
semaine par exemple)
- Vous laissez tourner votre machine 24h/24 sans l'éteindre
- Vous acceptez de consacrer quelques dizaines ou centaines de Mo de
votre disque dur pour les données hébergées par votre
serveur Freenet. C'est vous qui déterminez l'espace que vous souhaitez
consacrer à ces données sur votre disque. Moins de 50 Mo
n'est pas raisonnable, mais il n'y a pas de maximum ;-)
- Vous souhaitez avoir une participation réellement active à
ce projet
- Vous désirez que vos transferts bénéficient
d'une plus grande confidentialité
Nous vous conseillons de NE PAS faire tourner de "noeud serveur" si
:
- Vous avez une connexion par modem
- Vous avez une adresse IP dynamique qui change fréquemment
- Vous ne restez pas connecté longtemps à Internet
- Vous ne souhaitez qu'envoyer ou récupérer des fichiers,
mais pas en stocker
- Vous ne disposez pas de l'espace disque nécessaire à
un "noeud serveur"
Les
commandes pour insérer et récupérer
Trois commandes permettent d'utiliser Freenet
freenet_server
(Linux) ou fserve
(Windows) permet de lancer le serveur.
freenet_request
(Linux) ou frequest
(Windows) permet de rechercher et récupérer des fichiers.
freenet_insert
(Linux) ou finsert
(Windows) permet d'envoyer des fichiers sur Freenet.
Pour insérer un
fichier sur Freenet
finsert -serverAddress
<server_address> -htl <profondeur> <Nom_de_la_clé_à_créer>
<nom_du_fichier_à_envoyer>
- Adresse du serveur (optionnelle si un noeud tourne sur la machine).
- Défaut: tcp/127.0.0.1:19114 (Pour
que cela fonctionne, il faut donc qu'un noeud Freenet tourne sur "localhost"
(votre propre machine). Si aucun noeud ne tourne sur "localhost", il faut
obligatoirement préciser le nom d'un serveur extérieur connu,
pris par exemple dans la liste disponible sur http://freenet.sourceforge.net/inform.php)
- Format: -serverAddress
<protocole>/<adresse_IP>:<port>
- Nombre maxi de sauts (profondeur de recherche) (optionnel)
- Défaut : 5
- Maxi : 99 (?)
- Format : -htl
<nb_sauts>
- Exemple : frequest
-htl 15
- Nom de la clé à créer (obligatoire)
- Format : <nom_de_la_clé_à_créer>
- Nom du fichier à envoyer (obligatoire)
- Format : <nom_du_fichier_à_envoyer>
Exemple complet :
finsert -serverAddress
tcp/24.64.121.178:19114 -htl 20 /rubrique/sous_rubrique/monfichier.txt
monfichier.txt
Cet exemple veut dire :
- Envoie le fichier "monfichier.txt".
- Sous le nom de clé "/rubrique/sous_rubrique/monfichier.txt".
- Au serveur tcp/24.64.121.178:19114.
- Avec une profondeur de 20 (ce qui veut dire que le premier serveur
contacté retransmettra ce fichier à une chaîne de 19
serveurs supplémentaires).
Pour récupérer
un fichier présent sur Freenet
frequest <nom_de_la_clé_sur_freenet>
-htl <profondeur> <nom_du_fichier_à_sauvegarder_chez_moi>
- Adresse du serveur (optionnelle si un noeud Freenet tourne sur votre
machine. Sinon, il faut obligatoirement préciser le nom d'un serveur
extérieur connu, pris par exemple dans la liste disponible sur http://freenet.sourceforge.net/inform.php)
- Format : -serverAddress
<protocole>/<adresse_IP>:<port>
- Exemple : frequest
-serverAddress tcp/209.163.147.89:19114
- Nombre maxi de sauts (profondeur de recherche) (le paramètre
"htl" est important, notamment pour trouver un fichier un peu "loin" et
un peu "rare". On peut aller jusqu'à 99. Par défaut, htl
est de 5, ce qui ne permet pas toujours de trouver le fichier du premier
coup)
- Défaut : 5
- Maxi : 99 (?)
- Format : -htl
<nb_sauts>
- Exemple : frequest
-htl 15
- Clé à récupérer (obligatoire)
- Format : <nom_clé>
- Exemple :
frequest /crypto/pgp/7.0/beta/windows/PGP_7.0_Beta_Windows.zip
- Nom du fichier à créer localement (facultatif)
- Défaut : StdOut (pas très utile pour du
binaire ;-)
- Exemple :
frequest /crypto/pgp/7.0/beta/windows/PGP_7.0_Beta_Windows.zip
PGP_7.0_Beta_Windows.zip
- (Le 1er paramètre est le nom de la clé,
le 2ème est le nom du
fichier à créer localement)
Exemple complet:
frequest -serverAddress
tcp/209.163.147.89:19114 -htl 15 /crypto/pgp/7.0/beta/windows/PGP_7.0_Beta_Windows.zip
PGP_7.0_Beta_Windows.zip
Cet exemple veut dire :
- Emettre une demande de fichier.
- Vers le serveur tcp/209.163.147.89:19114.
- Rechercher jusqu'à une profondeur de 15 (serveurs au total).
- Le fichier identifié par la clé "/crypto/pgp/7.0/beta/windows/PGP_7.0_Beta_Windows.zip".
- Et le stocker sur le disque dur, dans le répertoire courant,
sous le nom PGP_7.0_Beta_Windows.zip
Les
commandes pour faire tourner un "noeud serveur"
- Editez le fichier "freenet.ini" qui sert à la configuration
du serveur
- Vous n'aurez généralement besoin que de toucher à
deux paramètres :
- diskCache=50000000 indique la taille (en octets) de
l'espace que vous allouez à des données Freenet sur votre
serveur. La valeur par défaut, 50000000, signifie 50 Mo. Si vous
avez de la place, mettez plus ;-)
- informWrite=yes indique si vous voulez que votre serveur
soit "visible" sur la page http://freenet.sourceforge.net/inform.php
quand il tourne. Si vous ne le voulez pas, mettez "no".
Pour lancer votre serveur
Sous
Windows :
1) Ouvrez une fenêtre DOS
2) Mettez-vous dans le répertoire où Freenet est installé,
en tapant par exemple :
CD \freenet
3) Lancez le serveur en tapant :
fserve
4) Le serveur monopolise la session DOS tant qu'il tourne. Laissez-le dans
son coin et oubliez-le ;-)
Sous
Linux :
1) Loggez vous sur une console ou un X-term (pas besoin d'être
"root")
2) Mettez-vous dans le répertoire où Freenet est installé,
en tapant par exemple :
CD freenet
3) Vous pouvez lancer le serveur de 3 manières:
a) En mode "Interactif". Le serveur Freenet monopolisera
cette console tant qu'il tournera. Pour cela, tapez :
./freenet_server
b) En "tache de fond". Le serveur sera lancé sans monopoliser
la console -- mais il s'arrêtera si vous vous déloggez de
cette console ou si vous la fermez. Pour cela, tapez :
./freenet_server
&
c) En "tache de fond nohup" (conseillé). Le serveur
sera lancé sans monopoliser la console, et il ne s'arrêtera
pas, même si vous vous déloggez ou si vous fermez cette console.
Pour cela, tapez :
nohup ./freenet_server
&
d) Pour arrêter un "server node" qui tourne détaché,
tapez "ps ax" pour trouver le n° de processus correspondant au programme
"..../java Freenet.node.Node" et faites simplement un "kill" de ce processus.
Sous
Linux et Windows :
Note: Pour que votre "noeud serveur" Freenet soit "vu" par les autres
noeuds, et qu'il commence à être sollicité (recevoir
des requêtes et des inserts), il faut :
- Soit que votre serveur se "signale" dans http://freenet.sourceforge.net/inform.php
(voir paragraphe sur le fichier ini).
- Soit que vous effectuiez un certain nombre "d'inserts" vous-même
depuis votre serveur, afin que celui-ci devienne visible pour le réseau.
Documentation
Lire la FAQ française
Articles :
NoSpoon : "FreeNet
: le réseau anonyme distribué qui supplantera le Web"
(08/03/2000)
Le Monde : "Un nouveau sous-réseau
crypté et décentralisé garantit la liberté
d'expression" (27/05/2000)
)Transfert : "Freenet
garantit un total anonymat" (30/05/2000)
Libération : "L'anarchie
est au bout du clavier" (23/05/2000)
Mise à jour : juillet 2000
© 1997, 1998, 1999, 2000, pplf 14A0 4A67 0431 2402
684D 6EBA 537F 664D 3F80 0D58
pgpenfrancais@bigfoot.com |