créer un réseau wifi afin de partager sa connexion

Bonjour,
ça fait 1 mois que j’ai installé debian wheezy et en fait je voudrais créer un réseau wifi pour partager ma connexion au réseau local afin que je puisse utiliser cette connexion sans fil sur mon téléphone portable pour avoir accès internet comme connectify sous windows par exemple.

J’ai essayé plusieurs tutos sur internet en vain.

Merci d’avance pour votre aide.

Bonjour

Pour créer un point d’accès wifi, il existe hostapd.

Votre carte réseau est-elle prise en charge par hostapd?

La partie sur laquelle votre carte ethernet est relié (une box?) fournit-elle un serveur dhcp avec des adresses de type privés comme 192.168.X.Y?

Votre demande manque d’information.

Bonjour,
Merci pour votre réponse.
J’utilise un câble réseau pour me connecter pas un box.
mon fichier /etc/network/interfaces donne

The loopback network interface

auto lo
iface lo inet loopback

The primary network interface

allow-hotplug eth0
iface eth0 inet dhcp

#mon wifi mais ne marche pas
auto wlan0
iface wlan0 inet static
wpa-ssid RX
wpa-psk
address
netmask
gateway

le resultat de ma commande ifconfig -a donne:
eth0 Link encap:Ethernet HWaddr a8:eb:a8:eb:b0:b8
inet adr:10.42.239.177 Bcast:10.42.255.255 Masque:255.255.0.0
adr inet6: fe80::3aea:a7ff:feeb:b028/64 Scope:Lien
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:3121093 errors:0 dropped:0 overruns:0 frame:0
TX packets:983302 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 lg file transmission:1000
RX bytes:3158652997 (2.9 GiB) TX bytes:75633045 (72.1 MiB)
Interruption:40 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:181 errors:0 dropped:0 overruns:0 frame:0
TX packets:181 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 lg file transmission:0
RX bytes:20888 (20.3 KiB) TX bytes:20888 (20.3 KiB)

wlan0 Link encap:Ethernet HWaddr 88:eb:85:eb:b0:2c
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)

Je répète :
Votre carte réseau est-elle prise en charge par hostapd?
Code:

Ok, testons pour une version simple de partage avec un bridge de la carte wifi et la carte ethernet.

Déjà, même si le fichier /etc/network/interfaces n’est pas des plus imposant, faites en une sauvegarde.

1/ Bridger la carte wifi et la carte ethernet :
copiez/coller/entrer

sudo apt-get install bridge-utils -y
sudo brctl addbr br0
sudo brctl addif br0 eth0
cat << EOF > /etc/network/interfaces
# The loopback network interface
auto lo
iface lo inet loopback

auto br0
iface br0 inet dhcp
bridge_ports eth0
EOF

2/ Installer hostapd
copiez/coller/entrer

cat << EOF > /root/installhostapd
#!/bin/bash
# Definition de quelques couleurs
red='\e[0;31m'
redhl='\e[0;31;7m'
RED='\e[1;31m'
blue='\e[0;34m'
BLUE='\e[1;34m'
cyan='\e[0;36m'
CYAN='\e[1;36m'
NC='\e[0m' # No Colo


if [ \$USER != "root" ]
then
    echo -e \$RED"Vous devez être root pour lancer ce progamme!"\$NC
    exit 1
fi

VERSION=2.4
apt-get install libssl-dev -y
apt-get install libnl-genl-3-dev -y
apt-get install libnl-3-dev -y
apt-get install libnl-dev -y

cd /usr/local/src/
rm -R hostapd-\${VERSION}
wget http://w1.fi/releases/hostapd-\${VERSION}.tar.gz
tar xzvf hostapd-\${VERSION}.tar.gz
cd hostapd-\${VERSION}/hostapd
cp defconfig .config
cat << EOF >> .config
CONFIG_ACS=y
CONFIG_IEEE80211R=y
CONFIG_IEEE80211N=y
CONFIG_DRIVER_NL80211=y
# CONFIG_LIBNL32=y
CONFIG_LIBNL20=y
EOF
echo EOF >> /root/installhostapd
cat << EOF >> /root/installhostapd
make
make install
# checkinstall
cp hostapd /usr/local/sbin/
EOF
chmod +x /root/installhostapd
/root/installhostapd

3/ Creer le fichier /etc/hostapd.conf
copiez/coller/entrer

[code]cat << EOF > /etc/hostapd.conf

hostapd configuration file

ctrl_interface=/var/run/hostapd
interface=wlan0
driver=nl80211
bridge=br0

IEEE 802.11

ssid=Hotspot
hw_mode=g
channel=0
max_num_sta=128
auth_algs=1

disassoc_low_ack=1

DFS

ieee80211h=1
ieee80211d=1
country_code=FR

