Transformer un pc portable en serveur intranet wifi

Bonjour,

Je suis enseignant et je voudrais que mes élèves puissent répondre à un petit formulaire html à l’aide de leur téléphone portable.

Ne souhaitant pas passer par internet, j’ai installé LAMPP sur mon pc portable pour qu’il fasse office de serveur wifi (pour éviter l’achat d’un pont) mais je ne parviens pas à paramétrer correctement mon interface wlan0 (j’ai trouvé l’idée de l’interface virtuelle sur le site openClassrooms).

Mes recherches sur internet ne me conduisent qu’à un cas voisin (celui du partage de connexion internet) en dehors duquel je veux rester.

Voici le fichier /etc/network/interfaces :

auto lo
iface lo inet loopback

auto wlan0:0
iface wlan0:0 inet static
address 192.168.0.40
netmask 255.255.255.0
network 192.168.0.0
wireless-mode master
wireless-essid netprof

Merci d’avance.

Bonjour,

Ta demande étant assez floue, si tu pouvais préciser :

  • Les logiciels Linux, Apache, MySQL et PHP (LAMPP) sont installés directement sur le PC portable sous Debian ?
  • Tu souhaite créer un point d’accès WiFi avec le PC portable ? Tu sais à peu près quel bande radio (2.4 GHz ou 5 GHz) et quel canal de base tu souhaite utiliser ? Est-ce que ton établissement ne possède pas déjà un réseau WiFi qui pourrait rentrer en conflit ?
  • Tu souhaite avoir en même temps un accès à Internet ? Pour ton seul PC portable ? Via l’interface Ethernet filaire du portable ? Via l’interface WiFi ?

Pour savoir si c’est seulement possible, il nous faudrait au minimum les caractéristiques de la carte WiFi du PC portable.
Tu peux trouver cela en exécutant, en tant que root, la commande [mono]lshw | less[/mono] et en faisant une recherche en tapant un slash ( / ) suivi de [mono]network[/mono] suivi d’un appui sur la touche entrée. Si tu tombe sur les informations concernant l’interface filaire, tu peux alors appuyer sur la touche n pour passer à l’occurrence suivante.
Il faudra ensuite copier/coller ici le contenu de la section identifiant l’interface.


AnonymousCoward

Merci de vous pencher sur mon cas.

Toutes mes excuses pour le manque de précision :

Lampp est effectivement installé sur le portable Debian devant servir de serveur.

Je souhaite que ce portable soit un point d’accès wifi pour que les téléphones portables puissent se connecter sur mon site (qui n’est qu’un formulaire).

Je n’ai aucune idée de la bande et du canal à utiliser (je n’ai jamais abordé ce domaine). Il n’y aura aucun conflit puisqu’il n’existe pas de réseau wifi dans l’établissement.

Je ne souhaite surtout pas pouvoir accéder en même temps à internet, ni en filaire, encore moins en wifi.

Voici les informations tirées de KInfoCenter (je n’ai pas réussi avec less qui ne m’affiche que le fichier /etc/network/interfaces dont je donne le contenu dans mon premier message) :

Carte wifi : Intel Centrino Wireless-N 135
Révision : 0x10
Sous système : Device 0300 (0x0000:0x0300)
Contrôle : 0x006
Etat : 0xF7
Latence : 0
En-tête : 0x00
Auto-test intégré : 0x00
Correspondance d’adresse : néant
Capacités : 0x00
Interruption : néant

Voici le résultat d’un ifconfig :

eth0 Link encap:Ethernet HWaddr 00:90:f5:ed:5d:18
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 lg file transmission:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
Interruption:41 Adresse de base:0xc000

lo Link encap:Boucle locale
inet adr:127.0.0.1 Masque:255.0.0.0
adr inet6: ::1/128 Scope:Hôte
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:338 errors:0 dropped:0 overruns:0 frame:0
TX packets:338 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 lg file transmission:0
RX bytes:81357 (79.4 KiB) TX bytes:81357 (79.4 KiB)

wlan0 Link encap:Ethernet HWaddr 0c:d2:92:36:42:19
inet adr:192.168.0.10 Bcast:192.168.0.255 Masque:255.255.255.0
adr inet6: fe80::ed2:92ff:fe36:4219/64 Scope:Lien
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:1612 errors:0 dropped:0 overruns:0 frame:0
TX packets:1207 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 lg file transmission:1000
RX bytes:994032 (970.7 KiB) TX bytes:158681 (154.9 KiB)

Cordialement,

