erstelle einen wlan hotspot mit einer geeigneten wlan karte oder usb device
1. Wlan gerät auf AP (Accesspoint) Modus überprüfen
# finde den interface namen heraus zbsp.: "wls16" ip a
in diesen fall nehmen wir an das die netzwerkschnittstellen folgenden namen haben:
- Ethernet —> ens18
- Wlan —> wls16
# teste ob das wlan interface AP-Modus unterstützt iw list | grep -A 10 "Supported interface modes"
in der ausgabe müssste irgendwas mit AP aufgelistet werden, wenn nicht musst du ein anderes gerät verwenden
2. Pakete installieren
sudo apt update sudo apt install hostapd dnsmasq
3. statische ip zuweisen
# erstelle eine neue datei sudo nano /etc/network/interfaces.d/wls16
# folgender inhalt auto wls16 iface wls16 inet static address 192.168.1.1 netmask 255.255.255.0 network 192.168.1.0
sicherstellen dass die ip auch nach einem neustart erhalten bleibt
# neue datei erstellen sudo nano /etc/systemd/system/set-wls16-ip.service
# folgender inhalt [Unit] Description=Set static IP for wls16 After=network.target [Service] ExecStart=/sbin/ip addr add 192.168.1.1/24 dev wls16 ExecStartPost=/sbin/ip link set wls16 up RemainAfterExit=yes [Install] WantedBy=multi-user.target
Service aktivieren
sudo systemctl daemon-reload sudo systemctl enable set-wls16-ip.service sudo systemctl start set-wls16-ip.service sudo systemctl restart networking
nun sollte die wlan ip auch nach einem neustart zugeteilt sein
# neustarten sudo reboot
4. hostapd konfigurieren
# wir erstellen eine neue datei nano /etc/hostapd/hostapd.conf
# mit folgendem inhalt interface=wls16 ssid=MeinHotspot hw_mode=g channel=7 wmm_enabled=0 macaddr_acl=0 auth_algs=1 ignore_broadcast_ssid=0 wpa=2 wpa_passphrase=MeinPasswort wpa_key_mgmt=WPA-PSK rsn_pairwise=CCMP
Teile hostapd
mit, wo die Konfigurationsdatei liegt
# öffnen der datei sudo nano /etc/default/hostapd
ändern der Zeile
DAEMON_CONF="/etc/hostapd/hostapd.conf"
Teste, ob hostapd
läuft:
sudo systemctl unmask hostapd sudo systemctl enable --now hostapd
überprüfen ob es erfolgreich gestartet wurde
sudo journalctl -u hostapd --no-pager -n 50
5. dnsmasq als DHCP-Server einrichten
# backup der existierenden datei sudo mv /etc/dnsmasq.conf /etc/dnsmasq.conf.orig
# erstelle eine neue datei sudo nano /etc/dnsmasq.conf
# mit folgendem inhalt interface=wls16 dhcp-range=192.168.1.100,192.168.1.200,12h dhcp-option=6,8.8.8.8,8.8.4.4
# dnsmasq neustarten sudo systemctl restart dnsmasq
6. Ip forwarding aktivieren
# öffnen der datei sudo nano /etc/sysctl.conf # aktivieren der Zeile: net.ipv4.ip_forward=1
# service neustarten sudo sysctl -p
7. NAT einrichten
# ens18 ist in dem fall die ethernetschnitstelle von der das internet kommt sudo iptables -t nat -A POSTROUTING -o ens18 -j MASQUERADE
8. NAT regeln mit iptables setzen
iptables -t nat -A POSTROUTING -o ens18 -j MASQUERADE iptables -A FORWARD -i ens18 -o wls16 -m state --state RELATED,ESTABLISHED -j ACCEPT iptables -A FORWARD -i wls16 -o ens18 -j ACCEPT
# hostapd und dnsmasq neustarten, danach sollte der hotspot funktionieren sudo systemctl restart hostapd dnsmasq
9. sicherstellen dasss iptables beim neustarten erhalten bleiben
# neue service file erstellen sudo nano /etc/systemd/system/iptables-rules.service
# mit folgendem inhalt [Unit] Description=Restore iptables rules After=network.target [Service] ExecStart=/sbin/iptables -t nat -A POSTROUTING -o ens18 -j MASQUERADE ExecStart=/sbin/iptables -A FORWARD -i ens18 -o wls16 -m state --state RELATED,ESTABLISHED -j ACCEPT ExecStart=/sbin/iptables -A FORWARD -i wls16 -o ens18 -j ACCEPT Type=oneshot RemainAfterExit=yes [Install] WantedBy=multi-user.target
# service aktivieren sudo systemctl daemon-reload sudo systemctl enable iptables-rules.service sudo systemctl start iptables-rules.service
Neustarten und prüfen
sudo reboot sudo iptables -t nat -L -v -n
überprüfen ob MASQUERADE vorkommt
FERTIG Wlan Hotspot sollte nun funktineiren!
Schreibe einen Kommentar
Du musst angemeldet sein, um einen Kommentar abzugeben.