IEEE 802.11n

ieee80211n=1
ht_capab=[HT40+][SHORT-GI-40][DSSS_CCK-40]

wds_sta=1

WPA/IEEE 802.11i

wpa=3
wpa_key_mgmt=WPA-PSK
wpa_passphrase=unmotdepass
wpa_pairwise=TKIP CCMP
EOF[/code]
4/ redémarrer le reseaux, activer le forwarding et lancer hostapd
copiez/coller/entrer

sysctl -w net.ipv4.ip_forward=1 /etc/init.d/networking restart /usr/local/sbin/hostapd /etc/hostapd.conf

Oui ma carte est prise en compte le resultat de la commande donne :

 lspci -k | grep -A 3 -i "network"
01:00.0 Network controller: Atheros Communications Inc. AR9485 Wireless Network Adapter (rev 01)
	Subsystem: Hewlett-Packard Company AR9485/HB125 802.11bgn 1×1 Wi-Fi Adapter
	Kernel driver in use: ath9k
02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8101E/RTL8102E PCI Express Fast Ethernet controller (rev 05)

En fait j’ai essayé votre code mais ça ne marche pas je bloque sur la partie installer hostapd.
j’ai des messages d’erreurs.

En fait j’ai ces erreurs dans l’étape 2


make: pkg-config : commande introuvable
make: pkg-config : commande introuvable
../src/drivers/driver_nl80211.c:17:31: fatal error: netlink/genl/genl.h: No such file or directory
compilation terminated.
make: *** [../src/drivers/driver_nl80211.o] Erreur 1
make: pkg-config : commande introuvable
make: pkg-config : commande introuvable
../src/drivers/driver_nl80211.c:17:31: fatal error: netlink/genl/genl.h: No such file or directory
compilation terminated.
make: *** [../src/drivers/driver_nl80211.o] Erreur 1
/root/installhostapd: ligne39: checkinstall : commande introuvable
cp: impossible d'évaluer « hostapd »: No such file or directory

apt-get install libnl-dev et dans le fichier /root/installhostapd supprime la ligne checkinstall.
Il faut aussi activer le routage ip[code] sysctl -w net.ipv4.ip_forward=1

[/code]

Bonjour,
désolé ça ne marche pas j’ai des messsages d’erreurs et après ma connexion au réseau local ne marche plus je suis obligé de modifier le fichier interfaces et rédémarrer le pc.

Merci pour votre aide

/root/installhostapd donne :


../src/crypto/tls_openssl.c:19:25: fatal error: openssl/ssl.h: No such file or directory
compilation terminated.
make: *** [../src/crypto/tls_openssl.o] Erreur 1
make: pkg-config : commande introuvable
make: pkg-config : commande introuvable
../src/crypto/tls_openssl.c:19:25: fatal error: openssl/ssl.h: No such file or directory
compilation terminated.
make: *** [../src/crypto/tls_openssl.o] Erreur 1
cp: impossible d'évaluer « hostapd »: No such file or directory

Il manque (encore :013 ) le paquet “libssl-dev”

apt-get install libssl-dev

J’ai modifié le script dans la partie 2, vous pouvez le copier/coller/puis entrer

mon fichier installhostpad après modification est:

#!/bin/bash
# Definition de quelques couleurs
red='\e[0;31m'
redhl='\e[0;31;7m'
RED='\e[1;31m'
blue='\e[0;34m'
BLUE='\e[1;34m'
cyan='\e[0;36m'
CYAN='\e[1;36m'
NC='\e[0m' # No Colo


if [ root != "root" ]
then
    echo -e "Vous devez être root pour lancer ce progamme!"
    exit 1
fi

VERSION=2.4

apt-get install libnl-genl-3-dev -y
apt-get install libnl-3-dev -y
apt-get install libnl-dev
apt-get install libssl-dev
cd /usr/local/src/
wget http://w1.fi/releases/hostapd-${VERSION}.tar.gz
tar xzvf hostapd-${VERSION}.tar.gz
cd hostapd-${VERSION}/hostapd
cp defconfig .config
cat << EOF >> .config
CONFIG_ACS=y
CONFIG_IEEE80211R=y
CONFIG_IEEE80211N=y
CONFIG_DRIVER_NL80211=y
CONFIG_LIBNL32=y
# CONFIG_LIBNL20=y
EOF
make
make install
cp hostapd /usr/local/sbin/

A l’éxécution j’ai comme message:

make: pkg-config : commande introuvable
make: pkg-config : commande introuvable
  CC  ../src/crypto/tls_openssl.c
make: pkg-config : commande introuvable
  CC  ../src/crypto/crypto_openssl.c
make: pkg-config : commande introuvable
  CC  ../src/crypto/aes-omac1.c