Mike

Caractéristiques de ma carte wifi :

Single Stream

Single Band
802.11b/g/n 1x1 and 2.4GHz

150 Mbps

La bande 5 GHz est donc exclue. Même si le débit est limité, est-il envisageable de gérer une trentaine de connexions simultanées sachant que les pages délivrées ne comprennent que 5 champs de formulaire au maximum ?

Je sais pas pour la connexion, mais pas de soucis pour les connexions simultané (vers le serveur donc ton portable) vu que ça reste en local et que tu n’as pas un ordi des années 70.

Ma carte wifi ne supporte pas le mode master qui permettrait d’an faire un hotspot :

iwconfig wlan0 mode Master

Error for wireless request “Set Mode” (8B06) :
SET failed on device wlan0 ; Invalid argument

La commande iw list donne les modes supportés par la carte :

Supported interface modes:
* IBSS
* managed
* AP
* AP/VLAN
* monitor
* P2P-client
* P2P-GO

Elle ne supporte donc pas le mode master.

Quelle est la différence entre les modes Access Point et Master ?

isalo.org/wiki.debian-fr/Hotspot_wifi

(je suis l’auteur de l’article)

A l’origine c’est un script pour partager un accès internet, MAIS il suffit de ne pas brancher ton câble réseau, pour avoir un simple point d’accès autonome comme tu veux le faire.

Si ça buggue, fais nous un retour ici avec les messages d’erreur :wink:

c’est la même chose

Bonjour et merci pour votre sacré coup de pouce.

Le portable a effectivement créé le réseau wifi (192.168.0.40) puisqu’il a été détecté par le téléphone portable. En revanche, la connexion n’aboutit pas car le téléphone ne semble pas accepter l’adresse ip proposée (192.168.0.112). Je n’ai donc pas pu atteindre le serveur Apache.

Voici le résultat du script :

Trying to disable any network management software… OK.
Current firewall configuration saved.
net.ipv4.ip_forward = 1

Starting hostapd.
Using dnsmasq and iptables.
wlan0 IEEE 802.11bgn Mode:Master Frequency:2.422 GHz Tx-Power=15 dBm
Retry long limit:7 RTS thr:off Fragment thr:off
Power Management:off

SoftAP is up and running! SSID = netprof
Hit ctrl-c to stop.
Aug 28 15:23:56 HP dnsmasq[7085]: utilise le serveur de nom 212.27.40.240#53
Aug 28 15:23:56 HP dnsmasq[7085]: lecture /etc/hosts - 5 adresses
Aug 28 15:23:56 HP avahi-daemon[2636]: Interface wlan0.IPv4 no longer relevant for mDNS.
Aug 28 15:23:56 HP avahi-daemon[2636]: Leaving mDNS multicast group on interface wlan0.IPv4 with address 192.168.0.40.
Aug 28 15:23:56 HP avahi-daemon[2636]: Withdrawing address record for 192.168.0.40 on wlan0.
Aug 28 15:23:56 HP kernel: [ 5019.951220] iwlwifi 0000:02:00.0: L1 Disabled; Enabling L0S
Aug 28 15:23:56 HP kernel: [ 5019.958603] iwlwifi 0000:02:00.0: Radio type=0x0-0x0-0x0
Aug 28 15:23:56 HP avahi-daemon[2636]: Joining mDNS multicast group on interface wlan0.IPv4 with address 192.168.0.40.
Aug 28 15:23:56 HP avahi-daemon[2636]: New relevant interface wlan0.IPv4 for mDNS.
Aug 28 15:23:56 HP avahi-daemon[2636]: Registering new address record for 192.168.0.40 on wlan0.IPv4.
Aug 28 15:23:58 HP avahi-daemon[2636]: Joining mDNS multicast group on interface wlan0.IPv6 with address fe80::ed2:92ff:fe36:4219.
Aug 28 15:23:58 HP avahi-daemon[2636]: New relevant interface wlan0.IPv6 for mDNS.
Aug 28 15:23:58 HP avahi-daemon[2636]: Registering new address record for fe80::ed2:92ff:fe36:4219 on wlan0.*.
Aug 28 15:24:00 HP acpid: client connected from 2980[0:0]
Aug 28 15:24:00 HP acpid: 1 client rule loaded
Aug 28 15:24:07 HP kernel: [ 5030.516070] wlan0: no IPv6 routers present
Aug 28 15:27:04 HP hostapd: wlan0: STA 08:70:45:7a:15:00 IEEE 802.11: authenticated
Aug 28 15:27:04 HP hostapd: wlan0: STA 08:70:45:7a:15:00 IEEE 802.11: associated (aid 1)
Aug 28 15:27:04 HP hostapd: wlan0: STA 08:70:45:7a:15:00 RADIUS: starting accounting session 53FF2D6E-00000000
Aug 28 15:27:04 HP hostapd: wlan0: STA 08:70:45:7a:15:00 WPA: pairwise key handshake completed (RSN)
Aug 28 15:27:16 HP dnsmasq-dhcp[7085]: DHCPDISCOVER(wlan0) 08:70:45:7a:15:00
Aug 28 15:27:16 HP dnsmasq-dhcp[7085]: DHCPOFFER(wlan0) 192.168.0.112 08:70:45:7a:15:00
Aug 28 15:27:16 HP dnsmasq-dhcp[7085]: DHCPDISCOVER(wlan0) 08:70:45:7a:15:00
Aug 28 15:27:16 HP dnsmasq-dhcp[7085]: DHCPOFFER(wlan0) 192.168.0.112 08:70:45:7a:15:00
Aug 28 15:27:17 HP dnsmasq-dhcp[7085]: DHCPDISCOVER(wlan0) 08:70:45:7a:15:00

