Free Sharing Box

J’ai voulu adapter une PirateBox en Free Sharing Box (Boîte de partage libre).

Le but est de ne pas faire du piratage mais bel et bien de réaliser un espace de partage de ressources libres.

Cette box permet de télécharger des ressources libres mais également d’envoyer des ressources dessus.

Un espace de tchat libre est également disponible.

Voici le tutoriel complet :

Free Sharing Box

 

Difficulté : niveau confirmé

Ce tutoriel est basé sur la PirateBox et la Pédagobox

Objectif

Il s’agit de modifier une borne wifi existante pour en faire un serveur de fichiers wifi autonome basé sur une clé USB.
Vous aurez besoin d’une connexion internet pour accéder aux liens en ligne.

Introduction

L’utilisation d’une telle « boîte » est surtout utile lorsqu’il n’y a pas de connexion wifi et que vous souhaitez faire du partage légal de documents, logiciels libres,…
Pourquoi Free Sharing Box ?
Le terme PirateBox fait très « hacker » ou comme son nom l’indique « pirate ».
Le terme Pedagobox fait trop pédagogique.
Je souhaite réaliser une box accessible à tous et toutes pour tout échange.
Rien ne vous empêche donc de l’utiliser également dans une école 😉

Matériel

Pour réaliser cette FSB (Free Sharing Box), vous aurez besoin de :
  • Un routeur wifi TP-LINK MR3020 (J’ai commandé le mien sur LDLC : lien)
  • Une clé USB
  • Un câble ethernet
  • Une connexion internet (pour télécharger entre-autre le firmware du routeur)
  • Connaître l’adresse IP de votre point d’accès internet
  • Une batterie (optionnel)

Ce tutoriel a été réalisé avec Debian 7

Modification du Firmware

1 – Télécharger le firmware suivant : [wpdm_file id=5]

Lien vers la base de données pour télécharger le firmware qui vous convient :

http://downloads.openwrt.org/snapshots/trunk/ar71xx/

2 – Positionner le bouton du MR3020 sur WISP

3 – Désactiver le wifi de votre ordinateur

4 – Connecter le MR3020 sur votre ordinateur via le port Ethernet

5 – Ouvrir votre navigateur préféré et entrer l’adresse http://192.168.0.254

6 – Entrer les identifiants (par défaut – identifiant: admin et mot de passe : admin)

7 – Naviguer dans le menu de gauche de la page qui s’ouvre jusqu’à System Tool > Firmware Upgrade et sélectionner le firmware que vous avez téléchargé en point 1

8 – Après la mise à jour, le routeur va redémarrer

9 – éteindre et rallumer le boîtier ( au moins 5 secondes)

Configuration du routeur avant l’installation

1 – Dans un terminal, taper

telnet 192.168.1.1

 

2 – Définir un mot de passe pour activer SSH

dans le terminal, taper

passwd

Saisir votre mot de passe 2 fois (vous ne le voyez pas??? c’est normal) (N’oubliez pas votre mot de passe)

3 – Toujours dans le terminal, nous allons, grâce à l’éditeur de texte vi, modifier le fichier de configuration du réseau. Attention, vous devez connaître l’adresse de votre box pour la connection à l’Internet de chez vous (en général, c’est 192.168.1.1 – c’est le cas chez moi avec la box de Belgacom)Dans ce fichier, nous allons donner une adresse à notre nouveau routeur pour ne pas rentrer en conflit avec votre box classique. J’ai choisi 192.168.1.200

Dans le terminal, taper

vi /etc/config/network

Le contenu va s’afficher. Modifier les lignes en gras, rajouter celles qui manquent et n’effacer rien.

config interface 'loopback'

option ifname 'lo'

option proto 'static'

option ipaddr '127.0.0.1'

option netmask '255.0.0.0'

config interface 'lan'

option ifname 'eth0'

option type 'bridge'

option proto 'static'

option ipaddr '192.168.1.200'

option netmask '255.255.255.0'

option gateway '192.168.1.1'

list dns '192.168.1.1'

list dns '8.8.8.8'

 

Pour quitter et enregistrer vi, faire Esc puis 😡 et Enter

4 – Faire une sauvegarde du fichier de config du firewall

cp /etc/config/firewall /etc/config/firewall.bak

5 – Modifier la configuration du firewall

sed -i 's/REJECT/ACCEPT/g' /etc/config/firewall

6 – Activer le Wifi en éditant le fichier wireless

vi /etc/config/wireless

Modifier la ligne 12

option disabled 0 (passer l’option de 1 à 0)

7 – Quitter en tapant exit et débrancher le router de l’alimentation

Activation du routeur

1 – Activer le Wifi de votre ordinateur

2 – Connecter via le port Ethernet (RJ45), le MR3020 à votre routeur internet de votre domicile (ou lieu de connection). Taper dans le terminal

