Sommario:
- Forniture
- Passaggio 1: installa e aggiorna Raspbian
- Passaggio 2: installa Hostapd e Dnsmasq
- Passaggio 3: configurare un IP statico per l'interfaccia Wlan0
- Passaggio 4: configurare il server DHCP (dnsmasq)
- Passaggio 5:
- Passaggio 6: impostare l'inoltro del traffico
- Passaggio 7: aggiunta di una nuova regola Iptables
- Passaggio 8: abilitazione della connessione Internet
- Passaggio 9: riavviare
- Passaggio 10: Finisci
Video: Raspberry Pi -> Hotspot Wi-Fi: 10 passaggi
2025 Autore: John Day | [email protected]. Ultima modifica: 2025-01-10 13:47
Sei mai andato in un posto senza wifi e i tuoi amici non darebbero hotspot? Ho, e in questo tutorial, ti mostrerò passo dopo passo come trasformare il tuo Raspberry Pi in un hotspot Wi-Fi. Ancora meglio, questo progetto ti costerà meno di 100 USD!
Forniture
Distinta:
Raspberry Pi 3 (tecnicamente funzionerà qualsiasi modello, ma trovo questo modello più coerente):
Wifi Stick (questo è opzionale in quanto il raspberry pi ha già il wifi integrato, ma il segnale sarà migliore con uno stick wifi): https://www.amazon.com/Adapter-1200Mbps-TECHKEY-Wireless-Network-300Mbps/dp /B07J65G9DD/ref=sr_1_3?keywords=wifi+stick&qid=1583146106&sr=8-3
Avrai anche bisogno di un mouse con tastiera, uno schermo/monitor e una fonte di alimentazione che ho preso da un powerbank, (supponendo che tu li abbia già).
Passaggio 1: installa e aggiorna Raspbian
Aggiorna Raspbian digitando questi comandi:
sudo apt-get updateudo apt-get upgrade
Se ottieni un aggiornamento, è una buona idea riavviare con sudo reboot.
Passaggio 2: installa Hostapd e Dnsmasq
Questi sono i due programmi che useremo per trasformare il tuo Raspberry Pi in un punto di accesso wireless. Per ottenerli, digita queste righe nel terminale:
sudo apt-get install hostapd
sudo apt-get install dnsmasq
Entrambe le volte, dovrai premere y per continuare. hostapd è il pacchetto che ci consente di creare un hotspot wireless utilizzando un Raspberry Pi e dnsmasq è un server DHCP e DNS di facile utilizzo. Modificheremo i file di configurazione dei programmi tra un momento, quindi spegniamo i programmi prima di iniziare ad armeggiare:
sudo systemctl stop hostapd
sudo systemctl stop dnsmasq
Passaggio 3: configurare un IP statico per l'interfaccia Wlan0
Per i nostri scopi qui, presumo che stiamo utilizzando gli indirizzi IP della rete domestica standard, come 192.168.###.###. Dato questo presupposto, assegniamo l'indirizzo IP 192.168.0.10 a wlan0
interfaccia modificando il file di configurazione dhcpcd. Inizia a modificare con questo comando:
sudo nano /etc/dhcpcd.conf
Ora che sei nel file, aggiungi le seguenti righe alla fine:
interfaccia wlan0
statico ip_address=192.168.0.10/24
nega interfacce eth0
nega interfacce wlan0
(Le ultime due righe sono necessarie per far funzionare il nostro bridge, ma ne parleremo al punto 8.) Successivamente, premi Ctrl+X, quindi Y, quindi Invio per salvare il file e uscire dall'editor.
Passaggio 4: configurare il server DHCP (dnsmasq)
Useremo dnsmasq come nostro server DHCP. L'idea di un server DHCP è di
distribuire dinamicamente i parametri di configurazione della rete, come gli indirizzi IP, per interfacce e servizi. Il file di configurazione predefinito di dnsmasq contiene molte informazioni non necessarie, quindi è più facile per noi iniziare da zero. Rinominiamo il file di configurazione predefinito e scriviamone uno nuovo:
sudo mv /etc/dnsmasq.conf /etc/dnsmasq.conf.orig
sudo nano /etc/dnsmasq.conf
Modificherai un nuovo file ora e, con quello vecchio rinominato, questo è il file di configurazione che utilizzerà dnsmasq. Digita queste righe nel tuo nuovo file di configurazione:
interfaccia=wlan0
dhcp-range=192.168.0.11, 192.168.0.30, 255.255.255.0, 24 ore
Le linee che abbiamo aggiunto indicano che forniremo indirizzi IP tra 192.168.0.11 e 192.168.0.30 per l'interfaccia wlan0.
Passaggio 5:
Un altro file di configurazione! Questa volta, stiamo scherzando con il file di configurazione hostapd. Apri su:
sudo nano /etc/hostapd/hostapd.conf
Questo dovrebbe creare un file nuovo di zecca. Digita questo:
interfaccia=wlan0
ponte=br0
hw_mode=g
canale=7
wmm_enabled=0
macaddr_acl=0
auth_algs=1
ignore_broadcast_ssid=0
wpa=2
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP
ssid=RETE
wpa_passphrase=PASSWORD
Nota che dove ho "NETWORK" e "PASSWORD", dovresti trovare i tuoi nomi. Ecco come ti unirai alla rete del Pi da altri dispositivi. Dobbiamo ancora mostrare al sistema la posizione del file di configurazione:
sudo nano /etc/default/hostapd
In questo file, rintraccia la riga che dice #DAEMON_CONF=”” – cancella quel # e metti il percorso del nostro file di configurazione tra virgolette, in modo che assomigli a questo: DAEMON_CONF="/etc/hostapd/hostapd.conf" Il # impedisce che la riga venga letta come codice, quindi in pratica stai dando vita a questa riga qui mentre le dai il percorso giusto al nostro file di configurazione.
Passaggio 6: impostare l'inoltro del traffico
L'idea qui è che quando ti connetti al tuo Pi, inoltrerà il traffico sul tuo cavo Ethernet. Quindi avremo wlan0 forward tramite cavo Ethernet al tuo modem. Ciò comporta la modifica di un altro file di configurazione:
sudo nano /etc/sysctl.conf
Ora trova questa riga: #net.ipv4.ip_forward=1… ed elimina il "#" - lasciando il resto, quindi si legge solo:
net.ipv4.ip_forward=1
Passaggio 7: aggiunta di una nuova regola Iptables
Successivamente, aggiungeremo il mascheramento IP per il traffico in uscita su eth0 utilizzando iptables:
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
…e salva la nuova regola iptables:
sudo sh -c "iptables-save > /etc/iptables.ipv4.nat"
Per caricare la regola all'avvio, dobbiamo modificare il file /etc/rc.local e aggiungere la seguente riga appena sopra la riga exit 0:
iptables-restore < /etc/iptables.ipv4.nat
Passaggio 8: abilitazione della connessione Internet
Ora il Raspberry Pi funge da punto di accesso a cui possono connettersi altri dispositivi. Tuttavia, questi dispositivi non possono ancora utilizzare il Pi per accedere a Internet. Per rendere possibile, abbiamo bisogno di costruire un ponte che passerà tutto il traffico tra le interfacce wlan0 ed eth0.
Per costruire il bridge, installiamo un altro pacchetto:
sudo apt-get install bridge-utils
Siamo pronti per aggiungere un nuovo bridge (chiamato br0):
sudo brctl addbr br0
Successivamente, collegheremo l'interfaccia eth0 al nostro bridge:
sudo brctl addif br0 eth0
Infine, modifichiamo il file delle interfacce:
sudo nano /etc/network/interfaces
…e aggiungi le seguenti righe alla fine del file:
auto br0
iface br0 inet manuale
bridge_ports eth0 wlan0
Passaggio 9: riavviare
Ora che siamo pronti, riavviamo con sudo reboot.
Ora il tuo Pi dovrebbe funzionare come punto di accesso wireless. Provalo saltando su un altro dispositivo e cercando il nome della rete che hai usato nel passaggio 5.
Passaggio 10: Finisci
Sì, ora puoi vantarti con i tuoi amici del tuo nuovo server Wi-Fi hotspot!