Je suis déjà ravi de constater que mon objectif semble réalisable avec cette carte wifi. Malheureusement, je suis loin de comprendre ce qui se passe et je ne vois toujours pas comment procéder avec hostapd, et donc en dehors du fichier /etc/network/interfaces.

Merci encore !

Hormis le fait que le téléphone ne semble pas accepter le bail DHCP (il ne renvoie pas l’acquiescement du bail DHCP), le script de agentsteel a l’air très bien.
Par contre, il a deux caractéristiques qui vont être gênantes :

  • Aussi bien la plage d’adresses pour le DHCP que la ligne [mono]max_num_sta=8[/mono] font que l’on ne pourra pas connecter plus que 8 clients WiFi.

  • Si l’on s’en réfère à la ligne [mono]iptables -A FORWARD -i $WLAN -o $IF_IN -p tcp -m tcp --dport 80 -j ACCEPT[/mono], les protocoles HTTP et HTTPS sont autorisés mais PAS sur la machine qui fait point d’accès WiFi elle-même.

Heureusement, il ne faut pas grand-chose pour modifier ces deux petits détails.


AnonymousCoward

En effet pour pouvoir “attaquer” le serveur web (ports 84 et 443) de la machine qui fait hotspot, depuis les clients, il faut modifier :

[quote]

allow HTTP in, on $IF_IN only (hotspot’s web server)

#iptables -A INPUT -i $IF_IN -p tcp -m tcp --dport 80 -j ACCEPT[/quote]
par

Je viens de tester en direct live sur mon portable (Debian Wheezy, config minimale en ligne de commande) et un smartphone sous Android (cyanogenmod 4.4) : ça fonctionne.

(accessoirement ça permet de constater que le 1er site que tente de joindre le phone c’est un certain clients3.google.com :079 )

pour [mono]max_num_sta=8[/mono] tu peux essayer d’augmenter la valeur, mais il faut savoir que c’est parfois une limitation hardware de la carte wifi (à tester selon le modèle)

ceci étant il y a un autre problème si le client ne veut pas du bail DHCP.

[quote]Aug 28 15:23:56 HP dnsmasq[7085]: utilise le serveur de nom 212.27.40.240#53
Aug 28 15:23:56 HP dnsmasq[7085]: lecture /etc/hosts - 5 adresses
[/quote]bizarre ça :slightly_smiling: (as-tu bien débranché ton cable réseau avant de lancer le script?)

Tout fonctionne parfaitement !!!

Merci pour ce script qui résout le problème. Merci pour la précision de vos réponses : ne connaissant pas encore familiarisé avec l’instruction iptables, j’étais incapable d’y apporter la moindre modification.

Précision pour AgentSteel : je n’avais effectivement pas débranché le câble réseau lors du test.

Je posterai un dernier message récapitulatif pour signaler le problème comme résolu.

Impossible d’y arriver sans vous : merci à tous de m’avoir consacré du temps !

Pourquoi se compliquer la vie avec iptables pour ce genre d’application ?

A l’origine c’était pour pouvoir filtrer un minimum les flux au niveau du hostpot.

Mais en utilisant un bridge (mon script permet de choisir) pas besoin d’iptables.

Ça se justifie pour un hotspot avec accès à internet, mais pas tellement pour un point d’accès isolé.

