Profiter du WIFI sous linux
Objectif
Faire marcher une connexion wifi sous linux et configurer un serveur en access-point (AP)
Installation du pilote de la carte
Dans mon cas, j'ai utilisé la carte D-link DWL-G520 (H/W Ver:B3 F/W Ver:4.11) qui marche en utilisant le driver madwifi. Les instructions pour l'installation sont disponibles sur http://www.marlow.dk/site.php/tech/madwifi.
Update 10-2006: les quatre premières étapes peuvent être avantageusement remplacées par l'utilisation de module-assistant
En résumé, il faut:
- Télécharger les sources de madwifi
echo "deb ftp://debian.marlow.dk/ sid madwifi" >> /etc/apt/sources.list
echo "deb-src ftp://debian.marlow.dk/ sid madwifi" >> /etc/apt/sources.list
apt-get update
apt-get install madwifi-source madwifi-tools
- Télécharger les sources de votre noyau:
apt-get install linux-source-2.x.y(ou kernel-source-2.x.y pour les versions antérieures a 2.6.12) - Compiler madwifi pour votre noyau
cd /usr/srcSi votre version de noyau est quelque chose du type 2.6.4.1-686, "-flavour" est alors "-1-686".
tar -xzvf madwifi.tar.gz
cd linux-source-x.y.z
fakeroot make-kpkg --append-to-version "-flavour" --revision 2.x.y-z --added-modules madwifi modules_image
- La dernière étape a produit un paquet debian qu'il faut installer par
dpkg -i /usr/src/madwifi-module-x.y.z_20040619-1+kernelversion_i386.deb modprobe ath_pcipermet alors de charger le module en mémoire
Configuration en access point
Pour éviter que tout le quartier ne squatte votre connexion, il faut un minimum de configuration. Attention, la méthode donnée ici ne garanti pas un serveur inviolable, on se contente ici du strict minimum.
Générer une clé WEP par
dd if=/dev/urandom count=1 2> /dev/null | md5sum | head -n 2 | tail -n 1 | cut -c-26
Vous devez alors avoir un résultat de la forme 68e1c4647cf8ef7e70d3ff588c: c'est votre clé de connexion que tous les utilisateurs devront avoir avant de pouvoir se connecter.
Configurer le /etc/network/interfaces en ajoutant les lignes
iface ath0 inet static
address 192.168.2.1
netmask 255.255.255.0
wireless-mode Master
wireless-rate 11M
wireless-essid MonAP
wireless-key restricted 68e1c4647cf8ef7e70d3ff588c
Activer la carte réseau et vérifier que ca marche
iwconfig
Activer le routage sur le serveur. On considère que l'interface eth0 est l'interface de sortie vers l'internet et le sous-réseau 192.168.2.255 est celui connecté sur ath0 (wifi). Le serveur accepte alors de transmettre les paquets IP des clients connectés en WIFI à l'extérieur.
modprobe ip_tables
modprobe ip_conntrack
modprobe ip_conntrack_ftp
modprobe ip_nat_ft
/sbin/iptables -A FORWARD -i ath0 -o eth0 -j ACCEPT
/sbin/iptables -A FORWARD -o ath0 -i eth0 -j ACCEPT
/sbin/iptables -t nat -A POSTROUTING -s 192.168.2.0/24 -j MASQUERADE
