Projet : Transformer mon routeur Wanadoo en serveur WEB

Salut à tous,

Il y a quelques jours, j’ai découverts un truc marrant. Mon routeur Wanadoo (DW-B200) possède un système d’exploitation linux!

Pour ce que ce que ça intéresse, on peut y accéder de la manière suivante :
On tape “http://10.0.0.1/cgi-bin/cgi_telnetd” dans un navigateur, puis on tape le LOGIN/MDP (admin/admin par défaut).
=> ça active telnet sur le routeur.
Ensuite "telnet 10.0.0.1"
LOGIN : root (par défaut)
MDP : InvenTel (par défaut)

et là on est sur le routeur.

sh-2.05# uname -a
Linux DW-B-200-2cc72 2.4.17 #2 mer sep 17 10:30:25 CEST 2003 mips unknown

Il y a déjà un serveur WEB nommé Websvr. Mais je ne sais pas vraiment ce que c’est et comment on le configure (rien trouvé d’intéressant sur google).

Donc j’aurais bien ajouter un serveur de type thttpd (très léger).

Le principal problème est le manque de place disponible :

sh-2.05# df
Filesystem                Size      Used Available Use% Mounted on
/dev/mtdblock2            7.0M      7.0M         0 100% /
/dev/mtdblock3          320.0k    232.0k     88.0k  73% /mnt/jffs2/jffs2_3
tmpfs                   256.0k     80.0k    176.0k  31% /var

On ne dispose que de quelques Ko de libre. Donc pour faire mes compilation et autre, j’aimerais pouvoir monté un bout de disque d’un de mes PC pour être à l’aise pendant le temps des tests.
J’ai fais un test pour monter une partition en local sur un de mes PC(OK) :

root@sdebian:/etc# cat hosts.allow
ALL: 127.0.0.1
portmap: 127.0.0.1, 10.0.0.1
mountd: 127.0.0.1, 10.0.0.1
root@sdebian:/etc# cat hosts.deny
root@sdebian:/etc# cat exports
/var/exports    10.0.0.1(sync,rw,root_squash)
/var/exports    127.0.0.1(sync,rw,root_squash)
root@sdebian:/etc# mount -t nfs 127.0.0.1:/var/exports /home/test
root@sdebian:/etc# ls /home/test/
coucou.txt

Mais je n’arrive pas à monter cette même partition sur mon routeur :

sh-2.05# mount -t nfs 10.204.114.12:/var/exports /home/test
mount: Mounting 10.204.114.12:/var/exports on /home/test failed: No such device

J’ai l’impression que le routeur ne connais pas nfs.
Je ne sais pas si nfs-common est installé sur le routeur.

Sinon, j’ai pas APT mais il y a un client ftp un peu bizard que j’arrive a utiliser pour télécharger des trucs sur le routeur.

Quelqu’un peut il m’aider pour monter cette partition?

C’est un peu dangereux ce que tu fais, même si c’est trés interressant.
Déjà, regarde quelle version de mount c’est mount -V
ensuite, regarde s’il y a des extensions mount.* dans /sbin pour voir un peu quel type de montage il supporte. Ca serait étonnant malheureusement qu’il te permette un mount externe…
Sinon, tu as aussi la possibilité de te compiler une commande mount en statique (me souviens plus comment on fait) et strippée pour l’allèger et de la transfèrer sur le routeur pour voir si elle tourne.
Essayes peut être de transfèrer une version de busybox ?
Enfin AMA, le mieux que tu pourra faire, c’est rajouter quelques pages sur le serveur existant (c’est furieusement en équilibre instable l’embarqué, et si tu touches quoi que ce soit, il y a des chances que tu casses tout).

