Environnement du TP 8 : OpenWrt
Hyperviseur recommandé : VirtualBox (fonctionne également avec VMware Workstation ou Hyper-V)
1. Prérequis matériels
- 512 Mo de RAM, 1 vCPU, 200 Mo de disque suffisent,
- une interface réseau virtuelle en mode host-only pour l’accès API depuis le poste hôte.
2. Téléchargement de l’image
- Rendez-vous sur
https://downloads.openwrt.org/releases/et choisissez la dernière version stable. - Naviguez vers
targets/x86/64/. - Téléchargez le fichier
generic-ext4-combined.img.gz(image disque prête à démarrer, adaptée aux machines virtuelles x86_64). - Décompressez l’archive pour obtenir
openwrt-x86-64-generic-ext4-combined.img.
3. Conversion du disque (VirtualBox)
VBoxManage convertfromraw openwrt-x86-64-generic-ext4-combined.img openwrt.vdi --format VDINote VMware Workstation : qemu-img convert -f raw openwrt-x86-64-generic-ext4-combined.img -O vmdk openwrt.vmdk.
Note Hyper-V : convertissez en VHDX avec qemu-img convert -f raw openwrt-....img -O vhdx openwrt.vhdx, puis attachez ce disque à une VM Génération 1.
4. Création de la VM (VirtualBox)
- Nouvelle machine → Type Other Linux (64-bit).
- RAM : 512 Mo, pas de disque à créer (on attache le VDI existant).
- Dans Stockage, attachez
openwrt.vdicomme disque dur SATA/IDE. - Dans Réseau :
- Adaptateur 1 : Réseau privé hôte (Host-only Adapter) — OpenWrt configure par défaut
192.168.1.1/24sur sa première interface (lan), - Adaptateur 2 (optionnel) : NAT, si vous voulez que la VM ait accès à Internet (pour installer des paquets
opkg).
- Adaptateur 1 : Réseau privé hôte (Host-only Adapter) — OpenWrt configure par défaut
5. Premier démarrage et réseau
- Démarrez la VM : la console affiche l’invite
root@OpenWrt. - Depuis le poste hôte, configurez une adresse IP statique dans le sous-réseau
192.168.1.0/24(ex.192.168.1.10/24) sur l’adaptateur réseau host-only. - Vérifiez la connectivité :
ping 192.168.1.16. Activation de l’accès distant à ubus (JSON-RPC via HTTP)
Par défaut, uhttpd sert déjà l’interface LuCI et le point d’entrée /ubus. Vérifiez/complétez la configuration :
uci show uhttpd | grep ubusSi nécessaire, activez le module RPC :
opkg update
opkg install rpcd-mod-file uhttpd-mod-ubus
/etc/init.d/uhttpd restartDéfinissez un mot de passe root (obligatoire pour l’authentification ubus) :
passwd7. Test depuis le poste hôte
curl -s http://192.168.1.1/ubus \
-d '{"jsonrpc":"2.0","id":1,"method":"call","params":["00000000000000000000000000000000","session","login",{"username":"root","password":"VotreMotDePasse"}]}'Une réponse JSON contenant ubus_rpc_session confirme que l’environnement est opérationnel.
Vérification finale
- La VM répond au
pingdepuis le poste hôte. - Le mot de passe
rootest défini. - L’appel
session.loginen JSON-RPC renvoie unubus_rpc_sessionvalide.