PirateBox TP-Link WR1043ND v2.0

De Centre de Ressources Numériques - Labomedia
Aller à : navigation, rechercher

Le routeur TP-Link WR1043ND v2.0 est celui à 300Mbps.

Cette page ne présente pas (encore) la procédure complète d'installation d'une PirateBox sur un routeur neuf avec le système d'origine, mais des étapes à partir d'une installation de PirateBox qui a échouée mais avec OpenWRT dessus. Une procédure plus complète est disponible ici pour le TP-Link MR3020

Mode sans échec

Il est possible d'accéder au routeur en telnet à l'adresse 192.168.1.1, mais, pour cela, il faut que votre ordinateur ai une adresse IP en 192.168.1.xxx

Si le routeur est en DHCP, il vous donnera une adresse dans la même classe. Sinon, il vous faudra attribuer une adresse static à votre ordi à la main. Par exemple, 192.168.1.2 : sur Ubuntu : clic sur icône Wifi > Modification des connexions > Ethernet Automatique > Modifier... > Paramètres IPv4 > Méthode > Manuel > Ajouter > Adresse : 192.168.1.2 Masque de Réseau : 255.255.255.0 > Enregistrer.

Ceci fait, il vous faut brancher votre ordinateur au routeur avec un câble ethernet dans

>> la prise bleue (Internet) et donc PAS l'une des jaunes (Ethernet) <<

Si aucun mot de passe n'a déjà été donné à OpenWRT

Le système sera accessible sans étape supplémentaire.

Si un mot de passe a déjà été donné à OpenWRT

Une fois qu'un mot de passe a été attribué à OpenWRT, il n'est plus possible d'y avoir accès en telnet aussi facilement qu'exposé ci-dessus.

Il est toutefois possible de demander au routeur de démarrer en mode sans échec en maintenant appuyé le bouton WPS/Reset à la mise sous tension. Au bout de 15 secondes, le voyant en forme d'étoile en façade va se mettre à clignoter. Vous pouvez alors relâcher le bouton reset. Au bout de 2 secondes, le voyant devrait alors se mettre à clignoter plus rapidement. C'est l'indication que vous êtes en mode sans échec et que le système attend une connexion en telnet à l'adresse 192.168.1.1

Connexion en telnet

Sur Ubuntu, il suffit d'ouvrir une console et taper :

telnet 192.168.1.1

La console devrait alors afficher :

Trying 192.168.1.1...
Connected to 192.168.1.1.
Escape character is '^]'.

 === IMPORTANT ============================
  Use 'passwd' to set your login password
  this will disable telnet and enable SSH
 ------------------------------------------


BusyBox v1.23.2 (2015-07-25 15:09:46 CEST) built-in shell (ash)

  _______                     ________        __
 |       |.-----.-----.-----.|  |  |  |.----.|  |_
 |   -   ||  _  |  -__|     ||  |  |  ||   _||   _|
 |_______||   __|_____|__|__||________||__|  |____|
          |__| W I R E L E S S   F R E E D O M
 -----------------------------------------------------
 CHAOS CALMER (15.05, r46767)
 -----------------------------------------------------
  * 1 1/2 oz Gin            Shake with a glassful
  * 1/4 oz Triple Sec       of broken ice and pour
  * 3/4 oz Lime Juice       unstrained into a goblet.
  * 1 1/2 oz Orange Juice
  * 1 tsp. Grenadine Syrup
 -----------------------------------------------------
================= FAILSAFE MODE active ================
special commands:
* firstboot          reset settings to factory defaults
* mount_root     mount root-partition with config files

after mount_root:
* passwd                         change root's password
* /etc/config               directory with config files

for more help see:
http://wiki.openwrt.org/doc/howto/generic.failsafe
=======================================================

root@(none):/#

R.A.Z.

Une fois connecté en telnet au routeur, il est nécessaire de monter la partition root pour y avoir accès en écriture afin d'en changer le mot de passe et la configuration réseau (entre autre).

mount_root

(la commande firstboot, censée remettre tous les paramètres par défaut, ne semble pas fonctionner chez moi (avec ou sans la partition root montée))

Pour effacer tous les paquets et autres fichiers copiés après l'installation :

mtd -r erase rootfs_data

Pour attribuer un nouveau mot de passe :

passwd

