Getestet unter Rasbian

Hier zeige ich, wie man aus einem Raspberry Pi in Verbindung mit einem Edimax EW-7811Un (Realtek RTL8188CUS) einen Access Point machen kann.

Wir brauchen dafür ein neues virtuelles Interface, so dass die Pakete aus dem WLAN ins LAN gebracht werden können. Das ermöglicht uns das Paket "bridge-utils". Außerdem brauchen wir für unseren USB-Dongle eine spezielle Version von hostapd (das kommt dann unten).

Zuerst installieren wir die benötigten Pakete:

sudo apt-get install bridge-utils hostapd

(Optional) Wenn man möchte das der Access Point-Dienst beim Hochfahren des Raspberry Pi's automatisch gestartet wird, muss man die Datei /etc/default/hostapd wie folgt anpassen:

DAEMON_CONF="/etc/hostapd/hostapd.conf"

Jetzt werden die wir Konfigurationdatei von hostpad erstellen. In diesem Beispiel wird ein WLAN mit der SSID "RaspiAP" mit WPA2 und dem Passwort "raspiwlan12345" angelegt.

sudo nano /etc/hostapd/hostapd.conf

interface=wlan0
bridge=br0
driver=rtl871xdrv
ctrl_interface=/var/run/hostapd
ctrl_interface_group=0
ssid=RaspiAP
hw_mode=g
channel=8
wpa=2
wpa_passphrase=raspiwlan12345
wpa_key_mgmt=WPA-PSK
wpa_pairwise=CCMP
rsn_pairwise=CCMP
beacon_int=100
auth_algs=3
wmm_enabled=1

In diesem Beispiel ist das Passwort in der Konfigurationsdatei im Klartext eingetragen. Möchte man hier lieber ein verschlüsseltes Passwort hinterlegen, kann man sich dieses mit dem Tool "wpa_passphrase" erstellen:

wpa_passphrase <ssid> <passwort-im-klartext>

Für unseren Stick "EW-7811Un (Realtek RTL8188CUS)" brauchen wir ein spezielles Binary von hostapd, die die rtl Treiber-API unterstützt. Dazu wechsen wir zuerst in das entsprechende Verzeichnis:

cd /usr/sbin

Dann benennen wir die Originaldatei um:

sudo mv /usr/sbin/hostapd /usr/sbin/hostapd.bak

Jetzt laden wir die neue hostapd herunter:

sudo wget http://itwelt.org/downloads/hostapd

Jetzt  noch die Berechtigungen setzen:

sudo chown root:root hostapd
sudo chmod 755 hostapd

Jetzt müssen wir noch die Netzwerk-Konfiguration anpassen. In diesem Beispiel erhält unser Access Point eine IP-Adresse per DHCP.

sudo nano /etc/network/interfaces

auto lo
auto br0
iface lo inet loopback
iface br0 inet dhcp
bridge_fd 1
bridge_hello 3
bridge_Maxage 10
bridge_stp off
bridge_ports eth0 wlan0
allow hotplug eth0
iface eth0 inet manual
allow-hotplug wlan0
iface wlan0 inet manual

Möchte man dem Access Point eine feste IP-Adresse vergeben, kann die Konfiguration z.B. leicht abgeändert so aussehen:

auto lo
auto br0
iface lo inet loopback
iface br0 inet static
address 192.168.20.3
netmask 255.255.255.0
gateway 192.168.20.1
bridge_fd 1
bridge_hello 3
bridge_Maxage 10
bridge_stp off
bridge_ports eth0 wlan0
allow hotplug eth0
iface eth0 inet manual
allow-hotplug wlan0
iface wlan0 inet manual

Um die Konfiguration zu aktivieren müssen noch die Netzwerkdienste neu gestartet werden:

service networking restart

Mit ifconfig können wir prüfen, ob das neue Bridge-Interface korrekt angelegt wurde:

ifconfig

 Jetzt können wir testen, ob der Access Point korrekt funktioniert. Der Parameter "-dd" gibt dabei so viele Infos wie möglich aus.

sudo hostapd -dd /etc/hostapd/hostapd.conf

Mit einem beliebigen WLAN-fähigen Gerät kann man dann mal testen ob die Verbindung funktioniert:

 

Wenn alles geklappt hat kann man den Test mit "Strg+C" abbrechen und den hostapd-Dienst starten (sofern man den entsprechenden Parameter in der Datei /etc/default/hostapd gesetzt hat):

/etc/init.d/hostapd start