- Požadované komponenty:
- Kroky pro nastavení Raspberry Pi jako bezdrátového přístupového bodu:
- Přístup k internetu z Wi-Fi hotspotu Raspberry Pi
- Testování bezdrátového přístupového bodu Raspberry Pi:
Ahoj kluci, dnes vám ukážu, jak proměnit Raspberry Pi na bezdrátový přístupový bod, ke kterému se mohou připojit další zařízení, v podstatě přeměňujeme Raspberry Pi na bezdrátový „router“. Jako bonus vám také ukážu, jak nastavit bezdrátový přístupový bod vytvořený pro poskytování (sdílení) přístupu k internetu (s) připojeným zařízením. Pojďme tedy začít vytvářet Wi-Fi Hotspot s Raspberry Pi.
Požadované komponenty:
K nastavení Raspberry Pi jako bezdrátového přístupového bodu budou zapotřebí následující komponenty:
- Raspberry Pi 2
- 8 GB SD karta
- WiFi USB dongle
- ethernetový kabel
- Napájení pro Pi.
- Monitor (volitelně)
- Klávesnice (volitelně)
- Myš (volitelně)
Zatímco Raspberry Pi 3 a Pi nula jsou široce dostupné a mohly být použity, pro tento tutoriál budu používat Raspberry Pi 2, protože můj Pi3 je v současné době zaneprázdněn prováděním nějakého těžkého úkolu souvisejícího s počítačovým viděním, o kterém doufám, že ho budu sdílet tutoriál zde brzy. Tento postup však funguje i pro pi 3 a měl by (všimněte si zdůraznění) také pro Raspberry Pi nula W. Při použití Raspberry Pi 3 nebo Zero W nebude potřeba externí Wi-Fi modul protože tyto dvě desky již mají na palubě Wi-Fi.
Abychom podrobněji definovali cíle tohoto tutoriálu, dáme našemu Raspberry Pi možnost sloužit jako bezdrátový přístupový bod a abychom toho dosáhli, budeme muset nainstalovat a nastavit software, který vybaví Raspberry Pi touto funkcí spolu s software DHCP server poskytovat síťové adresy pro zařízení, které budou připojeny k přístupovému bodu. Abychom splnili tento softwarový požadavek, budeme používat software dnsmasq a hostapd.
Tento výukový program bude založen na Raspbian stretch OS, takže pokud budete postupovat jako obvykle, předpokládám, že jste obeznámeni s nastavením Raspberry Pi s Raspbian stretch OS a víte, jak SSH do maliny pi pomocí terminálového softwaru jako tmel. Pokud máte problémy s něčím z toho, na tomto webu najdete spoustu návodů pro Raspberry Pi, které vám mohou pomoci.
Kroky pro nastavení Raspberry Pi jako bezdrátového přístupového bodu:
Postupováním následujících klíčových kroků, jeden po druhém, budeme moci nastavit Raspberry Pi jako bezdrátový přístupový bod. Je třeba poznamenat, že některé bezdrátové USB klíče nebudou fungovat v režimu AP, ale poté, co jsem vyzkoušel tento klíč a fungovalo to, jsem v pokušení říci, že 5 z 8 klíčů bude fungovat.
Krok 1: Aktualizujte Pi
Jako obvykle aktualizujeme malinovou pí, abychom zajistili, že máme nejnovější verzi všeho. To se provádí pomocí;
sudo apt-get aktualizace
následován;
sudo apt-get upgrade
Po dokončení aktualizace restartujte své pi, abyste provedli změny.
Krok 2: Nainstalujte „ dnsmasq “ a „ hostapd “
Dále nainstalujeme software, který umožňuje nastavit pí jako bezdrátový přístupový bod, a také software, který pomáhá přiřadit síťovou adresu zařízením, která se připojují k AP. Děláme to spuštěním;
sudo apt-get install dnsmasq
následován;
sudo apt-get install hostapd
nebo to můžete zkombinovat spuštěním;
sudo apt-get install dnsmasq hostapd
Krok 3: Zastavte spuštění softwaru
Protože software ještě nemáme nakonfigurovaný, nemá smysl jej spouštět, a tak jsme jim zakázali běh v podzemí. Chcete-li to provést, spustíme následující příkazy, abychom zastavili operaci systemd .
sudo systemctl stop dnsmasq sudo systemctl stop hostapd
Krok 4: Nakonfigurujte statickou IP adresu bezdrátového portu
Potvrďte port WLAN, ke kterému je připojené bezdrátové zařízení připojeno. U mého Pi je bezdrátová síť na wlan0. Nastavení Raspberry Pi tak, aby fungovalo jako server, vyžaduje, abychom bezdrátovému portu přiřadili statickou adresu IP. Toho lze dosáhnout úpravou konfiguračního souboru dhcpcd . Chcete-li upravit konfigurační soubor, spusťte;
sudo nano /etc/dhcpcd.conf
Přejděte do dolní části konfiguračního souboru a přidejte následující řádky.
Rozhraní wlan0 static ip_address = 192.168.4.1 / 24
Po přidání řádků by konfigurační soubor měl vypadat jako na obrázku níže.
Poznámka: Tuto adresu IP lze změnit tak, aby vyhovovala vaší preferované konfiguraci.
Uložte soubor a ukončete pomocí; ctrl + x následovaný Y
Restartujte službu dhcpcd, abyste provedli změny provedené v konfiguraci pomocí;
Sudo služba dhcpcd restart
Krok 5: Nakonfigurujte server dhcpcd
Se statickou IP adresou, která je nyní nakonfigurována pro Raspberry Pi wlan, je další věcí, abychom nakonfigurovali server dhcpcd a poskytli mu rozsah IP adres, které mají být přiřazeny zařízením, která se připojují k bezdrátovému přístupovému bodu. K tomu potřebujeme upravit konfigurační soubor softwaru dnsmasq, ale konfigurační soubor softwaru obsahuje příliš mnoho informací a hodně se může pokazit. Pokud nebudou správně upraveny, namísto úprav budeme vytvářet novou konfiguraci. soubor pouze s množstvím informací, které jsou potřebné k plné funkčnosti bezdrátového přístupového bodu.
Před vytvořením nového konfiguračního souboru udržujeme starý v bezpečí přesunutím a přejmenováním.
sudo mv /etc/dnsmasq.conf /etc/dnsmasq.conf.old
Poté spusťte editor a vytvořte nový konfigurační soubor;
sudo nano /etc/dnsmasq.conf
se spuštěným editorem zkopírujte níže uvedené řádky a vložte jej nebo přímo do něj napište.
Interface = wlan0 # označte komunikační rozhraní, které je obvykle wlan0 pro bezdrátový rozsah dhcp = 192.168.4.2, 192.168.4.20, 255.255.255.0,24h
obsah souboru by měl vypadat jako na obrázku níže.
Uložte soubor a ukončete. Obsahem tohoto konfiguračního souboru je pouze určit rozsah IP adres, které lze přiřadit zařízením připojeným k bezdrátovému přístupovému bodu.
Když to uděláme, budeme moci dát identitu zařízením v naší síti.
Další sada kroků nám pomůže nakonfigurovat hostitelský software přístupového bodu, nastavit ssid, vybrat kryt atd.
Krok 6: Nakonfigurujte hostapd pro SSID a heslo
Musíme upravit konfigurační soubor hostapd (spustit sudo nano /etc/hostapd/hostapd.conf ) a přidat různé parametry pro nastavovanou bezdrátovou síť včetně ssid a hesla. Je třeba poznamenat, že heslo (přístupové heslo) by mělo mít 8 až 64 znaků. Cokoli menší nebude fungovat.
interface = wlan0 driver = nl80211 ssid = piNetwork hw_mode = g channel = 7 wmm_enabled = 0 macaddr_acl = 0 auth_algs = 1 ignore_broadcast_ssid = 0 wpa = 2 wpa_passphrase = emmanuel # použijte velmi bezpečné heslo a ne toto wpa_key_mgmt = WPA-PSK = W_PA rsn_pairwise = CCM
Obsah souboru by měl vypadat jako na obrázku níže.
Nebojte se změnit SSID a heslo podle svých potřeb a přání.
Uložte konfigurační soubor a ukončete.
Po uložení konfiguračního souboru musíme nasměrovat software hostapd na místo, kde byl uložen konfigurační soubor. Chcete-li to provést, spusťte;
sudo nano / etc / default / hostapd
najděte řádek s komentářem daemon_conf , jak je znázorněno na obrázku níže.
Odkomentujte řádek DAEMON_CONF a přidejte řádek níže mezi uvozovky před znaménko „rovná se“.
/etc/hostapd/hostapd.conf
Krok 7: Zapalte to
Protože jsme nejprve deaktivovali dva software, abychom je mohli správně nakonfigurovat, je třeba po provedení konfigurace restartovat systém, aby se změny projevily.
Použití;
sudo systemctl start hostapd sudo systemctl start dnsmasq
Krok 8: Směrování a maskování pro odchozí provoz
Musíme přidat směrování a maškarádu pro odchozí provoz.
K tomu potřebujeme upravit konfigurační soubor systemctl spuštěním:
sudo nano /etc/sysctl.conf
Odkomentujte tento řádek net.ipv4.ip_forward = 1 (zvýrazněno na obrázku níže)
Uložte konfigurační soubor a ukončete pomocí kláves ctrl + x a poté y.
Dále přejdeme k maskování odchozího provozu. Toho lze dosáhnout provedením určitých změn v pravidle iptable. Chcete-li to provést, spusťte následující příkazy:
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
pak uložte pravidlo Iptables pomocí:
sudo sh -c "iptables-save> /etc/iptables.ipv4.nat"
Krok 9: Vytvořte bezdrátový přístupový bod při spuštění:
U většiny aplikací bezdrátového přístupového bodu je často žádoucí, aby se přístupový bod objevil ihned po spuštění systému. Chcete-li to implementovat do maliny pi, jedním z nejjednodušších způsobů je přidání pokynů ke spuštění softwaru v souboru rc.local, takže zadáme příkazy k instalaci pravidel iptable při spuštění v souboru rc.local.
Chcete-li upravit soubor rc.local, spusťte:
sudo nano /etc/rc.local
a přidejte následující řádky do spodní části systému, těsně před příkazem exit 0
iptables-restore </etc/iptables.ipv4.nat
Krok 9: Restartujte! a použít
V této fázi musíme restartovat systém, aby se provedly všechny změny, a otestovat bezdrátový přístupový bod, který se spouští při spuštění s aktualizovaným pravidlem iptables.
Restartujte systém pomocí:
sudo restart
Jakmile se systém znovu zapne, měli byste mít přístup k bezdrátovému přístupovému bodu pomocí jakéhokoli zařízení podporujícího Wi-Fi a pomocí hesla použitého během instalace.
Přístup k internetu z Wi-Fi hotspotu Raspberry Pi
Ano, takže přidám bonusový tutoriál, který ukáže, jak lze vytvořený bezdrátový přístupový bod použít k zajištění internetového připojení pro zařízení k němu připojená. Přístup k internetu distribuovaný do zařízení je poskytován prostřednictvím ethernetového portu na Pi, který lze připojit k routeru nebo jakémukoli podobnému zařízení.
Abychom to mohli implementovat, musíme dát „most“ mezi bezdrátové zařízení a ethernetové zařízení na Raspberry Pi (bezdrátový přístupový bod), abychom předali veškerý provoz mezi těmito dvěma rozhraními. K nastavení použijeme software bridge-utils . Nainstalujte si hostapd a bridge-utils . I když jsme již dříve nainstalovali hostapd , spusťte instalaci znovu, abyste odstranili všechny pochybnosti.
sudo apt-get install hostapd bridge-utils
Dále zastavíme hostapd, abychom nakonfigurovali software.
sudo systemctl stop hostapd
Když je most vytvořen, vytvoří se konstrukce vyšší úrovně přes dva přemostěné porty a most se tak stane síťovým zařízením. Abychom zabránili konfliktům, musíme zastavit přidělování IP adres klientem DHCP běžícím na Raspberry Pi na porty eth0 a wlan0. To se provede úpravou konfiguračního souboru klienta dhcpcd tak, aby zahrnoval denyinterfaces wlan0 a denyinterfaces eth0, jak je znázorněno na obrázku níže.
Soubor lze upravit spuštěním příkazu;
sudo nano /etc/dhcpcd.conf
Poznámka: Od tohoto okamžiku zajistěte, abyste neodpojovali ethernetový kabel od počítače, pokud běžíte v bezhlavém režimu, protože se možná nebudete moci znovu připojit přes SSH, protože jsme deaktivovali ethernetový port. Při práci s monitorem se nemusíte bát.
Dále vytvoříme nový most s názvem br0
sudo brctl addbr br0
Dále připojíme ethernetový port (eth0) k mostu (br0) pomocí;
sudo brctl addif br0 eth0
Dále upravíme soubor rozhraní pomocí sudo nano / etc / network / interfaces, aby s mostem mohla pracovat různá zařízení. Upravte soubor rozhraní tak, aby obsahoval níže uvedené informace;
#Bridge setup auto br0 iface br0 inet manual bridge_ports eth0 wlan0
Nakonec upravíme soubor hostapd.conf tak, aby obsahoval konfiguraci mostu. Toho lze dosáhnout spuštěním příkazu: sudo nano /etc/hostapd.conf a úpravou souboru tak, aby obsahoval níže uvedené informace. Všimněte si, že most byl přidán pod rozhraní wlan0 a linka ovladače byla komentována.
interface = wlan0 bridge = br0 # driver = nl80211 ssid = NameOfNetwork hw_mode = g channel = 7 wmm_enabled = 0 macaddr_acl = 0 auth_algs = 1 ignore_broadcast_ssid = 0 wpa = 2 wpa_passphrase = AardvarkBadgerHedgehog wpa_key_mg_ = m
Po dokončení uložte konfigurační soubor a ukončete.
Chcete-li provést změny provedené v Raspberry Pi, restartujte systém. Jakmile se vrátí, měli byste nyní mít přístup k internetu připojením k bezdrátovému přístupovému bodu vytvořenému Raspberry Pi. To samozřejmě bude fungovat, pouze pokud je pi přístup k internetu přes ethernetový port k dispozici.
I když tento projekt lze použít k rozšíření Wi-Fi po celém domě nebo kanceláři nebo po celé sloučenině, existuje několik aplikací, které považuji za velmi zajímavé a užitečné, jako je malina pi jako rozbočovač domácí automatizace, takže několik zařízení pro domácí automatizaci s podporou Wi-Fi může připojte se k internetu pomocí bezdrátového přístupového bodu maliny pi. Máte nějaký další skvělý nápad, na který se to dá použít, neváhejte se podělit prostřednictvím sekce komentářů a inspirovat ostatní.
Testování bezdrátového přístupového bodu Raspberry Pi:
Chcete-li otestovat tyto pokyny, použijte mobilní telefon nebo jiné zařízení schopné připojení k síti Wi-Fi hotspot, mělo by se zobrazit vyskakovací jméno. Poté se k němu můžete připojit pomocí hrozného hesla, které jsme zadali „emmanuel“. Při implementaci nezapomeňte použít bezpečnější heslo. Toto heslo jsem použil pouze k tomu, aby se věci snáze dodržovaly.
Také si všimněte, že může chvíli trvat, než se bezdrátový přístupový bod stane viditelným po restartu, protože Pi se musí spustit před spuštěním síťových aktivit.
To je pro tento tutoriál kluci. Je to dlouhý, děkujeme, že jste si našli čas na čtení. Zpětná vazba a komentáře jsou vždy vítány.
Do příště!