sh-2.05# mount -V
mount: illegal option -- V
/dev/mtdblock2 on / type cramfs (ro)
none on /proc type proc (rw)
/dev/mtdblock3 on /mnt/jffs2/jffs2_3 type jffs2 (rw)
tmpfs on /var type tmpfs (rw)
sh-2.05#
sh-2.05# mount -v
/dev/mtdblock2 on / type cramfs (ro)
none on /proc type proc (rw)
/dev/mtdblock3 on /mnt/jffs2/jffs2_3 type jffs2 (rw)
tmpfs on /var type tmpfs (rw)
sh-2.05#
sh-2.05# ls /sbin/mount.*
ls: /sbin/mount.*: No such file or directory
sh-2.05#
sh-2.05# ls -la /sbin/mount.*
ls: /sbin/mount.*: No such file or directory
sh-2.05# cd /sbin
sh-2.05# ls
adsld        halt         ifconfig     klogd        reboot       telnetd
cardmgr      hard_reboot  init         logread      rmmod        updatedd
cfgrestore   hciattach    insmod       lsmod        route        wlctl
dyndns       hciconfig    iwconfig     modprobe     sdpd
freeramdisk  hcid         iwpriv       pivot_root   syslogd

ça doit être un mount compilé pour utiliser le moins de place possible.
Un peu comme le client FTP où l’on ne peut pas définir l’utilisateur (en tout cas, j’ai pas trouvé).

c’était l’une de mes idées si je n’arrive pas à installer thttpd, mais le problème, c’est que je ne sais pas comment il est configuré ce serveur websvr.

De plus, j’avais aussi l’intension de mettre un petit code qui me permettrait d’allumer mes PC (wake up on line).
Donc ça aurait été pratique d’avoir un point de montage externe.
Sinon, je peux compiler sur une autre machine, mais bon…

Sinon, il y a une sortie USB pour connecter un PC. Je vais voir si il n’y a pas la possibilité de monté une clée USB… Enfin, je pense que je rêve un peu là lol.

====================================================================

EDIT :

source : fr.linuxfromscratch.org/view … utils.html

j’ai trouvé le script nfs-client dans /etc_ro_fs/init.d

sh-2.05# ./nfs-client start
insmod: sunrpc.o: no module by that name found
insmod: lockd.o: no module by that name found
insmod: nfs.o: no module by that name found
sh-2.05#
sh-2.05# cd /
sh-2.05#
sh-2.05# find -name *.o
./lib/crt0.o
./lib/crti.o
./lib/crtn.o
./lib/modules/2.4.17/kernel/drivers/block/rd.o
./lib/modules/2.4.17/kernel/drivers/pcmcia/bcm96345_cs.o
./lib/modules/2.4.17/kernel/drivers/pcmcia/ds.o
./lib/modules/2.4.17/kernel/drivers/pcmcia/pcmcia_core.o
./lib/modules/2.4.17/kernel/fs/ext2/ext2.o
./lib/modules/2.4.17/kernel/modulesrc/atmapi.o
./lib/modules/2.4.17/kernel/modulesrc/drivers/atm/bcm96345/blaa.o
./lib/modules/2.4.17/kernel/modulesrc/drivers/char/bcm96345/adsl/adsldd.o
./lib/modules/2.4.17/kernel/modulesrc/drivers/net/bcm96345/enet/bcm6345net.o
./lib/modules/2.4.17/kernel/modulesrc/drivers/net/bcm96345/usb/bcm63xxusb.o
./lib/modules/bluez/bluez.o
./lib/modules/bluez/bnep.o
./lib/modules/bluez/hci_uart.o
./lib/modules/bluez/l2cap.o
./lib/modules/bluez/rfcomm.o
./lib/modules/bt_reset.o
./lib/modules/hostap.o
./lib/modules/hostap_crypt.o
./lib/modules/hostap_crypt_wep.o
./lib/modules/hostap_cs.o
./lib/modules/switch.o
./lib/modules/wl.o
find: ./proc/7/fd: No such file or directory

…mais les modules ne semblent pas présent…

Je les ai trouvés sur ma debian… et au niveau taille, ça le fait pas non plus :frowning:

-rw-r--r--  1 cedric cedric 125932 2005-08-09 22:54 sunrpc.o
-rw-r--r--  1 cedric cedric 1536 2005-08-09 21:36 lockd.o
-rw-r--r--  1 cedric cedric 214898 2005-08-09 21:35 ./usr/src/linux-2.6.12/fs/nfs/nfs.o

Je crois que ça va être chaud de monter quelque chose sur ce modem lol
… je serai obliger de faire sans.