# Hotspot sous linux

**URL:** <https://www.debian-fr.org/t/hotspot-sous-linux/58193>\
**Category:** Support Debian\
**Tags:** hotspot, wifi\
**Created:** [Février 21, 2016, 5:37 UTC](https://www.debian-fr.org/t/hotspot-sous-linux/58193 "2016-02-21T17:37:48Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![N3mesis98](https://www.debian-fr.org/user_avatar/www.debian-fr.org/n3mesis98/32/3002_2.png) [@N3mesis98](https://www.debian-fr.org/u/N3mesis98)\
**Post date:** [Février 21, 2016, 5:37 UTC](https://www.debian-fr.org/t/hotspot-sous-linux/58193/1 "2016-02-21T17:37:48Z")

</div>

Bonjour a tous,

ça fait un certain temps que je cherche un moyen de partager une connexion internet sous linux.  
J’ai bien trouvé ceci:  
[help.ubuntu.com/community/WifiD … ccessPoint](https://help.ubuntu.com/community/WifiDocs/WirelessAccessPoint)

mais je me suis dit qu’il devait quand meme exister des alternatives plus pratiques quand meme parce que la c’est pas mal de boulot pour partager une connexion internet via wifi…

Je ne sais pas si vous connaissez connectify sous window$, mais c’est quelque chose de semblable que je recherche en fait. Quoique pas necessairement graphique…

Est ce que l’un d’entre vous connais un paquet qui permette de faire ce genre de chose ?

Merci d’avance,

---

<div class="post-metadata">

**Author:** ![agentsteel](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/a/97f17d/32.png) [@agentsteel](https://www.debian-fr.org/u/agentsteel)\
**Post date:** [Février 21, 2016, 5:37 UTC](https://www.debian-fr.org/t/hotspot-sous-linux/58193/2 "2016-02-21T17:37:48Z")

</div>

Dans la rubrique “trucs et astuces”, j’ai mis un petit script en bash qui automatise les manips présentées par ton lien.

[pour-les-scripts-c-est-ici-t3548-300.html#p415449](http://www.debian-fr.org/pour-les-scripts-c-est-ici-t3548-300.html#p415449)

Sinon, en graphique, il me semble que network-manager peut le faire : à vérifier.

---

<div class="post-metadata">

**Author:** ![N3mesis98](https://www.debian-fr.org/user_avatar/www.debian-fr.org/n3mesis98/32/3002_2.png) [@N3mesis98](https://www.debian-fr.org/u/N3mesis98)\
**Post date:** [Février 21, 2016, 5:37 UTC](https://www.debian-fr.org/t/hotspot-sous-linux/58193/3 "2016-02-21T17:37:49Z")

</div>

> [@agentsteel](#):
>
> Il faut 2 interfaces wifi (par exemple sur un PC portable, une clé usb wifi en plus de l’adaptateur interne).

Hum, pas sur mais tu veux plutot entendre deux interfaces connectées a internet non ?  
Par exemple, acces a internet par cable ethernet et diffusion de la dite connexion via la carte wifi ?

---

<div class="post-metadata">

**Author:** ![agentsteel](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/a/97f17d/32.png) [@agentsteel](https://www.debian-fr.org/u/agentsteel)\
**Post date:** [Février 21, 2016, 5:37 UTC](https://www.debian-fr.org/t/hotspot-sous-linux/58193/4 "2016-02-21T17:37:50Z")

</div>

Oops oui en effet, mon script en l’état est fait pour 2 interfaces wifi, désolé 😛

sinon avec 1 interface filaire et 1 interface wireless, il y a aussi la méthode via un pont réseau :

[agentoss.wordpress.com/2011/10/ … ian-linux/](https://agentoss.wordpress.com/2011/10/31/creating-a-wireless-access-point-with-debian-linux/)  
(tuto fait pour squeeze a l’époque, mais fonctionne pareil avec Wheezy)

---

<div class="post-metadata">

**Author:** ![P\_tit\_Nico](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/p/d26b3c/32.png) [@P\_tit\_Nico](https://www.debian-fr.org/u/P_tit_Nico)\
**Post date:** [Février 21, 2016, 5:37 UTC](https://www.debian-fr.org/t/hotspot-sous-linux/58193/5 "2016-02-21T17:37:57Z")

</div>

Hello,

Bon c’est un peu hors sujet mais [pfsense](http://www.pfsense.org/) fait ça très bien aussi.

😉

---

<div class="post-metadata">

**Author:** ![N3mesis98](https://www.debian-fr.org/user_avatar/www.debian-fr.org/n3mesis98/32/3002_2.png) [@N3mesis98](https://www.debian-fr.org/u/N3mesis98)\
**Post date:** [Février 21, 2016, 5:37 UTC](https://www.debian-fr.org/t/hotspot-sous-linux/58193/6 "2016-02-21T17:37:57Z")

</div>

[quote=“P’tit Nico 😉”]Hello,

Bon c’est un peu hors sujet mais [pfsense](http://www.pfsense.org/) fait ça très bien aussi.

😉[/quote]

Pas mal, mais ce n’est pas une application au final c’est une distribution complète ^^

---

<div class="post-metadata">

**Author:** ![Clochette](https://www.debian-fr.org/user_avatar/www.debian-fr.org/clochette/32/8757_2.png) [@Clochette](https://www.debian-fr.org/u/Clochette)\
**Post date:** [Février 21, 2016, 5:37 UTC](https://www.debian-fr.org/t/hotspot-sous-linux/58193/7 "2016-02-21T17:37:58Z")

</div>

[quote=“N3mesis98”][quote=“P’tit Nico 😉”]Hello,

Bon c’est un peu hors sujet mais [pfsense](http://www.pfsense.org/) fait ça très bien aussi.

😉[/quote]

Pas mal, mais ce n’est pas une application au final c’est une distribution complète ^^[/quote]

J’utilise [chilispot](http://www.chillispot.info/) pour les explications il te faudra piocher à droite et à gauche avec pas mal d’expérimentation pour en faire exactement ce dont tu as besoin, chez moi le hotspot est fermé et couplé avec du LDAP.

---

<div class="post-metadata">

**Author:** ![P\_tit\_Nico](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/p/d26b3c/32.png) [@P\_tit\_Nico](https://www.debian-fr.org/u/P_tit_Nico)\
**Post date:** [Février 21, 2016, 5:37 UTC](https://www.debian-fr.org/t/hotspot-sous-linux/58193/8 "2016-02-21T17:37:58Z")

</div>

[quote=“N3mesis98”][quote=“P’tit Nico 😉”]Hello,

Bon c’est un peu hors sujet mais [pfsense](http://www.pfsense.org/) fait ça très bien aussi.

😉[/quote]

Pas mal, mais ce n’est pas une application au final c’est une distribution complète ^^[/quote]

Oui, c’est assez perturbant car c’est à base de FreeBSD. Mais au final j’ai eu très très peu besoin de la console, l’interface web étant extrêmement bien foutu.  
Le portail captif est très simple et ça fonctionne bien. En prod au boulot pour le wifi invité depuis des moi sans soucis.

Seul regret il ne se connecte pas à un LDAP directement, il faut un RADIUS.

---

<div class="post-metadata">

**Author:** ![N3mesis98](https://www.debian-fr.org/user_avatar/www.debian-fr.org/n3mesis98/32/3002_2.png) [@N3mesis98](https://www.debian-fr.org/u/N3mesis98)\
**Post date:** [Février 21, 2016, 5:37 UTC](https://www.debian-fr.org/t/hotspot-sous-linux/58193/9 "2016-02-21T17:37:59Z")

</div>

Bon, j’ai téléchargé chillispot…  
J’ai regardé la doc mais c’est bien confus…  
Si je souhaite uniquement partager ma connection internet en WPA comment je dois faire ?

---

<div class="post-metadata">

**Author:** ![agentsteel](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/a/97f17d/32.png) [@agentsteel](https://www.debian-fr.org/u/agentsteel)\
**Post date:** [Février 21, 2016, 5:37 UTC](https://www.debian-fr.org/t/hotspot-sous-linux/58193/10 "2016-02-21T17:37:59Z")

</div>

Pas (encore) vu de GUI pour ce genre de programme, malgré mes recherches.

Rien n’empêche de programmer une GUI pour piloter les scripts vus plus haut  
(ça doit pouvoir se faire rapidement en GTK+ ou en QT)

---

<div class="post-metadata">

**Author:** ![N3mesis98](https://www.debian-fr.org/user_avatar/www.debian-fr.org/n3mesis98/32/3002_2.png) [@N3mesis98](https://www.debian-fr.org/u/N3mesis98)\
**Post date:** [Février 21, 2016, 5:38 UTC](https://www.debian-fr.org/t/hotspot-sous-linux/58193/11 "2016-02-21T17:38:05Z")

</div>

[quote=“agentsteel”]Pas (encore) vu de GUI pour ce genre de programme, malgré mes recherches.

Rien n’empêche de programmer une GUI pour piloter les scripts vus plus haut  
(ça doit pouvoir se faire rapidement en GTK+ ou en QT)[/quote]

Oui, je pourrais le faire normalement en Qt (pyside), mais il faudrait auparavant que j’arrive a comprendre le fonctionnement de chillispot ^^

---

<div class="post-metadata">

**Author:** ![agentsteel](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/a/97f17d/32.png) [@agentsteel](https://www.debian-fr.org/u/agentsteel)\
**Post date:** [Février 21, 2016, 5:38 UTC](https://www.debian-fr.org/t/hotspot-sous-linux/58193/12 "2016-02-21T17:38:05Z")

</div>

En fait tu n’avais pas précisé ton but initial.

Si c’est juste pour créer un hotspot tout simple, pour un usage familial ; un script suffirait.

Mais si tu veux créer un point d’accès avec portail captif (usage hors-familial) :

dans ce cas, chilispot n’est plus trop vivant 😉

mieux vaudrait s’orienter vers CoovaChilli  
[coova.org/CoovaChilli](http://www.coova.org/CoovaChilli)

Ou encore, se tourner vers les distros firewall (pfsense comme l’a dit P’tit Nico), ou équivalent :

[en.wikipedia.org/wiki/Captive\_portal](https://en.wikipedia.org/wiki/Captive_portal)

Ce n’est pas si compliqué mais il faut effectivement une machine dédiée (ou une machine virtuelle 😉 )

EDIT Il y a ça aussi (en français) : [alcasar.net/](http://www.alcasar.net/)

---

<div class="post-metadata">

**Author:** ![N3mesis98](https://www.debian-fr.org/user_avatar/www.debian-fr.org/n3mesis98/32/3002_2.png) [@N3mesis98](https://www.debian-fr.org/u/N3mesis98)\
**Post date:** [Février 21, 2016, 5:38 UTC](https://www.debian-fr.org/t/hotspot-sous-linux/58193/13 "2016-02-21T17:38:06Z")

</div>

Oui, j’aurais du preciser ça plus tot…  
Personnellement, moi il me faut juste un moyen de partager ma connexion wifi tout con avec un code WPA/WEP.  
Malheureusement, je ne suis franchement pas un as dans tout ce qui concerne le reseau, donc je me vois mal faire un script a ce niveau ^^

---

<div class="post-metadata">

**Author:** ![agentsteel](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/a/97f17d/32.png) [@agentsteel](https://www.debian-fr.org/u/agentsteel)\
**Post date:** [Février 21, 2016, 5:38 UTC](https://www.debian-fr.org/t/hotspot-sous-linux/58193/14 "2016-02-21T17:38:06Z")

</div>

une petite recherche dans un moteur avec les mots-clé “raspberry wireless hotspot script”, et tu devrais finir par trouver un script tout fait (c’est la grosse mode les hotspots avec un raspberry pi 😛 )

---

<div class="post-metadata">

**Author:** ![N3mesis98](https://www.debian-fr.org/user_avatar/www.debian-fr.org/n3mesis98/32/3002_2.png) [@N3mesis98](https://www.debian-fr.org/u/N3mesis98)\
**Post date:** [Février 21, 2016, 5:38 UTC](https://www.debian-fr.org/t/hotspot-sous-linux/58193/15 "2016-02-21T17:38:07Z")

</div>

J’ai trouvé ça, tout préconfiguré normalement : [github.com/harryallerston/RPI-Wireless-Hotspot](https://github.com/harryallerston/RPI-Wireless-Hotspot)

Je me demande juste si c’est censé marché etant donné que je suis pas sur une raspberry (dans le readme il y a marquer qu’il faut raspbian ou un truc du genre)

---

<div class="post-metadata">

**Author:** ![agentsteel](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/a/97f17d/32.png) [@agentsteel](https://www.debian-fr.org/u/agentsteel)\
**Post date:** [Février 21, 2016, 5:38 UTC](https://www.debian-fr.org/t/hotspot-sous-linux/58193/16 "2016-02-21T17:38:07Z")

</div>

Prends pas ça, le script va écraser tes fichiers de config réseau…

bon attends 2 secondes, j’adapte mon script

---

<div class="post-metadata">

**Author:** ![agentsteel](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/a/97f17d/32.png) [@agentsteel](https://www.debian-fr.org/u/agentsteel)\
**Post date:** [Février 21, 2016, 5:38 UTC](https://www.debian-fr.org/t/hotspot-sous-linux/58193/17 "2016-02-21T17:38:08Z")

</div>

Voilà, testé de mon côté, ça fonctionne 😛

[code]#!/bin/bash

# 

# Wifi Hotspot script

# 

# Quickly create a wireless hotspot to share access from your wired network

# 

# [http://agentoss.wordpress.com](http://agentoss.wordpress.com)

# 

# hardware requirements : 1 ethernet NIC + 1 wireless NIC (must support hostap mode)

# software requirements : iptables, hostapd, dnsmasq, dhclient (or dhcpcd)

# 

# This is a standalone script, it will not use your existing configuration files

# (for wpa\_supplicant or hostapd)

# 

# Wireless will use WPA/WPA2 encryption.

# 

# BEFORE STARTING THIS SCRIPT :

# - you must have root rights

# - stop your wireless connection manager (networkmanager, wicd, etc…)

# - disable your firewall

# - disable power management (prevent the computer to go into suspend mode when unused)

# 

# This script has been tested on Debian 7 (Wheezy), but should work on other Linux systems with minor adaptations.

# this is the wireless interface we use to create our new AP

WLAN\_AP=«&nbsp;wlan0&nbsp;»

# your new AP’s SSID

WLAN\_AP\_SSID=«&nbsp;MY\_NEW\_SSID&nbsp;»

# Change passphrase here

WLAN\_AP\_PASSPHRASE=«&nbsp;myinsecurepassphrase&nbsp;»

# change channel if needed

WLAN\_AP\_CHANNEL=6  
WLAN\_AP\_IP=«&nbsp;192.168.7.1&nbsp;»  
WLAN\_AP\_DHCP\_RANGE=«&nbsp;192.168.7.10,192.168.7.20&nbsp;»

# temp files (will contain clear passphrases!)

HOSTAP\_TEMP\_CONF=«&nbsp;/root/hostap\_temp.conf&nbsp;»

# Path for used commands (adapt to your system)

DHCPCD=«&nbsp;/sbin/dhclient&nbsp;»  
HOSTAPD=«&nbsp;/usr/sbin/hostapd&nbsp;»  
DNSMASQ=«&nbsp;/usr/sbin/dnsmasq&nbsp;»  
IPTABLES=«&nbsp;/sbin/iptables&nbsp;»

# Main program

# check if we are root

if [[$EUID -ne 0]]; then  
echo `basename $0` «&nbsp;: must be run as root!&nbsp;» 1\>&2  
exit 1  
fi

# check for software we need

if [[! -x $DHCPCD]]; then  
echo «&nbsp;FATAL: $DHCPCD not found!&nbsp;»; exit 1  
fi  
if [[! -x $HOSTAPD]]; then  
echo «&nbsp;FATAL: $HOSTAPD not found!&nbsp;»; exit 1  
fi  
if [[! -x $DNSMASQ]]; then  
echo «&nbsp;FATAL: $DNSMASQ not found!&nbsp;»; exit 1  
fi  
if [[! -x $IPTABLES]]; then  
echo «&nbsp;FATAL: $IPTABLES not found!&nbsp;»; exit 1  
fi

# check for wireless interfaces

ifconfig $WLAN\_STA 1\>&2\>/dev/null  
if [[$? -ne 0]]; then  
echo «&nbsp;FATAL: Wireless interface $WLAN\_STA unavailable!&nbsp;»; exit 1  
fi

# some cleanup

# kill existing wireless connections

$DHCPCD -x $WLAN\_AP 2\>/dev/null  
killall wpa\_supplicant 2\>/dev/null

# kill running hostapd daemon if it exists

killall hostapd 2\>/dev/null

# kill dnsmasq dhcp

killall dnsmasq 2\>/dev/null

# empty existing temp.conf files, for security

> $HOSTAP\_TEMP\_CONF

# stop the repeater? then just exit, we have already cleaned up!

if [«&nbsp;$1&nbsp;» == «&nbsp;stop&nbsp;»]; then  
echo «&nbsp;Repeater has been stopped.&nbsp;»  
exit 0;  
fi

# else, continue and create our AP

echo "Please wait, starting up… "

# create temp wpa\_supplicant.conf file for our STA interface

cat \>$HOSTAP\_TEMP\_CONF \<\<EOF  
interface=$WLAN\_AP  
country\_code=FR  
ieee80211d=1  
ssid=$WLAN\_AP\_SSID  
hw\_mode=g  
channel=$WLAN\_AP\_CHANNEL  
wme\_enabled=0  
macaddr\_acl=0  
auth\_algs=1  
wpa=2  
wpa\_passphrase=$WLAN\_AP\_PASSPHRASE  
wpa\_key\_mgmt=WPA-PSK  
wpa\_pairwise=TKIP  
rsn\_pairwise=CCMP  
EOF

# start hostapd daemon to create the «&nbsp;hotspot&nbsp;» AP

$HOSTAPD -B $HOSTAP\_TEMP\_CONF  
if [[$? -ne 0]]; then  
echo «&nbsp;FATAL: unable to start $WLAN\_AP interface (hostapd)!&nbsp;»; exit 1  
fi

# assign an IP address to the AP, and start a new DHCP server

ifconfig $WLAN\_AP $WLAN\_AP\_IP netmask 255.255.255.0  
$DNSMASQ --dhcp-range=$WLAN\_AP\_DHCP\_RANGE --interface=$WLAN\_AP  
if [[$? -ne 0]]; then  
echo «&nbsp;FATAL: unable to start dhcp server! (dnsmasq)&nbsp;»; exit 1  
fi

# enable packet forwarding and add firewall rules to allow forwarding packets

# between our 2 network interfaces.

IF\_IN=«&nbsp;eth0&nbsp;»  
IF\_OUT=$WLAN\_AP

# warning : permissive firewall rules here. Adapt to your liking.

sysctl -w net.ipv4.ip\_forward=1  
$IPTABLES -F  
$IPTABLES -X  
$IPTABLES -P INPUT ACCEPT  
$IPTABLES -P OUTPUT ACCEPT  
$IPTABLES -P FORWARD ACCEPT  
$IPTABLES -t nat -A POSTROUTING -o $IF\_IN -j MASQUERADE  
$IPTABLES -A FORWARD -i $IF\_IN -o $IF\_OUT -m state --state RELATED,ESTABLISHED -j ACCEPT  
$IPTABLES -A FORWARD -i $IF\_OUT -o $IF\_IN -j ACCEPT

echo «&nbsp;-------------------------------------------------------------------------&nbsp;»  
echo «&nbsp;Wireless Access Point "$WLAN\_AP\_SSID" is up!&nbsp;»  
echo «&nbsp;To kill it : `basename $0` stop&nbsp;»

exit 0  
[/code]

---

<div class="post-metadata">

**Author:** ![N3mesis98](https://www.debian-fr.org/user_avatar/www.debian-fr.org/n3mesis98/32/3002_2.png) [@N3mesis98](https://www.debian-fr.org/u/N3mesis98)\
**Post date:** [Février 21, 2016, 5:38 UTC](https://www.debian-fr.org/t/hotspot-sous-linux/58193/18 "2016-02-21T17:38:08Z")

</div>

Bon, jusqu’ici ça marche a moitié.  
J’ai bien un hotspot de créé, mais je n’ai pas acces a internet depuis l’autre PC.  
Je me demande si ça ne viens pas du fait que je n’ai pas modifié ces lignes:

`WLAN_AP_IP="192.168.7.1"
WLAN_AP_DHCP_RANGE="192.168.7.10,192.168.7.20"`

Sinon, comment ça se passe avec un proxy ?  
Parce que moi je dois en permanence utiliser un proxy pour la connexion a internet. J’imagine que normalement, a partir du moment ou moi j’ai configuré le proxy global, la personne a qui je passe internet n’aura pas a le configurer non ?  
Parce que sur l’autre PC j’ai essayé avec et sans proxy et je n’ai pas reussi a me connecter a internet (impossible d’avoir un retour avec ping [google.fr](http://google.fr)).

En tout cas c’est du beau script sinon ^^

---

<div class="post-metadata">

**Author:** ![agentsteel](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/a/97f17d/32.png) [@agentsteel](https://www.debian-fr.org/u/agentsteel)\
**Post date:** [Février 21, 2016, 5:38 UTC](https://www.debian-fr.org/t/hotspot-sous-linux/58193/19 "2016-02-21T17:38:09Z")

</div>

Tu as bien ton interface filaire configurée (eth0)?  
Le script ne la modifie pas. Donc si elle n’est pas “up”, pas d’internet.

Si tu es en dhcp, un petit

```auto

```

avant de lancer le script (et désactiver aussi le gestionnaire de réseau s’il y’en a un : network-manager, wicd…)

Pour la plage d’IP du hotspot, tu peux la changer, du moment ou cela n’interfère pas avec la plage de ton réseau déjà en place (souvent 192.168.0.x ou 192.168.1.x avec les box adsl)

---

<div class="post-metadata">

**Author:** ![N3mesis98](https://www.debian-fr.org/user_avatar/www.debian-fr.org/n3mesis98/32/3002_2.png) [@N3mesis98](https://www.debian-fr.org/u/N3mesis98)\
**Post date:** [Février 21, 2016, 5:38 UTC](https://www.debian-fr.org/t/hotspot-sous-linux/58193/20 "2016-02-21T17:38:12Z")

</div>

Hmmm, ça viens peut etre du fait qu’il faut que j’installe mon driver ethernet…  
Je vais regler ce probleme puis j’essaierais a nouveau ton script.

En tout cas merci bien

[Page suivante](https://www.debian-fr.org/t/hotspot-sous-linux/58193.md?page=2)
