Suite à un récent achat de matériel afin de me débarrasser de ma livebox qui plante trop souvent, j’ai choisi de faire mon propre routeur ADSL.
Pour faire un routeur, rien ne vaut un OS de qualité: OpenBSD. Au niveau hardware, j’ai choisi une board Alix 2d13 et une carte mini PCI Wi-Fi Atheros DNMA92 et ses antennes.
Nous allons voir dans ce tutoriel comment configurer OpenBSD afin de transformer notre routeur en borne Wi-Fi.
Si vous comptez utiliser une board Alix, voici (rapidement) comment installer OpenBSD et se connecter en série à l’équipement.
Insérez la carte compact flash dans un lecteur compatible (interne ou USB) puis montez le lecteur sur une machine virtuelle en 32bits (i386), en tant que disque dur. (Sur libvirt il suffit de spécifier /dev/sdX comme chemin de disque dur, /dev/sdX étant le lecteur compact flash).
Installez ensuite OpenBSD comme d’habitude, à l’exception près qu’il faudra activer com0 a 38400 baux et ne pas configurer d’interfaces réseau.
Une fois l’installation terminée, éteignez la machine lancez un sync dans votre terminal et retirez la carte compact flash du lecteur. Insérez la ensuite sur la board et alimentez la.
Si tout se passe bien OpenBSD bootera comme sur un serveur classique.
Nous allons ici bridger toutes les interfaces réseau afin de faire fonctionner le système comme un switch.
La board Alix 2d13 dispose de 3 interfaces Ethernet. Nous aurons uniquement besoin de les allumer.
echo "up" > /etc/netstart vr0echo "up" > /etc/netstart vr1
echo "up" > /etc/netstart vr2
sh /etc/netstart vr0
sh /etc/netstart vr1
sh /etc/netstart vr2
Passons à la configuration de l’interface Wi-Fi.
Ouvrez le fichier /etc/hostname.athn0 et indiquez la configuration suivante:
nwid "monSSID"
wpa
wpaprotos wpa2
wpakey maclefdelamortquitue
media autoselect mediaopt hostap
up
chan 1
Précisons:
J’ai remarqué qu’il fallait mettre le canal en dernier, après avoir allumé la carte Wi-Fi, autrement celle-ci n’émet pas. Cela doit dépendre des pilotes.
Enfin lancez l’interface:
sh /etc/netstart athn0
Dans un souci de détail, nous allons créer une interface de loopback qui aura l’adresse IP de notre AP. Cette IP aurait pu être spécifiée sur une interface Ethernet ou Wi-Fi mais la solution serait moins élégante.
echo "inet 10.0.0.1 255.255.255.0 NONE" > /etc/hostname.vether0
echo "description Bridge-WiFi" >> /etc/hostname.vether0
sh /etc/netstart vether0
Pour finir on va créer notre bridge. Ouvrez le fichier /etc/hostname.bridge0
up
add vether0
add vr0
add vr1
add vr2
add athn0
et lancez l’interface
sh /etc/netstart bridge0
Note: si votre équipement est branché sur un commutateur supportant le spanning-tree, ajoutez les options stp dans le fichier /etc/hostname.bridge0
Si tout s’est bien passé, vous devriez voir apparaître le SSID que vous avez configuré. Ce tutoriel ne permet pas de distribuer des adresses IP, si vous le souhaitez, configurez (subnet et interfaces d’écoute) et lancez le démon dhcpd.