Seit einiger Zeit hatte ich bereits den Plan gefasst, unter Linux einen WiFi-Accesspoint selber zu bauen - also: die Softwarekonfiguration. Vergangene Woche habe ich nun endlich den Gedanken in die Tat umgesetzt...
Nach einem ersten Erfolg überlegte ich, dass ich mein stabiles Linux ungern mit solchen Tests verunreinigen wollte - daher kam ich auf die Idee, die WLan-Schnittstelle in eienn LXC-Container auszulagern. Dort wollte ich dann in einer kontrollierten Umgebung den Accesspoint aufsetzen und weitere Experimente durchführen. Das brachte zwei Aspekte, die ich bisher in meiner Arbeit mit LXC noch nie umsetzen musste: mehr als eine Netzwerkschnittstelle in einem Container und eine Schnittstelle direkt in einen Container durchzureichen.
Beide Anforderungen lassen sich mit dem hier gezeigten Gist erreichen, der einen Teil einer LXC-Konfiguration (Netzwerk) zeigt.
Damit kann man den Container starten und im Container weiterarbeiten. Ich arbeitete mit einem Ubuntu16.04 im erstellten Container - die hier gemachten Aussagen lassen sich also auf einem Ubuntu 16.04 Host in einem Ubuntu 16.04 Container sofort nachvollziehen. In davon abweichenden Konfigurationen muss unter Umständen der eine oder andere Aspekt angepasst werden...
Um hostapd mit der neuen Konfiguration beim Start des Containers automatisch starten zu lassen, müssen die folgenden Zeilen in die Datei /etc/default/hostapd eingefügt werden:
RUN_DAEMON="yes"
DAEMON_CONF="/etc/hostapd.conf"
DAEMON_OPTS="-dd"
Die Datei zur Vereinbarung individueller PSKs für einzelne MAC-Adressen besteht aus einzelnen Zeilen, deren Beginn die jeweilige MAC-Adresse darstellt, gefolgt von Whitespace und dem kodierten PSK. An diese kodierte Version gelangt man durch Aufruf von
wpa_passphrase "<your SSID>" "<the super secret passphrase>"
Nun müssen die durch diese Konfiguration zum Leben erweckten Schnittstellen noch zum Leben erweckt werden. Das geschieht mit einer entsprechend angepassten Datei /etc/network/interfaces - ein Beispiel dafür zeigt dieser Gist.
Weiterhin wäre es schön, ein Skript zu haben, das für SSID 2 (ein Passwort pro MAC Adresse) für einen neuen User/ein neues Gerät die Konfigurationsanpassungen all-in-one ausführt und als Ergebnis gleich einen QR-Code anzeigt, den der User scannen kann (Geek-Factor: QR-Code als ASCII-Art!).
Und schließlich sind QR-Codes schön und gut - aber wir müssen auch an die Laptop-User denken: Hier wäre es schön, wenn sich eine Möglichkeit finden ließe, WPS anzubieten...
WLAN-Access-Point mit hostapd und USB-Stick
hostapd AP-disabled ath10k_pci
How to Setup a Wireless Access Point in Linux OS (hostapd)
Pass wireless interface to LXC container
Raspberry WLAN Access Point Tutorial
Implement strong WIFI security
Multiple SSIDs with hostapd
hostapd Access Point auf 5 GHz
09.06.2018
Nachdem ich mich nun dazu durchgerungen habe einen Raspi zu erwerben, habe ich auch gleich erste Tests damit durchgeführt. Einer der ersten überhaupt sollte die Umsetzung des in vorhergehenden Artikel beschriebenen WiFi Access-Points darstellen - das funktionierte allerdings nicht so reibungslos wie erhofft...
12.05.2018
Wie bereits am Ende des vorhergehenden Artikel zu diesem Thema beschrieben, standen noch die Themen regelmäßiger Tausch der Secrets, Erzeugung von QR-Codes und WPS aus - hier die Auflösung...
Multi-User-WebDAV, Docker, GitHub
17.11.2019
Nachdem ich mich in letzter Zeit verstärkt mit Docker und dem zugehörigen Ökosystem beschäftige, habe ich begonnen, verschiedenste Dienste in Containern zu testen um zu sehen, ob in manchen Fällen LXC oder KVM nicht doch die bessere Wahl wäre...
Weiterlesen...Android Basteln C und C++ Chaos Datenbanken Docker dWb+ ESP Wifi Garten Geo Go GUI Gui Hardware Java Jupyter Komponenten Links Linux Markdown Markup Music Numerik OpenSource PKI-X.509-CA Python QBrowser Rants Raspi Revisited Security Software-Test sQLshell TeleGrafana Verschiedenes Video Virtualisierung Windows Upcoming...
In eigener Sache...
Weiterlesen...Ich habe eine neue Java Swing Komponente erstellt: Es handelt sich um einen Wrapper für von JToolBar abgeleitete Klassen, die die Werkzeugleiste minimieren und sie nur dann einblenden, wenn der Mauszeiger über ihnen schwebt.
Weiterlesen...Ich habe bereits in einem früheren Artikel über meine ersten Erfolge berichtet, der sQLshell auf Basis des bestehenden Codes aus dem Projekt EBMap4D eine bessere Integration für Geo-Daten zu spendieren und entsprechende Abfragen, bzw. deren Ergebnisse auf einer Kartenansicht zu visualisieren.
Weiterlesen...Manche nennen es Blog, manche Web-Seite - ich schreibe hier hin und wieder über meine Erlebnisse, Rückschläge und Erleuchtungen bei meinen Hobbies.
Wer daran teilhaben und eventuell sogar davon profitieren möchte, muss damit leben, daß ich hin und wieder kleine Ausflüge in Bereiche mache, die nichts mit IT, Administration oder Softwareentwicklung zu tun haben.
Ich wünsche allen Lesern viel Spaß und hin und wieder einen kleinen AHA!-Effekt...
PS: Meine öffentlichen Codeberg-Repositories findet man hier.