bonjour,

Je suis enseignant et je voudrais que mes élèves puissent répondre à un petit formulaire html à l'aide de leur téléphone portable. 

l’aval de l’académie?
le télèphone portable,son utilisation dans l’établissement,

comme pour ce serveur, la sauvegarde des logs,
enfin la déclaration à la CNIL,
bon courrage
A+
JB1

On s’en fout 8)

Meilleur intitulé : comment transformer un pc portable en hotspot intranet wifi

Linux : Debian 3.2.0-4-amd64
Carte wifi : Intel Centrino Wireless-N 135
Firmware : iwlwifi

Tous mes plus vifs remerciements à Agentsteel :038 pour sa contribution majeure et à AnonymousCoward pour les détails de paramétrage du pare-feu qui me dépassaient largement.

Il faut d’abord vérifier si la carte wifi est capable de générer un réseau : elle doit pour cela supporter le mode master ou ap (access point).

Commande : iw list

Supported interface modes:

  • IBSS
  • managed
  • AP
  • AP/VLAN
  • monitor
  • P2P-client
  • P2P-GO

L’avantage du mode master est qu’il rend (peut-être) possible la création du hotspot par une déclaration dans le fichier /etc/network/interfaces. Ce n’est malheureusement pas le cas de ma carte ce qui nous conduit à la solution beaucoup plus technique d’AgentSteel.

Tutoriel d’origine d’Agentsteel: https://www.isalo.org/wiki.debian-fr/Hotspot_wifi

Le script proposé permet de transformer un pc portable relié à internet en hotspot wifi. Notre objectif étant légèrement différent, garder à l’esprit qu’il ne faut PAS brancher le câble réseau. Il faut de plus apporter quelques modifications aux règles du pare-feu générées par l’instruction iptables.

Voici le script adapté : il ne vous reste plus qu’à personnaliser :

  • le nom de votre réseau ;
  • le mot de passe ;
  • l’adresse ip du serveur ainsi que la plage DHCP désirée ;
  • le nombre maximum de clients simultanés (instruction max_num_sta=35). Je n’ai pas encore pu tester si ma carte est limitée ou non à 8.
#!/bin/bash
#
# hotspot2014.sh
#
# Wireless Access Point (SoftAP)
#
# by AgentSteel for Debian-fr.org
# 24/Apr/2014
#
# USE AT YOUR OWN RISK!
#
# Tested on Debian Wheezy (7.0)
#
# Two modes of operation :
#  - with a network bridge (see BRIDGE variable) for transparent connection sharing (no DNS logging...)
#   or
#  - with dnsmasq and iptables for packet forwarding between network interfaces (DNS logging)
#
# Run this script as root.
# This script will likely stop currently running network connections.
# You may also need to disable your local firewall.
#
# Required : dhclient, hostapd, firmware-realtek (non-free)
# Optional : bridge-utils, dnsmasq
 
# Adjust your settings here
WLAN="wlan0"
 
# the IP address of your SoftAP interface (if using dnsmasq)
# and the corresponding IP range for your SoftAP clients (if using dnsmasq)
WLAN_IP="192.168.0.10"
DHCP_RANGE="192.168.0.100,192.168.0.135"
 
# your SoftAP SSID, channel and passphrase
SSID="nomReseau"
CHANNEL=3
PASSPHRASE="motDePasse"
 
# Set your desired bridge interface name here
MY_BRIDGE="ap-br0"
# and the other network interface for bridge
IF_BRIDGE="eth0"
 
# Uncomment to use bridging, or comment to use dnsmasq/iptables
#BRIDGE="bridge=$MY_BRIDGE"
 
# (input) network interface when using dnsmasq/iptables
IF_IN="eth0"
 
# Set to "-d" for hostapd debugging output
# or "-B" (background mode) for default operation
HOSTAPD_OPT="-B"
 
# global exit code for script (0 = no error)
ret=0
 
# function : check for required software
function checklist()
{
 local ret=0
 # check if running as root
 [[ $EUID -ne 0 ]] && { echo "You must be root to run this script!"; ret=1; }
 if [[ -n "$BRIDGE" ]]; then
  # when using a bridge, ensure brctl is found
  hash brctl >/dev/null 2>&1 || { echo "brctl not found, please install bridge-utils package."; ret=1; }
 else
  # not using a bridge, we need dnsmasq and iptables
  hash dnsmasq >/dev/null 2>&1 || { echo "dnsmasq not found, please install dnsmasq package."; ret=1; }
  hash iptables >/dev/null 2>&1 || { echo "iptables not found, please install iptables package."; ret=1; }
 fi
 hash hostapd >/dev/null 2>&1 || { echo "hostapd not found, please install hostapd package."; ret=1; }
 return $ret
}
 
