Sobald der Daten-Austausch über Disketten und CDs zwischen zwei oder mehreren Rechnern zu aufwändig wird, schlägt die Stunde des Netzwerks. Tatsächlich ist es ein Leichtes, Linux-Rechner (nicht nur mit ihresgleichen) Kontakt aufzunehmen zu lassen.
Um ein Netzwerk zu betreiben, braucht man zu allererst einmal die nötige Hardware. Jeder Computer muss eine 10/100-Base-T-Netzwerkkarte installiert haben. Wollen Sie nur zwei Rechner miteinander verbinden, reicht für diesen Sonderfall ein sogenanntes Cross-Connect-Kabel. Netzwerke, die aus mehr als zwei Rechnern bestehen, werden heute mit “Twisted Pair”-(TP-)Kabeln in einer Sternstruktur aufgebaut. Dazu benötigen Sie zudem einen kleinen Hub oderSwitch, an den alle Netzwerkteilnehmer angeschlossen werden.
Hardware-Beschaffung
Acht-Port-Hubs sind schon für unter 50 Euro zu bekommen. Möchte man sein Heim-Netzwerk später vergrößern, greift man besser zu einem Gerät mit einem sogenannten Uplink-Port.
Bei den Netzwerkkarten reichen handelsübliche Netzwerkadapter mit TP-Port vollkommen aus. Solche Karten gibt es für unter 15 Euro in jedem Computer-Laden. Gängig sind im Low-Cost-Bereich vor allem die Realtek- und National-Semiconductor-Chipsätze. Diese wie fast alle anderen lieferbaren Netzwerkkarten werden von aktuellen Linux-Distributionen ohne Probleme unterstützt. Falls Sie dennoch unsicher sind, ob Ihre Karte funktioniert und dies vor dem Kauf herausfinden möchten, lohnt sich eine Recherche in den im Kasten 1 aufgeführten Datenbanken.
Zur Verkabelung benötigen Sie Netzwerk-Patch-Kabel vom Typ Cat(egory) 5 (oder höher). Diese sind im Handel in vielen Längen und Farben erhältlich. Für ein kleines Heimnetzwerk ist es in den meisten Fällen egal, ob das Kabel besonders abgeschirmt ist (STP-(“Screened Twisted Pair”-)Kabel): Ein normales UTP-(“Unshielded TP“-)Kabel genügt. Cross-Connect-Kabel sind bis auf Ausnahmefälle nur für die Direktverbindung zweier Computer zu gebrauchen.
Sind die Netzwerkkarten eingebaut und mittels Patch-Kabel mit dem Hub oder Switch beziehungsweise direkt miteinander mittels Cross-Connect-Kabel verbunden, kann die Konfiguration beginnen.
Kasten 1: Unterstützt?
Bei Fragen zur Hardware-Unterstützung empfehlen wir einen Blick in die Internet-Datenbanken der großen Linux-Distributeure, etwa http://hardware.redhat.com/ und http://cdb.suse.de/. Eine weitere (nicht vollständige) Liste zu unterstützten Netzwerkkarten finden Sie unter http://www.scyld.com/network/.
Grundlegendes aus TCP/IP-Land
… zumindest, wenn die Grundlagen der (Inter-)Netzwerkerei bekannt sind. Hier stoßen wir unweigerlich auf TCP/IP, den Namen der Protokoll-Suite, die für große Netzwerke wie das Internet benutzt wird – aber auch für unser kleines LAN. Konkurrierende Protokolle wurden oft nur teilweise oder in manchen Fällen gar nicht für bestimmte Betriebssysteme implementiert, ein Problem, das TCP/IP inzwischen fast nicht mehr betrifft.
Das IP-Protokoll verwendet IP-Adressen (siehe Kasten 2), um Rechner zu identifizieren. Für unsere Zwecke verwenden wir IP-Nummern, die explizit für private Subnetze gedacht sind. Diese Adressbereiche (10.0.0.0 bis 10.255.255.255, 172.16.0.0 bis 172.31.255.255 und 192.168.0.0 bis 192.168.255.255) wurden im RFC 1918 [1] definiert, weil in der gegenwärtig vorherrschenden IP-Version 4 (IPv4) nicht genügend IP-Adressen für alle verfügbar sind. Allerdings dürfen Datenpakete mit solchen Adressen nicht direkt ins Internet geleitet werden: Diese Nummern werden von vielen LANs weltweit verwendet.
Ein Router im Internet kann daher nicht wissen, wohin entsprechend adressierte Pakete geleitet werden sollen. Private Adressräume müssen deshalb vor der Außenwelt verborgen werden. Diese Aufgabe erfüllt ein zwischengeschalteter Router, der Pakete aus dem LAN ins Internet (und umgekehrt) unter Verwendung seiner eigenen, öffentlichen IP-Adresse umschreibt. Diese Aufgabe bezeichnet man oft auch als IP-Masquerading oder mit dem Oberbegriff NAT(“Network Address Translation”).
Kasten 2: Das Problem mit der eindeutigen Adressierung
Wer Briefe um die Welt schickt, kennt das Problem: Ohne eindeutige Anschrift hat die Post keine Chance, die darin enthaltenen Daten reibungslos und ordnungsgemäß zuzustellen. Daher müssen auch Rechner in Computer-Netzen eindeutig zuordenbar sein.
Im Internet verwendet man weltweit eindeutige IP-Adressen. Eine IPv4-Adresse besteht aus vier Zahlen, die durch Punkte getrennt werden: 213.69.168.121. Dabei handelt es sich aber nur um eine platzsparende Schreibweise, denn eigentlich versteckt sich hinter jeder dieser vier Dezimal-Zahlen ein Oktett aus Nullen und Einsen, eine Binärzahl: 121 lässt sich im Binärsystem zu 0x2^7 + 1×2^6 + 1×2^5 + 1×2^4 + 1×2^3 + 0x2^2 + 0x2^1 + 1×2^0, also 01111001 zerpflücken. Vier Stellen à la acht Bits ergibt ein 32-Bit-Adresssystem.
Das ist zu wenig, wenn jedes Haushaltgerät auf der Welt eine IP-Adresse abbekommen soll. Daher wird zur Zeit der neue Standard IPv6 (IP Version 6) mit einem 128-Bit-Adresssystem propagiert. Damit werden so viele IP-Adressen definiert, dass IPv6 für jeden Quadratmeter der Erde bis zu 1500 IP-Adressen bereit hält. Dadurch wird die Krücke der privaten Adressen, die beim Übergang ins Internet maskiert werden müssen, unnötig. IPv6 soll bis 2005 weitgehend eingeführt werden.
Ein Netzwerk wiederum wird dadurch bestimmt, dass eine Anzahl der 32 Stellen einer IPv4-Adresse von links aus gesehen bei allen Teilnehmeradressen gleich bleibt. Setzt man alle unveränderlichen Stellen auf 1 und rechnet das Ganze wieder in vier Dezimalzahlen um, erhält man die sogenannte Netzwerkmaske (Netmask).
Zahlen zu Namen
Weil sich IP-Nummern so schlecht merken lassen, gibt es das Domain Name System (DNS). DNS-Server ordnen den numerischen IP-Adressen textuelle Adressen in der bekannten Domain-Schreibweise (zum Beispiel www.linux-user.de) zu und umgekehrt.
Da gerade für sehr kleine lokale Netze der Betrieb eines DNS-Servers etwas zuviel des Guten wäre, gibt es die Möglichkeit, numerische und textuelle IP-Adressen in der hosts-Datei eines jeden Rechners einzutragen. Auf Linux und anderen Unix-Betriebssystemen findet sie sich im Verzeichnis /etc, auf Windows 2000/NT unter C:\winnt\system32\drivers\etc\ und in Windows 98/95/ME unter C:\windows\.
Die Formatierung dieser Datei ist trivial: Links die IP-Nummer, rechts (durch Leerzeichen getrennt) beliebig viele Namen in Textform. Listing 1 zeigt die /etc/hosts für unsere Beispielkonfiguration.
Nummern zu Nummern
Wurde ein Paket erst einmal ins richtige Netzwerk geroutet, gibt es auf Netzwerkebene ein Problem: Einerseits hat es eine Ziel-IP-Adresse, andererseits sieht man auf dieser Abstraktionsebene nur die sogenannten MAC-Adressen (MAC steht hier für “Media Access Control”) der Netzwerkkarten. Diese Adresse kennzeichnet jede aktive Netzwerkkomponente weltweit eindeutig und wird vom Hersteller zugewiesen. Sie besteht aus sechs Bytes in Hexadezimal-Schreibweise, die durch Doppelpunkte getrennt sind, zum Beispiel 00:01:02:9B:B0:0B. Welcher Rechner mit welcher MAC-Adresse eine bestimmte IP-Adresse hat, wird durch das ARP (“Address Resolution Protocol”) aufgelöst.(Frederik Bijlsma/Patricia Jung)
Listing 1
/etc/hosts
127.0.0.1 localhost.localdomain localhost 192.168.0.2 server 192.168.0.10 linux-client 192.168.0.11 windows-client
Wie sag’ ich’s meinem Rechner?
Zunächst gilt es also, sich einen zusammenhängenden Adressbereich herauszusuchen. Was zusammenhängt, bestimmt dabei die Netzwerkmaske oder Netmask (Kasten 2). Als Beispiel verwenden wir das Netzwerk 192.168.0.0 mit der Netmask 255.255.255.0. Hat der Host, zu dem Kontakt aufgenommen werden soll, eine nicht zwischen 192.168.0.1 und 192.168.0.254 liegende IP-Adresse, muss ein Router entscheiden, wohin die Daten gehen sollen.Aktuelle Linux-Distributionen wie SuSE oder Red Hat erkennen Ihre Netzwerkkarte normalerweise automatisch. Red Hat Linux verwendet dazu ein Tool namens Kudzu, das beim Hochfahren des Rechners anbietet, neue Hardware zu installieren. Drücken Sie hier die Eingabetaste, werden Sie gefragt, ob Sie die Karte konfigurieren, für immer ignorieren oder gar nichts tun wollen (Abbildung 2). Wählen Sie den Punkt Konfigurieren, bindet Kudzu das passende Kernel-Modul in die laufende Konfiguration ein und fragt auf dem nächsten Bildschirm Would you like to set up networking? Ihre Antwort sollte hier unbedingt Yes sein. Kudzu ruft nun das Red-Hat-eigene Konfigurationsprogramm netconfig auf (Abbildung 3).
Damit verwalten Sie sämtliche Einstellungen Ihrer Netzwerkkarte – für unser Beispiel-Netzwerk aus einem Linux-Server, einem Linux-Client und einem Windows-Client gelten die Daten aus Tabelle 1. Haben Sie keinen lokalen DNS-Nameserver installiert, lassen Sie diesen Punkt leer. Auch für den Eintrag eines Gateway-Rechners zum Internet oder einem anderen LAN fehlen momentan die Voraussetzungen; hier tragen Sie bei allen Rechnern nichts ein.
Wählen Sie sich von einem Ihrer Computer aus via ISDN/ADSL oder PPP ins Internet ein, bekommt dieser Rechner beide Informationen meist dynamisch vom Internet-Provider zugeteilt; ansonsten sollten Sie die Daten mit der Zugangsinformation erhalten haben.
Um von den restlichen Rechnern Ihres LANs aus ins Internet zu gehen, fehlt die Konfiguration des IP-Masqueradings auf dem Internet-Zugangsrechner, der dann als Gateway dient. Dieser Punkt geht allerdings über den Umfang dieses Artikels hinaus.
Haben Sie Ihre Einstellungen getätigt, wählen Sie OK, und Ihr Linux-System fährt mit bereits konfiguriertem Netzwerk-Interface hoch.
Tabelle 2 zeigt auf, mit welchen (distributionsspezifischen) Tools Sie auf einem bereits laufenden Linux die Konfigurationsdaten für ein Netzwerk-Interface (das der ersten Netzwerkkarte heißt eth0) bleibend im System verankern. Ab Seite 30 erfahren Sie, welche distributionsunabhängigen Werkzeuge zur Netzwerkkonfiguration taugen; Kasten 3 zeigt am Beispiel von Red Hat Linux, welche Dateien man ändern muss, will man ganz ohne extra Konfigurationsprogramme auskommen.
Tabelle 1: Daten für ein Beispiel-Netzwerk
| Server-IP-Adresse | 192.168.0.2 |
| IP-Adresse des Linux-Clients | 192.168.0.10 |
| IP-Adresse des Windows-Clients | 192.168.0.11 |
| IP-Netzwerk/Netmask | 192.168.0.0/255.255.255.0 |
Tabelle 2: Distributionsabhängige Netzwerkkonfiguration bei Red Hat und SuSE
| Beschreibung | Red Hat Linux | SuSE Linux |
| Einrichten grundlegender Netz-Interface-Einstellungen | netconfig | yast-Menüpunkt Administration des Systems / Netzwerk konfigurieren / Netzwerk Grundkonfiguration |
| Konfiguration einer Verbindung zum Internet | internet-config | yast-Menüpunkt Administration des Systems / Netzwerk konfigurieren |
| Neustart der Netzwerk-Interfaces nach einer Änderung der Konfigurationsdateien | service network restart | /sbin/SuSEconfig ; /sbin/init.d/network restart |
Kasten 3: Netzwerkkonfiguration per Text-Editor
Die distributionsspezifischen Konfigurationstools vollbringen keine Wunderdinge, sondern ändern in der Regel ein paar Text-Dateien ab – leider je nach Distribution verschiedene. Bei Red Hat Linux und Verwandten sind diese so einfach gestaltet, dass man zum Konfigurieren problemlos mit einem Text-Editor auskommt.
Die wichtigsten Netzwerkeinstellungen finden Sie hier in der Datei /etc/sysconfig/network:
NETWORKING=yes HOSTNAME=server GATEWAY=192.168.0.2
Der Parameter HOSTNAME gibt den primären Namen des Rechners an, während GATEWAY (wenn nötig) die IP-Adresse des IP-Gateways enthält. Weiterhin existiert für jeden logischen Netzwerkadapter eine weitere Datei mit dem Namen /etc/sysconfig/network-scripts/ifcfg-[Name_des_Adapters]; für das Interface eth0 heißt sie /etc/sysconfig/network-scripts/ifcfg-eth0:
DEVICE=eth0 BOOTPROTO=static IPADDR=192.168.0.2 NETMASK=255.255.255.0 ONBOOT=yes
Der Parameter DEVICE referenziert hier den logischen Namen des entsprechenden Adapters an, BOOTPROTO gibt an, ob die Adressvergabe statisch geschehen soll oder ob ein automatisches Vergabeprotokoll benutzt werden soll: So stellt BOOTPROTO=dhcp die Adressvergabe auf DHCP um. Benutzt man statische IP-Adressen, muss IPADDR die entsprechende IP-Adresse und NETMASK die Netzmaske enthalten. ONBOOT legt fest, ob das Interface beim Hochfahren des Rechners automatisch gestartet werden soll.
In der (in jeder Distribution enthaltenen) Datei /etc/resolv.conf können Sie nun noch die zu verwendeten DNS-Server eintragen:
nameserver 192.168.0.2 nameserver 127.0.0.1
In diesem Beispiel befragt das System zuerst den Name-Server unter 192.168.0.2; bleibt der die Antwort schuldig, kommt localhost (also der fragende Rechner selbst, der immer auch als 127.0.0.1 ansprechbar ist) zum Zuge.
Der Befehl service network restart überträgt bei Red Hat Linux alle Änderungen ins laufende System. Bei SuSE setzt man ähnliche Parameter in der zentralen Konfigurationsdatei /etc/rc.config, ruft das Programm SuSEconfig auf und startet das Netzwerk über das Boot-Skript /sbin/init.d/network neu (vgl. Tabelle 2). Das Netzwerk-Startskript unterhalb von /etc/init.d, /etc/rc.d/init.d o. ä. ist auch bei anderen Distributionen ein guter Anfangspunkt, um nach den jeweils passenden Konfigurationsdateien zu suchen.
Hello World?
Sind alle Rechner konfiguriert, überprüfen Sie mit einem einfachen Test, ob die eingerichteten Interfaces erreichbar ist: Setzen Sie auf der Kommandozeile eines jeden Rechners aus dem Beispielnetzwerk den folgenden Befehl ab:
ping -c1 192.168.0.2
Enthält die Ausgabe jeweils den Satz 1 packets transmitted, 1 packets received, war der Test erfolgreich.
Sofern Sie keinen lokalen DNS-Server aufgesetzt haben (ein entsprechender Artikel erwartet Sie in einer der nächsten LinuxUser-Ausgaben), versorgen Sie nun jeden Ihrer Rechner mit einer hosts-Datei, wie sie Listing 1 zeigt (vgl. auch Kasten 2). Damit lassen sich die LAN-Rechner mit Namen ansprechen. Ein einfaches ping -c1 server sollte nun – genau wie mit dem vorigen ping-Kommando – einen Datentransport zum und vom Server-Rechner bestätigen. Doch wozu ein Server, wenn der keine Dienste anbietet?
Arbeit für den Server
Auf dem Server eines Heimnetzwerks sind – außer dem bereits erwähnten Namensdienst per DNS-Server oder über die Datei hosts – folgende Dienste sinnvoll:
- Ein DHCP-Daemon, der die – wie eben gesehen – lästige Konfiguration einer IP-Adresse auf den Clients unnötig macht. Dazu finden Sie einen ausführlichen Artikel ab Seite 32.
- Verzeichnisse, die per NFS allen anderen Linux-/Unix-Clients im Netz zugänglich gemacht werden. Windows-Clients bringen keine entsprechende Client-Software mit. Hintergrund- und Konfigurationsinformationen liefert ein Artikel ab Seite 82.
- Freigabe von Dateien und Verzeichnissen über Samba – speziell interessant, wenn Windows-Clients mit von der Partie sind, und daher im Folgenden näher besprochen.
- Ein SSH-(“Secure Shell”-)Daemon, der es ermöglicht, sich von den Clients aus direkt auf dem Server einzuloggen oder Dateien auf den und vom Server zu kopieren. Bei allen aktuellen Distributionen wird der OpenSSH-Daemon bereits vorinstalliert mitgeliefert und beim Booten gestartet. Deshalb gehen wir auf die Server-Konfiguration im Folgenden nicht weiter ein.
- Ein kleines “Intranet” in Gestalt einer lokalen Web-Präsenz.
Tanze Samba mit mir!
Samba [4] ist eine Programm-Suite für Unix-Betriebssysteme, die es Linux-Clients ermöglicht, SMB-Shares von Windows-Rechnern einzubinden, und es erlaubt, Freigaben für Windows-Rechner auf einem Linux- oder Unix-Rechner zu erstellen. Samba ist eine inzwischen sehr ausgereifte Implementierung, die erst vor Kurzem ihren zehnten Geburtstag feierte.
Auf dem Beispiel-Server soll damit ein Verzeichnis /tmp/austausch zum Tauschen von Dokumenten entstehen; zudem geben wir die Heimatverzeichnisse der Linux-Benutzer frei. Dies sind allerdings nur zwei von vielen Anwendungsmöglichkeiten.
Die zentrale Konfigurationsdatei steckt bei den meisten Linux-Distributionen unter /etc/samba/smb.conf oder /etc/smb.conf. Listing 2 zeigt ein kommentiertes Beispiel, das wir uns etwas näher anschauen.
Listing 2
smb.conf
# Im folgenden findet man systemweite Einstellungen [global] # Name der Arbeitsgruppe/Domaene workgroup = KILLESBERG # Beschreibung des Servers server string = Samba Server # Hosts, die auf den Server allgemein zugreifen duerfen; # hier alle Hosts in den Netzen 127.0.0.0 und 192.168.0.0: hosts allow = 192.168.0. 127. # Log-Daten werden in folgende, nach dem # Netbios-Maschinennamen (%m) benannte Dateien geschrieben log file = /var/log/samba/%m.log # Maximale Groesse der Logfiles (0=unbegrenzt) max log size = 0 # Sicherheitseinstellung des Servers # Share-Sicherheit genügt für unsere Zwecke, # da wir keine User-Datenbank verwenden security = share # Passwortverschluesselung (noetig für Win98 und hoeher) encrypt passwords = yes smb passwd file = /etc/samba/smbpasswd # Ab hier definieren wir nun Shares: [austausch] comment = Austausch-Verzeichnis path = /tmp/austausch browseable = yes writable = yes guest ok = yes [homes] comment = Heimatverzeichnisse freigeben browseable = no writable = yes
Die erste Sektion, [global], beschreibt allgemeine Einstellungen wie Arbeitsgruppe und allgemeine Zugriffseinschränkungen. Der wichtigste Parameter ist hier security: Damit gibt man an, wie Benutzernamen authentifiziert werden sollen. Für unseren Zweck reicht die einfachste Authentifizierungsmethode, share. Für Windows-Clients ab Windows 98 ist Passwortverschlüsselung nötig und sollte deswegen in fast allen Fällen aktiviert werden.
Mit dem zweiten eckigen Klammernpaar startet ein neuer Abschnitt, der sich auf das geplante Austausch-Verzeichnis bezieht. Der Name in Klammern bezeichnet immer den Namen der Freigabe, hier zweckmäßigerweise einfach austausch. Durch Angabe von Optionen lässt sich näher definieren, wie die Freigabe aussehen soll. So enthält comment eine textuelle Beschreibung des Shares, während path den genauen Verzeichnisnamen auf dem Server enthält. Das entsprechende Verzeichnis /tmp/austausch erstellt man mit einem einfachen
mkdir /tmp/austausch
Die Parameter browseable, writable und guest ok können nur yes oder no enthalten. Der erste gibt an, ob die Freigabe beim Durchsuchen des Netzwerkes gefunden werden kann. writable regelt, ob Benutzer Daten auf dem Share schreibend ändern dürfen, während ein guest ok = yes auch nicht am Samba-Server angemeldeten Usern Zugriffsrechte erteilt.
Für die Freigabe der Heimatverzeichnisse der Server-Benutzer gibt es mit homes einen speziell hierfür reservierten Namen. Er weist jedem Samba-Benutzernamen sein gleichlautendes Home-Directory auf dem Linux-Server zu. Wichtig dabei ist, dass jeder Benutzer auf dem Server mit dem Kommando smbpasswd ein Passwort für den entsprechenden Zugriff setzt. Das Programm muss unbedingt vom Linux-Acount des jeweiligen Benutzers ausgeführt werden, und nur für diesen gilt das Passwort dann.
Einmal konfiguriert, starten Sie den Samba-Server unter Red Hat Linux durch Eingabe des Kommandozeilenbefehls
service smb start
Für SuSE-Linux benutzen Sie
/sbin/init.d/smb start
Bei anderen Distributionen ist das entsprechende Startskript in /etc/init.d oder einem ähnlichen Ort enthalten.
Soll der Dienst für jeden Boot-Vorgang automatisch gestartet werden, bewerkstelligt man dies unter Red Hat Linux durch Eingabe von
chkconfig --level 345 smb on
Bei SuSE Linux muss die Variable START_SMB in der Datei /etc/rc.config auf yes gesetzt sein.
Kleiner Indianer
Die Möglichkeiten des – bei nahezu allen Distributionen mitgelieferten – Apache-Web-Servers lassen sich nur von dicken Büchern erschöpfend vorstellen. Doch selbst, wer sich mit dessen Konfiguration nicht beschäftigen will, bekommt von aktuellen Distributionen die Möglichkeit, etwa aus dem Internet heruntergeladene Dokumentation im HTML-, PDF- oder Text-Format zentral für das gesamte LAN auf einem vorkonfigurierten und oft auch vorinstallierten Web-Server abzulegen.
Wird dieser beim Booten automatisch gestartet, können Clients eines Red-Hat-Linux-Servers unter Angabe der URL http://server/1.html auf eine Datei 1.html zugreifen, die auf dem Server im Verzeichnis/var/www/html liegt. Für SuSE-Server lautet dieses Verzeichnis /usr/local/httpd/htdocs. Darin erstellte Unterverzeichnisse wie Dateien werden sofort auf dem Web-Server zugänglich, vorausgesetzt, die Zugriffsrechte stimmen. Dateien müssen für jedermann lesbar sein. Folgender Befehl macht eine Datei für alle, und damit auch den Web-Server lesbar (+r steht für “+ read”), ohne sonstige Rechte (zum Beispiel Schreibrechte) zu verändern:
chmod a+r datei
Kunde Linux
Sobald der Server seine Dienste anbietet, können die Clients darauf zugreifen: Auf den Web-Server (wie beschrieben) mit einem Web-Browser, auf den SSH-Dienst mit den Kommandozeilenprogrammen ssh zum Einloggen…
ssh username_auf_dem_Server@server
… und scp zum Kopieren von Dateien:
scp datei.txt username_auf_dem_Server@server:/tmp
(wobei die Datei datei.txt aus dem Arbeitsverzeichnis auf dem Client anschließend im Verzeichnis /tmp auf dem Server landet).
Um nun auch von Linux aus auf die SMB-Freigaben des Servers zuzugreifen, bindet man das entsprechende Verzeichnis ins lokale Dateisystem ein: So mountet der folgende Kommandozeilenbefehl das Home-Verzeichnis von testbenutzer aus dem Share //server/homes ins Verzeichnis /home/testbenutzer auf dem lokalen Rechner:
mount -t smbfs -o username=testbenutzer,password=meinpassword,rw //server/homes /home/testbenutzer
Beachten Sie bitte: Dieses Kommando müssen Sie als root-Benutzer eingeben. Dank der rw-Option darf testuser lesend und schreibend (“read-write”) darauf zugreifen – vorausgesetzt, das Passwort zum Anmelden am Server stimmt.
Der Windows-Client
Wer Windows-Clients einsetzt, hält sich eine Menge Probleme vom Hals, wenn auf dem Server ein DHCP-Daemon die Zuteilung der nötigen Netzwerkdaten und IP-Adressen übernimmt. Soll dies manuell geschehen, ist der Weg zum Erfolg bei jeder Windows-Version anders, geht aber meist über die Systemsteuerung und den Menüpunkt Netzwerk.
Um Zugriff auf per SMB zugängliche Netzwerkressourcen zu bekommen, muss der Name der Arbeitsgruppe mit der auf dem Server angegebenen übereinstimmen – in Listing 2 also KILLESBERG. Netzwerkumgebung / Killesberg / Server führt in unserem Beispiel zu den freigegebenen Verzeichnissen. Je nach Windows-Version können Sie auch mithilfe kompletter Pfadangaben im Dialog Start / Ausführen auf Einzeldateien direkt zugreifen. Die Eingabe von \\server\testbenutzer\test.txt an dieser Stelle liest die Datei test.txt aus dem Home-Verzeichnis des Users testbenutzer vom Server direkt in ein Textverarbeitungsprogramm.
Um von Windows aus in einem Kommandozeilenfenster auf dem Server zu arbeiten, installieren Sie das SSH- (und Telnet-) Programm PuTTy [6] (Abbildung 5). Der einzige Wermutstropfen: Grafische Programme lassen sich nicht nutzen.
Wenn alle Rechner erst einmal zusammenspielen, steigen die Ansprüche – hier zeigt sich dann, dass das Netz der Netze eine gute Informationsquelle abgibt: In [2] und [5] finden Sie beispielsweise zwei deutschsprachige Websites, die Appetit auf Mehr machen.
Glossar
-
10/100-Base-T
-
Abkürzung für ein Ethernet-Netzwerk mit Twisted-Pair-, also gedrillten Netzwerkkabeln. Ein 10-Base-T-Netzwerk erlaubt Geschwindigkeiten bis zu 10 Mbit pro Sekunde, in einem 100-Base-T-Netzwerk (Fast Ethernet genannt) müssen alle Komponenten für diesen Standard ausgelegt sein, damit die Daten mit 100 Mbit pro Sekunde übertragen werden können.
-
Hub
-
Ein Gerät, an dem sämtliche Netzwerkstränge sternförmig zusammenlaufen. Eingehende Daten werden an alle per Netzwerkkabel angeschlossenen Geräte weitergeleitet.
-
Switch
-
Eine Weiterentwicklung des Hubs mit grundsätzlich der gleichen Aufgabe. Wesentlich unterscheidet er sich dadurch, dass er “mitdenkt”, das heißt, eingehende Datenpakete werden analysiert und nur an das Netzwerksegment weitergeleitet, in dem sich der Empfänger befindet. So können insgesamt mehr Datenpakete übertragen werden. Der Gesamtdurchsatz ist wesentlich höher als bei einem Hub.
-
TCP/IP
-
“Transmission Control Protocol” over “Internet Protocol”. Das IP- Protokoll dient dazu, Daten zu adressieren und zu fragmentieren (also in übertragungsgerechte Pakete aufzuteilen) sowie sie alsdann (in Paketform) zu übermitteln. Das Absichern und Kontrollieren der Verbindung übernimmt das TCP-Protokoll. Es sortiert eingehende Daten und korrigiert Übertragungsfehler.
-
Protokoll
-
Regeln für die Unterhaltung von Rechnern untereinander. Für verschiedene Zwecke gibt es verschiedene Protokolle.
-
LAN
-
“Local Area Network”, ein lokal angelegtes Netzwerk. Lokal heißt hier, dass beispielsweise ein Standort oder ein Haus vernetzt wird.
-
RFC
-
“Request for Comments”, Schriftstücke, die viele der grundlegenden Netzwerkstandards beschreiben. Die “Internet Engineering Task Force” (IETF) veröffentlicht in ihnen aber auch Vorschläge und sonstige Informationen.
-
Router
-
Der Begriff “Route” bezeichnet den Weg eines Datenpakets durch mehrere Netze. In einem kleinen Netzwerk werden zumeist nur statische (strikt festgelegte) Routen benutzt. Im Gegensatz dazu sind im Internet oft dynamische Routing-Protokolle anzutreffen, die ihre Routing-Entscheidung von mehreren Faktoren abhängig machen (zum Beispiel Geschwindigkeit, Verbindungstyp, Kosten der Verbindung). Ein Router legt die Route eines Netzwerkpakets fest.
-
SMB
-
Das “Server Message Block”-Protokoll wird für Datei-, Druck- und sonstige Server-Dienste von Windows-Systemen verwendet.
Infos
[1] RFC 1918: http://www.ietf.org/rfc/rfc1918.txt
[2] Linux-Netzkurs: http://www.linux-praxis.de/linux2/
[3] Netzwerk-HOWTO: http://www.linuxdocs.org/HOWTOs/Net-HOWTO/index.html
[4] Samba: http://www.samba.org/samba/samba.html
[5] Deutsche Samba-Konfigurationsseite: http://www.sambahq.de/
[6] PuTTY: http://www.chiark.greenend.org.uk/~sgtatham/putty/