make: pkg-config : commande introuvable
  CC  ../src/crypto/sha1-prf.c
make: pkg-config : commande introuvable
  CC  ../src/crypto/sha1-tlsprf.c
make: pkg-config : commande introuvable
  CC  ../src/crypto/sha256-prf.c
make: pkg-config : commande introuvable
  CC  ../src/crypto/sha256-kdf.c
make: pkg-config : commande introuvable
  CC  ../src/crypto/random.c
make: pkg-config : commande introuvable
  CC  ../src/ap/wmm.c
make: pkg-config : commande introuvable
  CC  ../src/ap/ap_list.c
make: pkg-config : commande introuvable
  CC  ../src/ap/ieee802_11.c
make: pkg-config : commande introuvable
  CC  ../src/ap/hw_features.c
make: pkg-config : commande introuvable
  CC  ../src/ap/dfs.c
make: pkg-config : commande introuvable
  CC  ../src/ap/ieee802_11_ht.c
make: pkg-config : commande introuvable
  CC  ../src/drivers/driver_common.c
make: pkg-config : commande introuvable
  CC  ../src/ap/acs.c

Comme les précédantes compilations ne sont pas propre, il faut nettoyer (la compilation), ou supprimer le répertoire et relancer le script que j’ai modifié en 2 :wink:

Il ya eu un petit changement :
j’ai les messages suivants:

./src/drivers/driver_nl80211.c:17:31: fatal error: netlink/genl/genl.h: No such file or directory
compilation terminated.
make: *** [../src/drivers/driver_nl80211.o] Erreur 1
../src/drivers/driver_nl80211.c:17:31: fatal error: netlink/genl/genl.h: No such file or directory
compilation terminated.
make: *** [../src/drivers/driver_nl80211.o] Erreur 1
cp: impossible d'évaluer « hostapd »: No such file or directory

Copier le script en 2 et relancé, j’ai pris en compte le nettoyage du repertoire en /usr/local/src/hostapd et la bonne librairy, ici libnl-dev. Vous êtes bien en Wheezy?

En esperant qu’enfin ça fonctionne! :049

Oui j’ai un debian wheezy.
Vous pouvez me mettre le nouveau script je ne sais plus c’est lequel il faut copier.
Merci.

Ha pardon :mrgreen:

[code]cat << EOF > /root/installhostapd
#!/bin/bash

Definition de quelques couleurs

red=’\e[0;31m’
redhl=’\e[0;31;7m’
RED=’\e[1;31m’
blue=’\e[0;34m’
BLUE=’\e[1;34m’
cyan=’\e[0;36m’
CYAN=’\e[1;36m’
NC=’\e[0m’ # No Colo

if [ $USER != “root” ]
then
echo -e $RED"Vous devez être root pour lancer ce progamme!"$NC
exit 1
fi

VERSION=2.4
apt-get install libssl-dev -y
apt-get install libnl-genl-3-dev -y
apt-get install libnl-3-dev -y
apt-get install libnl-dev -y

cd /usr/local/src/
rm -R hostapd-${VERSION}
wget http://w1.fi/releases/hostapd-${VERSION}.tar.gz
tar xzvf hostapd-${VERSION}.tar.gz
cd hostapd-${VERSION}/hostapd
cp defconfig .config
cat << EOF >> .config
CONFIG_ACS=y
CONFIG_IEEE80211R=y
CONFIG_IEEE80211N=y
CONFIG_DRIVER_NL80211=y

CONFIG_LIBNL32=y

CONFIG_LIBNL20=y
EOF
echo EOF >> /root/installhostapd
cat << EOF >> /root/installhostapd
make
make install

checkinstall

cp hostapd /usr/local/sbin/
EOF
chmod +x /root/installhostapd
/root/installhostapd[/code]

J’ai un autre souci après l’étape 1 je n’ai plus de connexion internet donc j’ai fait une copie du fichier interfaces après l’étape 1.

Pour faire l’étape 2 j’utilise mon ancien fichier interfaces c’est à dire le fichier de base.

J’obtiens :

/usr/bin/ld: cannot find -lnl-genl
collect2: error: ld returned 1 exit status
make: *** [hostapd] Erreur 1
/usr/bin/ld: cannot find -lnl-genl
collect2: error: ld returned 1 exit status
make: *** [hostapd] Erreur 1
cp: impossible d'évaluer « hostapd »: No such file or directory

:013

C’est fou ça, ça ne veux pas compiler…

1/ Normalement, avec le bridge vous devriez avoir une connexion …

SVP, pouvez vous me donner le retour de la commande

ip route

Dans le fichier /etc/network/interfaces, nous allons passer br0 en statique.

le retour de ip route

ip/16 dev eth0  proto kernel  scope link  src ip