# function : cleanup the mess when exiting
function cleanup()
{
 # clean up a bit (the dirty way!)
 sysctl net.ipv4.ip_forward=0
 iptables-restore <iptables.save && echo "iptables rules restored."
 killall hostapd >/dev/null 2>&1 && echo "hostapd killed."
 [[ -f "$TMP_CONF" ]] && rm "$TMP_CONF"
 killall dnsmasq >/dev/null 2>&1 && echo "dnsmasq killed."
 killall dhclient >/dev/null 2>&1 && echo "dhclient killed."
 ifconfig "$MY_BRIDGE" down >/dev/null 2>&1
 sleep 2
 brctl delif "$MY_BRIDGE" "$IF_BRIDGE" >/dev/null 2>&1
 brctl delif "$MY_BRIDGE" "$WLAN" >/dev/null 2>&1
 brctl delbr "$MY_BRIDGE" >/dev/null 2>&1 && echo "bridge $MY_BRIDGE destroyed."
}
 
# Main program
 
# check for requirements, abort eventually
checklist || exit 1
 
# trap for cleanup
trap cleanup SIGINT SIGTERM
 
# First, disable any network management software
echo -n ">>> Trying to disable any network management software... "
service network-manager stop >/dev/null 2>&1
service wicd stop >/dev/null 2>&1
echo "OK."
 
# If not using a bridge, start dnsmasq (dns and dhcp) server
if [[ -z "$BRIDGE" ]]; then
 killall dnsmasq >/dev/null 2>&1
 # TODO : additional hosts file
 dnsmasq --interface "$WLAN" --dhcp-range="$DHCP_RANGE" --log-queries || { echo "dnsmasq failed to start!"; exit 1; }
 # assign IP to the wireless interface
 ifconfig "$WLAN" "$WLAN_IP"
 
 # now you could start a webserver to share some files (eg. gatling lightweight www server)
 # and allow your SoftAP clients to go to http://$WLAN_IP/
 
 # save current firewall rules
 iptables-save >iptables.save && echo ">>> Current firewall configuration saved."
 # reset firewall rules
 iptables -F; iptables -X; iptables -P INPUT DROP; iptables -P OUTPUT ACCEPT; iptables -P FORWARD DROP
 # allow loopback
 iptables -A INPUT -i lo -j ACCEPT; iptables -A OUTPUT -o lo -j ACCEPT
 # allow already established connections on eth0 (useful for SSH)
 iptables -A INPUT -i $IF_IN -m state --state RELATED,ESTABLISHED -j ACCEPT
 # Allow ping on $IF_IN
 iptables -A INPUT -i $IF_IN -p icmp -m icmp --icmp-type 8 -j ACCEPT
 # allow SSH in, on $IF_IN only
 #iptables -A INPUT -i $IF_IN -p tcp -m tcp --dport 22 -j ACCEPT
 # allow HTTP in, on $IF_IN only (hotspot's web server)
 #iptables -A INPUT -i $IF_IN -p tcp -m tcp --dport 80 -j ACCEPT
# Modifs pour hotspot wifi
iptables -A INPUT -i $WLAN -p tcp -m tcp --dport 80 -j ACCEPT
iptables -A INPUT -i $WLAN -p tcp -m tcp --dport 443 -j ACCEPT

 # allow DNS in, on $WLAN
 iptables -A INPUT -i $WLAN -p udp -m udp --dport 53 -j ACCEPT
 # allow DHCP in, on $WLAN
 iptables -A INPUT -i $WLAN -p udp -m udp --dport 67 -j ACCEPT
 # packet forwarding
 sysctl net.ipv4.ip_forward=1
 iptables -t nat -A POSTROUTING -o $IF_IN -j MASQUERADE
 iptables -A FORWARD -i $IF_IN -o $WLAN -m state --state RELATED,ESTABLISHED -j ACCEPT
 # allow HTTP and HTTPS to be forwarded
 iptables -A FORWARD -i $WLAN -o $IF_IN -p tcp -m tcp --dport 80 -j ACCEPT
 iptables -A FORWARD -i $WLAN -o $IF_IN -p tcp -m tcp --dport 443 -j ACCEPT
 #iptables -A FORWARD -i $WLAN -o $IF_IN -p tcp -m tcp --dport 8080 -j ACCEPT
 # uncomment below to allow SSH to be forwarded
 #iptables -A FORWARD -i $WLAN -o $IF_IN -p tcp -m tcp --dport 22 -j ACCEPT

 
 # (everything else will be forbidden)
 
