Linux Raspberry as access point - omartek/linux_variePerLaboratorio GitHub Wiki

Table of Contents

Trasformare Raspberry in un Router/AccessPoint

Guida estratta dal sito ufficiale RaspberryPI.org

Installare i software

Aggiorna il SO

 sudo apt-get update
 sudo apt-get upgrade

e installare i seguenti pacchetti software:

 sudo apt-get install dnsmasq hostapd

Spegni i servizi dns e AP appena installati in quanto vanno configurati:

 sudo systemctl stop dnsmasq
 sudo systemctl stop hostapd

Configurare la scheda di rete WiFi

Per funzionare da server il RaspberryPi deve avere un indirizzo IP statico assegnato alla porta wireless. Assegneremo al server l'indirizzo IP 192.168.4.1. Si presume inoltre che il dispositivo wireless in uso sia wlan0.

Per fare ciò modifichiamo il file di configurazione di dhcpcd con:

 sudo nano /etc/dhcpcd.conf
 ''# modifichiamo la riga relativa''
 interface wlan0
    static ip_address=192.168.4.1/24
 ''e riavviamo il servizio''
 sudo service dhcpcd restart

Configurazione del DHCP

Il servizio DHCP è fornito da dnsmasq. Per impostazione predefinita, il file di configurazione contiene molte informazioni che non sono necessarie ed è più facile iniziare da zero.

Rinominare questo file di configurazione e modificarne uno nuovo:

 sudo mv /etc/dnsmasq.conf /etc/dnsmasq.conf.orig  
 sudo nano /etc/dnsmasq.conf

Digita o copia le seguenti informazioni nel file di configurazione di dnsmasq e salvalo:

 interface=wlan0      # Use the require wireless interface - usually
 wlan0
   dhcp-range=192.168.4.2,192.168.4.20,255.255.255.0,24h

Quindi wlan0, forniremo indirizzi IP tra 192.168.4.2 e 192.168.4.20, con un lease time di 24 ore.

Configurazione del software host AP

Modificare il file di configurazione hostapd, situato in /etc/hostapd/hostapd.conf.

 sudo nano /etc/hostapd/hostapd.conf
 ''# Aggiungi le informazioni di seguito al file di configurazione. Questa configurazione presuppone che stiamo usando il canale 7, con un nome di rete di NameOfNetwork e una password AardvarkBadgerHedgehog. Si noti che il nome e la password non devono contenere virgolette. La passphrase deve avere una lunghezza compresa tra 8 e 64 caratteri.''
 interface=wlan0
 driver=nl80211
 ssid=NameOfNetwork #nome SSID
 hw_mode=g
 channel=7 #canale trasmissione
 wmm_enabled=0
 macaddr_acl=0
 auth_algs=1
 ignore_broadcast_ssid=0
 wpa=2
 wpa_passphrase=password_MIN8_caratteri_NO_virgolette
 wpa_key_mgmt=WPA-PSK
 wpa_pairwise=TKIP
 rsn_pairwise=CCMP

Dire al sistema dove trovare questo file:

 sudo nano /etc/default/hostapd
 ''#nella riga seguente''
 DAEMON_CONF="/etc/hostapd/hostapd.conf"

Avvaire i servizi

Ora avvia i servizi rimanenti:

 sudo systemctl start hostapd
 sudo systemctl start dnsmasq

Aggiungere routing e masquerade

Modifica

 sudo nano /etc/sysctl.conf
                 #''e decommenta questa riga:'
 net.ipv4.ip_forward=1

Aggiungi un masquerade per il traffico in uscita su eth0:

 sudo iptables -t nat -A  POSTROUTING -o eth0 -j MASQUERADE
                 #''e salva le regole''
 sudo sh -c "iptables-save > /etc/iptables.ipv4.nat"

Modifica /etc/rc.local per installare queste regole all'avvio.

 sudo nano /etc/rc.local
                 #''e aggiungi questo appena sopra "exit 0"'' 
 iptables-restore < /etc/iptables.ipv4.nat

Condividere la connessione tramite Internet proveniente dalla Ethernet (Bridge)

Per condividere la connessione proveniente dalla porta Ethernet deve essere installato un "bridge" tra il dispositivo wireless e il dispositivo Ethernet. Installare i seguenti pacchetti per abilitare l'installazione del punto di accesso e il bridging:

 sudo apt-get install hostapd bridge-utils

Impostare indirizzo IP di fallback

Al termine del file etc/dhcpcd.conf aggiungere le seguenti righe. Permette di collegarsi direttamente a Raspberry collegandosi direttamente via cavo. Ovviamente dovrà esserci attivo ssh o Vnc per poter operare da remoto.

 interface eth0
 fallback ipstatic-eth0

Categoria:Aiuto

⚠️ **GitHub.com Fallback** ⚠️