(à noter qu'il est déjà possible à cette étape de modifier la configuration réseau via le fichier /etc/config/network) :

Connexion en SSH

Une fois qu'un mot de passe est attribué, il est possible d'avoir accès à OpenWRT en SSH.

Pour cela, il est nécessaire de changer le câble de prise RJ45 sur le routeur et donc de :

>> le retirer de la prise bleue (Internet) et de le mettre dans une des quatre prises jaune (Ethernet) <<

puis de taper :

ssh root@192.168.1.1

On vous demandera de confirmer la connexion et il faudra écrire en toute lettre : yes, et valider.

Puis, il faudra entrer le mot de passe renseigné à l'étape précédente.

BusyBox v1.23.2 (2015-07-25 15:09:46 CEST) built-in shell (ash)

  _______                     ________        __
 |       |.-----.-----.-----.|  |  |  |.----.|  |_
 |   -   ||  _  |  -__|     ||  |  |  ||   _||   _|
 |_______||   __|_____|__|__||________||__|  |____|
          |__| W I R E L E S S   F R E E D O M
 -----------------------------------------------------
 CHAOS CALMER (15.05, r46767)
 -----------------------------------------------------
  * 1 1/2 oz Gin            Shake with a glassful
  * 1/4 oz Triple Sec       of broken ice and pour
  * 3/4 oz Lime Juice       unstrained into a goblet.
  * 1 1/2 oz Orange Juice
  * 1 tsp. Grenadine Syrup
 -----------------------------------------------------
root@OpenWrt:~#

Modification des paramètres réseau

Aucune clef USB n'étant reconnue jusque là, pour faire des mises à jour et installer la config PirateBox j'avais besoin que le routeur soit connecté à Internet (derrière une FreeBox Revolution) et d'y avoir accès en SSH.

Pour changer la config réseau, il faut modifier le fichier network :

vi /etc/config/network

Pour utiliser vi, je vous renvoie à cette page de Linux-France.

Pour info, j'ai donné l'adresse IP statique 192.168.0.69 au routeur, sachant que l'adresse IP de la FreeBox est 192.168.0.254

Et voici mon fichier network (pour OpenWRT 15.05):

config interface 'loopback'
        option ifname 'lo'
        option proto 'static'
        option ipaddr '127.0.0.1'
        option netmask '255.0.0.0'

config globals 'globals'
        option ula_prefix 'fdbd:25ff:84d3::/48'

config interface 'lan'
        option ifname 'eth1'
        option force_link '1'
        option type 'bridge'
        option proto 'static'
        option ipaddr '192.168.1.1'
        option netmask '255.255.255.0'
        option gateway '192.168.0.254'
        list dns '192.168.0.254'
        list dns '8.8.8.8'

config interface 'wan'                         
        option ifname 'eth0'                   
        option proto 'static'                  
                                               
config interface 'wan6'                        
        option ifname 'eth0'                   
        option proto 'dhcpv6'                  
                                               
config switch                                  
        option name 'switch0'         
        option reset '1'              
        option enable_vlan '1'        
                                      
config switch_vlan                    
        option device 'switch0'       
        option vlan '1'               
        option ports '0 1 2 3 4'      
                                      
config switch_vlan              
        option device 'switch0' 
        option vlan '2'         
        option ports '5 6'

Ceci fait, j'ai éteins le routeur puis je l'ai branché en ethernet à la FreeBox (toujours à partir d'une des quatre prises jaune (Ethernet)). Je l'ai rallumé et pu y avoir accès en Wifi (via la FreeBox) avec la commande :

 ssh root@192.168.0.69

Un

ping 8.8.8.8

me confirma que j'avais bien accès au Net.

Sysupgrade : passage d'OpenWRT 12.09 à 15.05

Ne sachant pas pourquoi l'installation initiale de la PirateBox avait échoué, j'ai choisi d'upgragder le système pour sa version stable la plus récente.

J'ai créé un répertoire à la racine pour télécharger le .bin de la dernière version :

mkdir /toto

Je m'y suis placé :

cd ../toto

Et j'ai téléchargé le (bon (v2)) binaire (la liste exhaustive est disponible ici, il faut prendre une version 'sysupgrade', et passer par du http et non du https) :

wget http://downloads.openwrt.org/chaos_calmer/15.05/xxxxxxxxxxxxx (le site est down au moment où j'écris)

Et j'ai lancé la mise à niveau :

sysupgrade openwrt-ar71xx-generic-tl-wr1043nd-v2-xxxxxxxxxxxx