ssh root@192.168.1.XXX (où XXX correspond à votre numéro que vous avez indiqué)

3 – saisir votre mot de passe

4 – Nous allons vérifier qu’Internet fonctionne. Dans le terminal ouvert sur OpenWrt, taper

ping www.google.com

Si tout fonctionne correctement, vous devez avoir à l’écran une série de lignes qui s’affiche. Pour l’arrêter, faire Ctrl + C.

 

Installation de la PirateBox

C’est une étape obligatoire avant de transformer cette dernière en FSB

1 – Assurez-vous que votre clef USB est bien formatée en FAT32.

2 – Branchez là sur le RM3020 (un seul endroit disponible 😉 )

3 – Installer le package PirateBox en tapant dans le terminal

cd /tmp

wget http://piratebox.aod-rpg.de/piratebox_0.5.1_all.ipk

(ou l'adresse où vous avez décompresser cette version : [wpdm_file id=6]
opkg update && opkg install piratebox*

Prenez un café, cela prend un certain temps (tant que les voyants du MR3020 et/ou votre clef clignotent, c’est toujours en activité – je dirais +/- 5 minutes)

4 – une fois que c’est fini, débrancher l’alimentation du MR3020 (10 secondes) et débrancher le câble ethernet.

5 – Rebrancher l’alimentation du MR3020. Attendre que tous les voyants s’arrêtent de clignoter. Le voyant wifi doit aussi s’allumer.

6 – Depuis votre ordinateur, rechercher le réseau wifi « PirateBox – Share Freely »

7 – une fois connecté, essayer de taper par exemple google.com. La page PirateBox va s’afficher.

8 – La PirateBox est installée et opérationnelle.

C’est en anglais et allemand, mais pas d’inquiétude, nous allons la personnaliser.

 

ATTENTION : La PirateBox a réinitialisé l’adresse IP. Elle est revenue sur 192.168.1.1

Pour y accéder à nouveau via le terminal, taper :

ssh root@192.168.1.1

 

Personnalisation

Objectifs

Nous allons personnaliser la PirateBox pour en faire notre FSB. Nous devons donc :

  • Changer le nom de la box (et donc le nom du wifi)
  • Masquer la page du projet PirateBox
  • Franciser la page Web
  • Masquer ou non le tchat
  • Changer l’image de la page d’accueil et le favicon

Nous allons retirer tous les termes « Pirates » qui font un peu peur aux personnes.

Éditer le nom de la PirateBox en Free Sharing Box

piratebox.conf

1 – Éditer le fichier piratebox.conf

vi /opt/piratebox/conf/piratebox.conf

2 – Trouver la ligne suivante

#HOSTNAME ...

# bin/droopy

# conf/hosts

HOST="piratebox.lan"

3 – Modifier « piratebox.lan » en « FreeSharingBox »

4 – Enregistrer le fichier piratebox.conf

 

wireless

1 – Éditer le fichier wireless

vi /etc/config/wireless

2 – Trouver la ligne suivante

option ssid 'piratebox - Share Freely'

3 – Modifier ‘piratebox – Share Freely’ en ‘Free Sharing Box’

4 – Enregistrer le fichier wireless

 

redirect.html

1 – Éditer le fichier redirect.html

vi /opt/piratebox/www/redirect.html

2 – Trouver la ligne suivante

<meta http-equiv="refresh" content="0;url=http://piratebox.lan/" />

3 – Modifier ‘piratebox.lan’ en ‘FSB.lan’

4 – Enregistrer le fichier redirect.html

 

index.html

1 – Éditer le fichier index.html

vi /opt/piratebox/www/index.html

2 – Trouver la ligne suivante

<iframe width='650' frameBorder='0' src='http://piratebox.lan:8080'>Your browser does not supprt Iframes.. If you want to upload something, follow this <a href='http://piratebox.lan:8080'>Link</a></iframe>

3 – Remplacer tous les ‘piratebox.lan:8080’ dans le nom que vous souhaitez ‘FSB.lan:8080’

4 – Enregistrer le fichier index.html

Masquer la page du projet PirateBox

Nous allons cacher la page qui décrit le projet PirateBox (Nous n’allons pas la supprimer car on pourrait y revenir plus tard pour créer d’autres pages, etc…)

C’est cette page que vous pouvez modifier pour changer l’apparence et faire votre adaptation.

1 – Couper le wifi de votre ordinateur

2 – Se connecter à la FSB via le câble Ethernet

3 – Ouvrir le terminal

4 – Se connecter à la box

ssh root@192.168.1.1

5 – Insérer votre mot de passe

6 – Éditer le fichier index.html

vi /opt/piratebox/www/index.html

7 – Rechercher le passage suivant et insérer <!– au début et –> à la fin comme ci-dessous

<div><img src="/piratebox-logo-small.png"/></div>

<div id="message">

<!--

<b>1.</b> Learn more about the project <a href="/.READ.ME.htm" target="_parent"><b>here</b></a>.<p>

-->

<b>1.</b> Naviguez et t&eacutel&eacutecharger les fichiers <a href="/Shared" target="_parent"><b>ici</b></a>.<br>

8 – Enregistrer le fichier

Traduction de la page Web

Nous allons traduire la box pour que ce soit plus compréhensible pour tous et toutes.

1 – Couper le wifi et se connecter en ethernet à la box (si ce n’est pas encore fait)

2 – Ouvrir le terminal et taper

ssh root@192.168.1.1

3 – Entrer votre mot de passe

4 – Éditer le fichier index.html

vi /opt/piratebox/www/index.html

5 – Rechercher le texte suivant à la fin du fichier

</head>

<body>

<center>

<div><img src="/piratebox-logo-small.png"/></div>

<div id="message">

<b>1.</b> Learn more about the project <a href="/.READ.ME.htm" target="_parent"><b>here</b></a>.<p>

<b>2.</b> Click button below to begin sharing.</p>

<b>3.</b> Browse and download files <a href="/Shared" target="_parent"><b>here</b></a>.<br>

<div id="forum_link"></div>

</div>

6 – Modifier en respectant les caractères spéciaux

<div><img src="/piratebox-logo-small.png"/></div>

<div id="message">

<!--

<b>1.</b> Learn more about the project <a href="/.READ.ME.htm" target="_parent"><b>here</b></a>.<p>

-->

<b>1.</b> Naviguez et t&eacutel&eacutecharger les fichiers <a href="/Shared" target="_parent"><b>ici</b></a>.<br>

<div id="forum_link"></div>

<b>2.</b> cliquez sur le bouton ci-dessous pour partager.</p>

</div>

7 – Enregistrer le fichier index.html

Complément
Tout n’est pas encore traduit comme les messages d’erreurs, d’envois, etc…1 – Éditer le fichier droopy

vi /opt/piratebox/bin/droopy

2 – Rechercher les différentes lignes suivantes et corriger

fr = {« maintitle »: u »Envoyer un fichier »,

« submit »: u »Envoyer »,

« sending »: u »Envoi en cours »,

« successtitle »: u »Fichier re&ccedilu »,

« received »: u »Fichier re&ccedilu ! »,

« another »: u »Envoyer un autre fichier. »,

« errortitle »: u »Probl&egraveme »,

« problem »: u »Il y a eu un probl&egraveme ! »,

Il y a d’autres termes. n’hésitez pas à les traduire aux besoins

3 – Enregistrer le fichier droopy

 

Masquer la fenêtre de tchat

Si vous souhaitez la garder, passer cette étape

1 – Éditer le fichier index.html

vi /opt/piratebox/www/index.html

2 – Rechercher les lignes ci-dessous puis placer <!– au début et à la fin –>

<html>

<head>

<LINK rel="shortcut icon" href="/favicon.ico" type="image/x-icon" />

<title>Free Sharing Box</title>

<style type="text/css">

<!--

* {margin: 0; padding: 0;}

body {text-align: left; font-size: 1.0em; font-family: sans-serif;}

.box {padding-top:10px; padding-bottom:0px;}

#message {text-align: left; width: 310px;}

#sending {display: none;}

#wrapform {height: 40px;}

#progress {display: inline; border-collapse: separate; empty-cells: show;

border-spacing: 10px 0; padding: 0; vertical-align: bottom;}

#progress td {height: 10px; width: 13px; background-color: #eee;

border: 1px solid #aaa; padding: 0px;}

#station {font-size: 50%; }

text

--> </style>

<!--Pedagobox.lan-->

3 – Rechercher ensuite à la fin et ajouter comme ci-dessous ( <!– et –> )

<iframe width='650' frameBorder='0' src='http://pedagobox.lan:8080'>Your browser does not supprt Iframes.. If you want to upload something, follow this <a href='http://pedagobox.lan:8080'>Link</a></iframe>

<br />

<!--

<iframe height='400px' width='50%' scrolling='0' frameBorder='0' src='/chat.html'></iframe>

-->

<div id="station"></div>

</center>

</body></html>

4 – Enregistrer le fichier

Modifier le contenu de la fenêtre du chat

Vous pouvez modifier le nom ainsi que le premier message affiché dans le chat pour cela tapez cette commande:
vi /opt/piratebox/conf/piratebox.conf
Puis editez cette ligne dans la rubrique « Configuration for the pure piratebox »:
#Inititiation Chat-Message
CHATMSG= »<date>00:00:00</date>&nbsp;&nbsp;<name>Le nom qui s’affiche avant le message:</name>&nbsp;&nbsp;&nbsp;<data class=’def’>Votre message!</data><br> »

 

Finir la personnalisation en changeant les images et favicons

La PirateBox possède 2 images

  • La première est le gros logo qui s’appelle piratebox-logo-small.png
  • La seconde s’appelle favicon.ico (c’est la petite image qui se met à côté de votre adresse internet)

 

1 – Renommer vos deux images suivants les noms désignés ci-dessus

2 – Sur la clef USB copier les deux images dans le dossier de partage : Shared

3 – Se connecter sur la Box et taper la commande suivante

cp /mnt/usb/Piratebox/Share/piratebox-logo-small.png /opt/piratebox/www

cp /mnt/usb/Piratebox/Shared/favicon.ico /opt/piratebox/www

4 – Éteindre et rallumer votre box sans le câble Ethernet.

5 – Ouvrir un navigateur et vérifier si toutes les modifications sont effectives. Si ce n’est pas le cas, n’hésitez pas à faire les corrections nécessaires.

 

Comment choisir le répertoire de destination des uploads

1 – Créer le répertoire UPLOAD  sur la clef USB :
cd /mnt/usb/PirateBox/Shared/
mkdir Upload
2 – Modifier le fichier piratebox.conf à la ligne 91 à l’aide de vi :
vi /opt/piratebox/conf/piratebox.conf
UPLOADFOLDER= »$FOLDER/Upload »
# UPLOADFOLDER=$FOLDER
3 – Redémarrer la box :
cd /
/etc/init.d/piratebox restart
ou en cas de souci :
cd /
/etc/init.d/piratebox stop
/etc/init.d/piratebox start

Partager la FSB

Il est possible de partager la box entre plusieurs personnes. Le boitier reste au même endroit et les personnes viennent avec leur clef USB personnelle. Il faut simplement copier le contenu de la première clé sur les autres. Ensuite chaque utilisateur ajoutera ses ressources à partager dans le dossier Shared : /Piratebox/Shared/

1 – Copier le contenu

2 – Brancher la nouvelle clef sur la box

3 – Débrancher et rebrancher la box

4 – Si tout fonctionne correctement, la page web va s’afficher

ATTENTION

Les ressources mises à disposition doivent toujours être copiées dans le dossier Shared pour être visibles.

La clef USB peut donc être utiliser pour un autre usage tant que vous enregistrez dans d’autres répertoires extérieurs à Piratebox

 

Reset du MR3020

http://blog.nicolashachet.com/fonctionnement-du-web/reset-du-mr3020/

Voici la procédure pour faire un reset (hardreset) du routeur mr3020. C’est une astuce précisé par Jean-Pierre dans les commentaires du post sur l’installation d’une PirateBox. Cette procédure permet de remettre les réglages usines du MR3020 :

  • 1. Couper l’alimentation du routeur et mettre le sélecteur de mode sur AP
  • 2. Maintenir appuyé le bouton WPS (LED)
  • 3. Allumer le MR3020 tout en maintenant le bouton appuyé : la diode WPS va s’allumer une fois et s’éteindre
  • 4. Peu après la diode WPS commence à clignoter lentement (2 fois par seconde) : mettez immédiatement le sélecteur de mode en 3G
  • 5. La diode WPS clignote maintenant très vite. Relâchez la diode.
  • 6. Accédez au MR3020 par un telnet sur l’IP 192.168.1.1 si vous avez encore la ROM originale, par un ssh à son adresse IP (configurée par vos soins) si vous êtes déjà sous open-wrt.
  • 7. Une fois connecté, montez le dossier /overlay pour y faire le ménage :

    mount_root

  • 8. Supprimer le dossier /overlay (c’est le nettoyage de son contenu) :

    rm -rf /overlay/*

  • 9. Quittez votre session ssh ou telnet. Remettre le sélecteur de mode sur WISP. Éteindre et rallumer le MR3020.

Votre routeur MR3020 est désormais en mode usine.
Merci à Jean-Pierre pour cet article.

2 commentaires

  1. Bonjour,
    J’ai réussi à monter la pirate box mais bloque lamentablement au moment de la personnaliser…
    Quand je tape sur putty : vi /opt/piratebox/conf/piratebox.conf et entrée…. Rien ne se passe, enfin si : plusieurs lignes vides, zéro texte.
    Auriez-vous une idée pour m’aider?

    1. Bonjour,
      êtes-vous connectée en ssh? Ou encore vous pouvez vérifier le fichier qui est directement sur la clé usb ou hdd.
      Si pas, regarder le titre : Traduction de la page Web – Vous passez certainement une étape. Il ne faut pas que le wifi soit activé. il faut se connecter en rj45.
      Vous pouvez me contacter via le mail : contact@denis-sylvain.be

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *