web-dev-qa-db-fra.com

Comment créer un hotspot sans connexion internet?

J'utilise XUbuntu 17.10 et j'ai créé un point d'accès wifi, le problème est que je veux utiliser ce point d'accès pour la samba et d'autres éléments ne nécessitant pas de connexion Internet. Comment puis-je créer un point d'accès Wi-Fi qui ne fait pas partage ma connexion Internet? Est-ce seulement possible?

8
zola

Une solution simple consiste à utiliser create_ap . De leur site:

create_ap est un outil qui vous aide à créer un point d'accès ouvert ou chiffré sur n'importe quel canal, à masquer votre SSID, à désactiver la communication entre clients (isolation du client), prise en charge IEEE 802.11n et 802.11ac, méthodes de partage Internet: NAT, ponté ou Aucun Partage Internet)

Dans votre cas, vous voulez créer un point d’accès avec le PC Linux sans partager Internet depuis votre clé électronique avec vos clients, mais vous pouvez effectuer d’autres tâches dans le réseau local, telles que le partage de fichiers.

Votre carte wifi doit prendre en charge la création de points d'accès

  1. Installez des paquets:

    Sudo apt install util-linux bash procps hostapd iproute2 iw haveged net-tools dnsmasq iptables
    
  2. Obtenez le package create_ap. Du terminal do

    git clone https://github.com/oblique/create_ap
    cd create_ap
    Sudo make install
    
  3. Après l’installation, vérifiez le nom de votre modem et de votre carte wifi avec ifconfig (obsolète) ou:

    iwconfig
    

    la carte wifi est généralement wlan0 ou wlp2s0 et le modem usb est eth0. le vôtre pourrait être différent

  4. Maintenant démarrez Hotspot à partir de votre Linux sans Internet:

    Sudo create_ap -n wlp2s0 MyAccessPoint
    

Vous pouvez ensuite connecter les clients. Votre internet ne serait pas partagé mais vous pouvez faire de la samba et d'autres choses sans internet

2
ptetteh227

Voici un script qui créera Hotspot mais not == partagera Ethernetnom____ avec les périphériques WiFiname__. Vous devrez changer le nom de l'interface réseau en fonction de votre système.

Tapez ip link pour les trouver. Assurez-vous également que vous avez installé dnsmasqet hostapdname__.

Sudo apt-get install ifconfig dnsmasq hostapd

Avant d'exécuter le script, vous devez arrêter --- Outil de gestion du résea qui contrôle WiFiname__.

eth-to-wifi-route.sh

#!/bin/bash

# Share Eth with WiFi Hotspot
#
# This script is created to work with Raspbian Stretch
# but it can be used with most of the distributions
# by making few changes. 
#
# Make sure you have already installed `dnsmasq` and `hostapd`
# Please modify the variables according to your need
# Don't forget to change the name of network interface
# Check them with `ifconfig`

ip_address="192.168.2.1"
netmask="255.255.255.0"
dhcp_range_start="192.168.2.2"
dhcp_range_end="192.168.2.100"
dhcp_time="12h"
eth="eth0" # replace it with Huawei 3G Modem interface
wlan="wlan0"
ssid="Arpit-Raspberry"
psk="arpit1997"

Sudo rfkill unblock wlan &> /dev/null
sleep 2

#Sudo iptables -F
#Sudo iptables -t nat -F
#Sudo iptables -t nat -A POSTROUTING -o $eth -j MASQUERADE  
#Sudo iptables -A FORWARD -i $eth -o $wlan -m state --state RELATED,ESTABLISHED -j ACCEPT  
#Sudo iptables -A FORWARD -i $wlan -o $eth -j ACCEPT 

#Sudo sh -c "echo 1 > /proc/sys/net/ipv4/ip_forward"

Sudo ifconfig $wlan $ip_address netmask $netmask

Sudo ip route del 0/0 dev $wlan &> /dev/null
a=`route | awk "/${eth}/"'{print $5+1;exit}'`
Sudo route add -net default gw $ip_address netmask 0.0.0.0 dev $wlan metric $a

echo -e "interface=$wlan \n\
bind-interfaces \n\
server=8.8.8.8 \n\
domain-needed \n\
bogus-priv \n\
dhcp-range=$dhcp_range_start,$dhcp_range_end,$dhcp_time" > /etc/dnsmasq.conf

Sudo systemctl restart dnsmasq

echo -e "interface=$wlan\n\
driver=nl80211\n\
ssid=$ssid\n\
hw_mode=g\n\
ieee80211n=1\n\
wmm_enabled=1\n\
macaddr_acl=0\n\
auth_algs=1\n\
ignore_broadcast_ssid=0\n\
wpa=2\n\
wpa_key_mgmt=WPA-PSK\n\
wpa_passphrase=$psk\n\
rsn_pairwise=CCMP" > /etc/hostapd/hostapd.conf

Sudo systemctl restart hostapd
Sudo systemctl status hostapd &> /dev/null
if [ "$?" != 0 ];then
    echo "Some Network Management tool is running, which is stopping" 
    echo "hostapd to be configured."
    echo "Please stop that and again run the script."
fi

J'ai commenté les commandes iptableet packet forwarding. Si à tout moment vous devez donner internet aux appareils, décommentez-les simplement.

Exécuter le script

Sudo bash eth-to-wifi-route.sh

Source: eth-to-wifi-route.sh

1
Arpit Agarwal