SuSE Linux: Versionen ab 8.0
Sie möchten eine Wireless LAN PCMCIA, PCI oder USB Karte mit Ihrem SuSE Linux ab Version 8.0 verwenden.
Dieser Support Datenbank Artikel hat nicht den Anspruch auf Vollständigkeit. Er soll lediglich einen Überblick geben, wie Sie ein Wireless Lan mit SuSE Linux einrichten können. Es wird ein wenig Kenntnis vom System vorausgesetzt. Zum Beispiel, wie Sie Befehle als root eingeben, wie Sie YaST starten oder was eine IP Adresse ist. Sollten Sie dies nicht wissen, ist es für die Einrichtung eines Wireless LANs etwas zu früh. In dem Fall sollten Sie erst einmal Ihr SuSE Linux System kennenlernen.
Wo fängt man an, wenn man unter SuSE Linux ein Wireless LAN aufbauen möchte? Im Grunde genommen reichen zwei Wireless LAN Karten, ein wenig Kenntnis vom System und etwas Zeit, um die Zusammenhänge zu verstehen. Wireless LAN wird oft als das Netzwerk der Zukunft angepriesen. Aber auch dieses kommt nicht ohne ein stabiles Betriebsystem, einen guten Netzwerk Stack und einen guten Administrator aus.
Als erstes sollte man sicher gehen, dass die entsprechende Karte von Linux unterstützt wird. Hierbei kommt es darauf an, um was für eine Karte es sich handelt. Es gibt im Moment fünf verschiedene Möglichkeiten Wireless LAN Karten anzusprechen: PCI, PCMCIA External, PCMCIA kernel, WLAN-NG und USB. Je nachdem was für eine Karte Sie benutzen möchten, sollten Sie vorher klären, ob diese Karte von Linux unterstützt wird. Nutzen Sie dazu die Projekt Homepages der einzelnen Bereiche. Einen guten Überblick bietet hier
Wireless LAN resources for Linux
Die meisten Wireless LAN PCI und PCMCIA Karten werden von SuSE Linux unterstützt. Das liegt daran, dass es "nur" vier große Hersteller für Wireless LAN Chipsätze gibt:
Die meisten Lucent, Cisco und Intersil Karten funktionieren mit dem orinoco
Modul. Dieses Modul gibt es für PCI und PCMCIA (beide Systeme kernel/external) basierte Karten.
Für PCI basierte Karten benutzen Sie orinoco
, für PCMCIA basierte Karten orinoco_cs
. Atmel produziert
fast nur Chips für USB Karten.
Netzwerke, die über Funk betrieben werden, unterscheiden sich im Grunde genommen nur durch die Funk-Ebene von ganz normalen kabelgebundenen Netzwerken. Deswegen ist der erste Schritt das Einrichten der Wireless Extensions der entsprechenden Netzwerkkarte und der zweite Schritt das ganz "normale" Netzwerksetup.
Alle Module, bis auf die vom WLAN-NG Projekt, lassen sich mit dem Tool iwconfig
kontrollieren.
Dieses Tool befindet sich im Paket wireless-tools.
SuSE Linux ist auf den Einsatz von Wireless Karten vorbereitet. Das heißt, dass Sie alle Einstellungen mit YaST vornehmen können.
Notwendig hierzu ist lediglich eine unterstützte Karte und das Paket wireless-tools.
Bei Wireless LANs unterscheidet man verschiedene Modi:
Ad-Hoc
Managed
Access Points bieten dabei auch gleich die Möglichkeit, das Wireless LAN an das eventuell bestehende kabelgebundene Netzwerk anzuschließen. Oft werden auch Zusatzfunktionen wie ein eingebauter DSL Router oder Änliches geboten.
Grundsätzlich sind zum Betreiben eines Wireless LANs nur zwei Einstellungen vorzunehmen. Ihr Wireless LAN braucht
eine eigene Kennung, die ESSID
und je nachdem, ob ein Access Point vorhanden ist oder nicht, einen der beiden
Modi Ad-Hoc
oder Managed
. Beides können Sie bequem mit YaST setzen.
Ein Hinweis in Sachen Security. Dadurch dass sich Funkwellen nicht so einfach kontrollieren und eindämmen lassen wie Kabel, die man anfassen kann, setzen Sie sich immer einem gewissen Risiko aus, dass Ihr Netzverkehr abgehört wird.
Es ist essentiell, dass die Wireless Extensions laufen, bevor Sie versuchen ein Netzwerk zu konfigurieren, dass auf diesen
Extensions aufbaut. Ansonsten unterscheidet sich das Netzwerk nicht von einem kabelgebundenem Netzwerk. Sie können hier
alles so benutzen, wie Sie es in einem normalen Netzwerk auch tun. Die Netzwerkkarten haben ganz normale Ethernet-Namen wie eth0
und lassen sich auch ganz normal mit Tools wie zum Beispiel ifconfig
oder ip
ansprechen. Sie können
ebenfalls Services wie DHCP oder sonstiges verwenden.
Es gillt immer nur die eine Voraussetzung: Die Wireless Extensions müssen konfiguriert sein.
Hat man grundsätzlich verstanden wie ein Wireless LAN funktioniert, kann man sich an die Einrichtung im SuSE Linux System machen.
Vorausgesetzt Sie kennen das richtige Modul für Ihre Karte, ist das Einbinden von PCI Karten relativ problemlos.
Sie sollten als erstes testen, ob sich das Modul laden lässt. Dies geschieht mit dem Kommando modprobe
.
modprobe modul
Lässt sich das Modul laden und Sie können mit ifconfig
und iwconfig
die Karte sehen,
können Sie die Karte einfach mit YaST einrichten. Starten Sie dazu das YaST Netzwerk Karten Modul. Ihre Karte wird
wahrscheinlich nicht automatisch erkannt werden, also wählen sie "Andere (nicht erkannte)". In der folgenden Maske
können Sie das entsprechende Modul eintragen und auch schon die entsprechenden Wireless Einstellungen vornehmen.
Das ist für die Einrichtung von PCI Karten alles.
Im Hintergrund passiert dabei folgendes: YaST macht einen Eintrag in die Datei /etc/modules.conf
, der
bestimmt, welches Modul für das erste Ethernet Device zuständig ist und teilt dies dem Kernel mit (depmod -a
).
alias eth0 modul
Das ist im Prinzip alles was nötig ist, um die Hardware Einstellungen für PCI Karten permanent zu machen.
PCMCIA:
Fast alle Wireless LAN Karten sind dem PCMCIA System in SuSE Linux bekannt. Hier reicht es die Karte in einen
PCMCIA Slot zu stecken und das richtige Modul sollte automatisch geladen werden. Stecken Sie einfach die Karte ein
und beobachten Sie die Meldungen in der Datei /var/log/messages
. Das Kommando tail
ist Ihnen
dabei behilflich.
tail -f /var/log/messages
Oder benutzen Sie das Kommando lsmod
, nachdem Sie die Karte eingesteckt haben, um alle geladenen Module
zu sehen. Ist das Modul geladen und Sie können mit ifconfig
und iwconfig
die Karte sehen,
können Sie sie einfach mit YaST einrichten. Starten Sie dazu das YaST Netzwerk Karten Modul. PCMCIA Karten werden
nicht automatisch erkannt, also wählen sie "Andere (nicht erkannte)". In der folgenden Maske wählen Sie einfach PCMCIA.
Hier können Sie nun auch schon die Wireless Einstellungen vornehmen.
Das ist für die Einrichtung von PCMCIA Karten alles.
Für Intersil Karten mit Prism Chipsätzen gibt es auch Module des WLAN-NG Projekts.
Diese Module haben komplett andere Schnittstellen, so dass Tools für die "normalen" Kernel Module wie iwconfig
hier nicht funktionieren. WLAN-NG bringt seine eigenen Tools mit, wie wlancfg
oder wlanctl-ng
.
Das YaST Setup ist aber auf die Benutzung von iwconfig ausgelegt. Aus einem einfachen Grund: Alle Karten mit Prism(2) Chipsatz
funktionieren auch mit dem orinoco Modul. Wenn Sie also eine Karte mit den WLAN-NG Modulen betreiben möchten, müssen Sie
die Konfiguration von Hand vornehmen. Lesen Sie dazu am Besten das WLAN-NG-README.
Hier gehen Sie genau so vor wie bei PCMCIA Karten. Stellen Sie fest, ob der richtige Treiber automatisch geladen wird, und richten die Karte dann mit YaST ein. Wählen Sie als Modul in YaST einfach USB.
Für ein Wireless LAN wird eine ESSID unbedingt benötigt. Da der Funkverkehr nur auf einigen wenigen Frequenzen stattfindet, müssen die eventuell mehrfach vorhandenen Netze voneinander getrennt werden. Die geschieht über die ESSID. Man kann sich dies wie den Namen des Netzwerks vorstellen. Wenn Sie also an einem bestehendem Wireless LAN einfach nur teilnehmen möchten, müssen Sie dessen ESSID kennen. Wenn Sie selber ein Wireless LAN aufbauen, sollten Sie die ESSID sorgfältig wählen.
Hinweis: Eine Ausnahme bilden Access Points, die die ESSID broadcasten. Hier reicht es die ESSID "any" zu setzen und die Karte wird die erste gefunden ESSID übernehmen.
Eine typische Ausgabe von iwconfig sieht so aus:
eth0 IEEE 802.11-DS ESSID:"my.wlan" Nickname:"wlan1" Mode:Managed Frequency:2.447GHz Access Point: 4D:33:56:D5:6F:73 Bit Rate:2Mb/s Tx-Power=15 dBm Sensitivity:1/3 Retry min limit:8 RTS thr:off Fragment thr:off Encryption key:off Power Management:off Link Quality:68/92 Signal level:134/153 Noise level:20/153 Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0 Tx excessive retries:0 Invalid misc:0 Missed beacon:0
Sie sehen hier die verwendete ESSID
"my.wlan", den verwendeten Mode
Managed
und noch viel mehr Informationen.
Die ESSID, den Mode, Nickname und den Encryption Key können Sie über YaST2 einstellen. Schreibt diese Einstellungen in die Datei
/etc/sysconfig/network/ifcfg-<hardware>-<nummer>
. Bei der ersten PCMCIA Karte zum Beispiel in die Datei:
/etc/sysconfig/network/ifcfg-eth-pcmcia-0
Bei PCI Karten in:
/etc/sysconfig/network/ifcfg-eth0
Sie werden dort als Variablen hinterlegt und vom System ausgewertet. Es gibt aber noch mehr Variablen, die Sie allerdings nicht über YaST einstellen können. Einen kompletten Überblick gibt die Datei:
/etc/sysconfig/network/wireless
Hier können Sie auch ungewöhnliche Einstellungen vornehmen, wie die Frequenz, auf der die Karte sendet. Normalerweise brauchen Sie nur die Optionen, die
Sie in YaST einstellen können. Die ESSID
und der Mode
sind unbedingt notwendig. Ob Sie eine Verbindung zu einer
andere Wireless LAN Karte oder einem Access Point haben, sehen Sie an der Link Quality
.
Um zwei Wireless LAN Rechner im Ad-Hoc Modus zu verbinden, reicht es, die Wireless Extensions bei beiden Geräten auf die selben Werte zu stellen und den Karten im YaST Netzwerk Karten Modul IP Adressen aus dem selben Subnet zu geben. Bevorzugterweise aus einem 192.168.x.x Netz. Wählen Sie dazu "Konfiguration der statischen Adresse" und geben auf dem einen Rechner 192.168.0.1 ein, auf dem anderen Rechner 192.168.0.2. Die "Subnetzmaske" können Sie wie voreingestellt auf 255.255.255.0 stehen lassen. Am Rechnername und dem Routing brauchen Sie auch nichts zu verändern. Wenn Sie dies auf beiden Wireless LAN Clients getan haben und Sie vorher sichergestellt haben, dass die Funkverbindung zwischen den Rechnern funktioniert, können sich die Rechner untereinander pingen. Beim Einsatz eines Access Points gehen Sie genauso vor, verändern dabei nur den Mode in den Wireless Einstellungen.
YaST schreibt dabei die Netzwerk Einstellungen zusammen mit den Wireless Einstellungen in die entprechende ifcfg Datei. Diese Datei hätte in diesem Beispiel folgenden Inhalt:
BOOTPROTO='static' BROADCAST='192.168.0.255' DHCLIENT_SET_DOWN_LINK='yes' IPADDR='192.168.0.1' NETMASK='255.255.255.0' NETWORK='192.168.0.0' REMOTE_IPADDR='' STARTMODE='hotplug' UNIQUE='' WIRELESS='yes' WIRELESS_ESSID='my.wlan' WIRELESS_KEY='' WIRELESS_MODE='Ad-Hoc' WIRELESS_NICK='wlan1' WIRELESS_NWID=''
Sie können diese Datei auch direkt editieren und die Karte mittels
ifdown
/ifup
neu starten. Auch bei den Netzwerk
Einstellungen gibt es mehr Variablen, als Sie mit YaST einstellen können. Lesen
Sie dazu bitte die man page zu ifup
und die Datei:
/etc/sysconfig/network/ifcfg.template
Klappt etwas nicht so richtig in Ihrem Wireless LAN? Hier ein paar Hinweise, wo der Hund begraben liegen kann. Da in einem Wireless LAN noch eine zusätzliche Ebene, nämlich die Funkebene, zu einem "normalen" Netzwerk hinzukommt, gibt es auch hier wieder drei Ecken wo man ansetzen kann.
Hinweis: Komplett alle Problemfälle, die mit Hardware auftreten können, hier abzudecken würde etwas den Rahmen sprengen. Deswegen wird hier nur auf Wireless LAN Spezifische Probleme eingegangen.
Wir haben alle uns bekannte Karten mit Prism(2) Chipsätzen aus dem WLAN-NG System herausgenommen. Trotzdem kann es sein,
dass Sie eine Karte haben, die uns unbekannt ist, und für die vom PCMCIA System ein WLAN-NG Modul geladen
wird. Dies ist eines der folgenden Module: prism2_cs, prism2_pci, prism2_plx
. Außerdem heißt das
Netzwerkdevice in diesem Fall nicht eth0
sondern wlan0
. Um zu dies verhindern, müssen Sie dem PCMCIA
System mitteilen, dass für diese Karte das orinoco Modul geladen werden muss und nicht eins der WLAN-NG Module.
Sie sollten zuerst die ID der Karte mit dem Befehl
cardctl ident
herausbekommen. Als Beispiel kann dort folgendes herauskommen:
Socket 0: product info: "D-Link DRC-650 11Mbps WLAN Card", "Version 01.02", "" manfid: 0x028a, 0x0002 function: 7 (wlan-ng)
Nun suchen Sie in der Datei /etc/pcmcia/wlan-ng.conf
nach der manfid
, die soetwas wie die Kennung der Karte ist,
und versehen alles mit Kommentarzeichen, was irgendwie mit dem Output von cardctl ident
zusammenhängt. Dann machen
Sie in der Datei /etc/pcmcia/conf
einen neuen Eintrag für Ihre Karte. Suchen Sie dazu am besten die anderen Einträge
mit orinoco Modulen und fügen den Eintrag unter diesen ein. In diesem Beispiel wäre es:
card "D-Link DRC-650" manfid 0x028a, 0x0002 bind "orinoco_cs"
Nun müssen Sie noch das PCMCIA System neu starten mit dem Befehl rcpcmcia restart
. Das richtige Modul wird geladen
und Sie können die Einstellungen mit YaST vornehmen.
Es gibt sehr viele Störfaktoren für ein Wireless LAN. Zum Beispiel stören Microwellen und TV Geräte den Empfang ungemein.
Man sollte immer erst einmal auf den Noise Level
und die Link Quality
achten, bevor man anfängt
seine Hardware oder die Netzwerk Settings zu untersuchen, weil irgendetwas nicht klappt.
Sollten Sie WEP Verschlüsselung benutzen, ist auch dies immer eine zusätzliche Fehlerquelle.
In einem Wireless LAN können alle Netzwerkprobleme auftauchen, die auch in einem kabelgebundenem Netzwerk auftauchen können. Grundsätzlich lohnt sich hier das Studieren des Linux Networking HOWTO
Da Wireless LANs per se als unsichere Netze eingeschätzt werden sollten, hier ein paar Infos wie man sein Wireless LAN sicherer machen kann. Die Sicherheitsprobleme sind Protokoll-, Verschlüsselungs- und vor allem strukturell bedingt.
Wenn man ein Netzwerkdevice an ein unsicheres Netz koppelt, sollte der erste Schritt sein, sicherzustellen, dass alles, was über dieses Device in das System kommt, gefiltert wird. Dazu kann man Paketfilter wie zum Beispiel die SuSEfirewall2 benutzen. Das bringt zwar keine Sicherheit für die Pakete, die über das Wireless LAN gehen, aber schützt gegen potentielle Angreifer, die sich schon in Ihrem Wireless LAN befinden, zum Beispiel dadurch das sie Ihre ESSID erraten haben.
Eine grundsätzliche Maßnahme sollte immer der Einsatz eines WEP (Wired Equivalent Privacy) Keys im Wireless LAN sein. Dies ist ein Verschlüsselungsverfahren, dass für Wireless LAN entwickelt wurde. Es benutzt 128bit bzw. 64bit lange Schlüssel (in Wahrheit nur 104bit bzw. 40bit), um den gesammten Funkverkehr zu verschlüsseln. Dieses Verfahren ist allerdings schon länger nicht mehr sicher. Trotzdem sollte es immer als erstes eingesetzt werden. So schließt man schonmal Leute aus seinem Wireless LAN aus, die airsnort nicht kompilieren können ;-) Das reicht aber bei weitem nicht aus, um ein sicheres Wireless LAN zu haben.
Die nächste sinnvolle Sache, die man unbedingt in einem Wireless LAN benutzen sollte, sind ssh Tunnel. Eine ausführliche Beschreibung finden Sie auf den Oreilly Wireless LAN Seiten
Um nicht hunderte Tunnel die für alle möglichen Services, die man über sein Wireless LAN benutzen möchte, zu haben, kann man eigentlich gleich auf ein VPN (Virtual Private LAN) zurückgreifen. Dabei läuft der Netzwerkverkehr im Wireless LAN Komplett sicher verschlüsselt ab. Auf SuSE Linux ist die freie IPsec/VPN implementation freeswan enthalten. Zur Einrichtung lesen Sie bitte die enthaltene Dokumentation. Ein Nachteil ist, dass die Einrichtung auf jedem der vorhandenen Wireless LAN Clients erfolgen muß.
Da Wireless LANs oft auch für Öffentliche Einrichtungen angeboten werden, gibt es sogenannte Auth Systeme. Diese stellen sicher, dass nur Benutzer, denen es auch erlaubt ist, über das Wireless LAN Services benutzen. Ein völlig auf Linux basierendes Auth System ist NoCat.