else
 # we create a new network bridge to share network (and internet) access
 brctl addbr "$MY_BRIDGE"
 brctl addif "$MY_BRIDGE" "$IF_BRIDGE"
 # $WLAN interface will be added later to the bridge
fi
 
# create a temporary file with our hostapd conf
# (adapted from Realtek's examples)
# (see proprietary driver package from Realtek's website)
TMP_CONF=$(mktemp)
if [[ -z "$TMP_CONF" ]]; then
 echo "Error creating hostapd temporary configuration file!"
 ret=1
else
 # read-only for root
 chmod 600 "$TMP_CONF"
 cat >"$TMP_CONF" <<EOF
# hostapd configuration starts here
ctrl_interface=/var/run/hostapd
ctrl_interface_group=0
interface=$WLAN
$BRIDGE
ssid=$SSID
channel=$CHANNEL
beacon_int=100
# (hardware limit for some wireless chipsets)
max_num_sta=24
hw_mode=g
# we use 802.11n (wifi N)
ieee80211n=1
wme_enabled=1
ht_capab=[SHORT-GI-20][SHORT-GI-40][HT40+]
# We use WPA2 of course
wpa=2
wpa_passphrase=$PASSPHRASE
wpa_key_mgmt=WPA-PSK
# Note: TKIP not supported with RTL8188RU chip!
wpa_pairwise=CCMP
wpa_group_rekey=86400
# other settings
logger_syslog=-1
logger_syslog_level=2
logger_stdout=-1
logger_stdout_level=2
#dump_file=/tmp/hostapd.dump
dtim_period=2
rts_threshold=2347
fragm_threshold=2346
macaddr_acl=0
auth_algs=3
ignore_broadcast_ssid=0
wmm_enabled=1
wmm_ac_bk_cwmin=4
wmm_ac_bk_cwmax=10
wmm_ac_bk_aifs=7
wmm_ac_bk_txop_limit=0
wmm_ac_bk_acm=0
wmm_ac_be_aifs=3
wmm_ac_be_cwmin=4
wmm_ac_be_cwmax=10
wmm_ac_be_txop_limit=0
wmm_ac_be_acm=0
wmm_ac_vi_aifs=2
wmm_ac_vi_cwmin=3
wmm_ac_vi_cwmax=4
wmm_ac_vi_txop_limit=94
wmm_ac_vi_acm=0
wmm_ac_vo_aifs=2
wmm_ac_vo_cwmin=2
wmm_ac_vo_cwmax=3
wmm_ac_vo_txop_limit=47
wmm_ac_vo_acm=0
eapol_key_index_workaround=0
eap_server=0
own_ip_addr=127.0.0.1
EOF
 
 echo ">>> Starting hostapd."
 # start hostapd
 if ! hostapd $HOSTAPD_OPT "$TMP_CONF"; then
  echo "hostapd failed to start."
  ret=1
 else
  # finally get an IP address for the bridge, only when using a bridge (assume we have a dhcp server in our LAN)
  [[ -n "$BRIDGE" ]] && dhclient "$MY_BRIDGE" && echo ">>> Network bridge $MY_BRIDGE is up."
  # TODO : handle dhclient failure
  [[ -z "$BRIDGE" ]] && echo ">>> Using dnsmasq and iptables."
 
  iwconfig $WLAN
  echo ">>> SoftAP is up and running!            SSID = $SSID"
  echo ">>> Hit ctrl-c to stop."
  # display syslog to see what happens
  tail -f /var/log/syslog
 fi
fi
 
cleanup
echo -e "\n>>> SoftAP terminated!"
exit $ret 


Comment exécuter ce script ?

  • Ouvrir un éditeur de texte comme Kate ou Kwrite et y copier le code. Enregistrer sous le nom hotspot.sh par exemple.
  • Supposons que ce script soit enregistré dans un dossier nommé wifi. En ligne de commande et en mode root, placez-vous dans le répertoire père (cd …) puis exécutez l’instruction : ./wifi/hotspot.sh

Encore merci à tous !

Mike

Merci à toi pour le retour d’utilisation :wink:

Wow !!

Vraiement superbe ce post …

Bravo les amis …