Créer un point d'accès Wifi avec Debian

&

wifi chipset Atheros (Netgear WPN311)

WPA2-PSK



  1. Pré-requis :



  1. Installation du pilote Madwifi

    # apt-get install madwifi-modules madwifi-source madwifi-tools module-assistant

    #...

    Nous allons maintenant compiler le module madwifi à partir des sources de celui-ci avec module-assistant. Pour cela nous allons taper la commande suivante : m-a a-i nom_module.

    # m-a a-i madwifi

    (m-a : module-assistant ; a-i : auto-install)

    # modprobe ath_pci

    (chargement du module, ou pilote)

  1. Installation de hosapd

    Hostapd comme son nom l'indique est le démon pour un point d'accès hôte.

    # apt-get install hostapd





  1. Configuration de hosapd

    Le fichier principal est : /etc/hostapd/hostapd.conf

    Voici le mien :

      interface=ath0

      driver=madwifi

      logger_syslog=-1

      logger_syslog_level=4

      logger_stdout=--1

      logger_stdout_level=4

      debug=4

      ctrl_interface_group=0

      # Comment gérer les adresses MAC (adresse Hardware des cartes réseaux)

      # C'est une sécurité qui peut facilement être contournée, mais est

      # néanmoins pratique, car elle est facile à mettre en place

      # En effet, hostAPd va vérifier l'adresse MAC de la carte Wifi qui fait une

      # demande d'accès et pourra alors, sur cette seule adresse, soit continuer le

      # processus d'identification, soit s'arrêter et refuser la carte.

      # Les paramètres possibles sont les suivants :

      # 0 : Tout accepter à moins qu'elle ne soit dans la liste noire

      # 1 : Tout refuser, à moins qu'elle ne soit dans la liste blanche

      # 2 : Vérifier l'adresse auprès d'un serveur RADIUS (honnêtement, pour son réseau local, ça ne sert à rien)

      # Le meilleur paramètre pour commencer est 1. Ça réduit de beaucoup les risques de piratage.

      macaddr_acl=0

      #deny_mac_file=/etc/hostapd/hostapd.deny

      #accept_mac_file=/etc/hostapd/hostapd.accept

      auth_algs=3

      eapol_key_index_workaround=0

      eap_server=0

      dump_file=/tmp/hostapd.dump

      ssid=VotreESSID

      wpa=3

      wpa_key_mgmt=WPA-PSK

      wpa_pairwise=TKIP CCMP

      wpa_psk=(clé générée par wpa_passphrase ESSID passphrase)

  2. Création du script « Point d'Accès »

#!/bin/sh


# Création de la carte ath0 et du point d'accès ESSID

echo "Création de la carte ath0 et du point d'accès ESSID";


ifconfig ath0 down;

wlanconfig ath0 destroy;

wlanconfig ath0 create wlandev wifi0 wlanmode ap;


echo "Veuillez patienter...";

sleep 2;

echo "Activation de ath0";


ifconfig ath0 VotreIP netmask VotreMASK up;

/usr/sbin/hostapd -B -P /var/run/hostapd.pid -dd -K -t /etc/hostapd/hostapd.conf;


echo "Veuillez patienter...";

sleep 1;

iwconfig ath0 channel N;


echo "Veuillez patienter...";

sleep 1;

echo "Mise en place des options du point d'accès ESSID";

iwconfig ath0 key restricted;


echo "Veuillez patienter...";

sleep 1;

echo "Mise en place des options DHCP";

/etc/init.d/dhcp3-server restart;


echo "Veuillez patienter...";

sleep 1;

echo "Mise en place du routage NAT internet";

/etc/init.d/dhcp3-server restart;

echo 1 > /proc/sys/net/ipv4/ip_forward;

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE;

  1. Configuration du serveur DHCP

Le fichier se trouve : /etc/dhcpd3/dhcpd.conf

ddns-update-style none;
option domain-name "DOMAIN.local";

default-lease-time 600;
max-lease-time 7200;

# If this DHCP server is the official DHCP server for the local
# network, the authoritative directive should be uncommented.
authoritative;

# Use this to send dhcp log messages to a different log file (you also
# have to hack syslog.conf to complete the redirection).
log-facility local7;

# wifi
subnet adrIPrz netmask mask {
	range IP1 IP2;
	option domain-name-servers IPDNS1, IPDNS2, IPDNS3;
	option routers adrIP;
	option broadcast-address adrIPbroadcast;
	default-lease-time 600;
           max-lease-time 7200;
}
    
    	
  1. Page Web de changement de clé PSK WPA2

    Vous pouvez créer des pages permettant de changer la clef, le ESSID, etc...

    Changer la clef
    appli la clef
    voir la clef

    Pour cela n'oubliez pas de modifier /etc/sudoers pour entrer votre hôte tel que :

    www-data ALL = (ALL) NOPASSWD: ALL
    hote ALL = (ALL) NOPASSWD: ALL
    localhost ALL = (ALL) NOPASSWD: ALL



  1. Conclusion

    Nous pouvons largement faire mieux en charte graphique pour les pages et faire largement mieux niveau sécurité...