RechnernetzeIII
Inhaltsverzeichnis
I. Grundlagen der Vernetzung
1.1 Verkabelung
1.2. Netzwerkadapter
1.3. CSMA/CD
2.1. Apple Talk
2.2. Netware Protokolle
2.3. NetBEUI
2.4. TCP/IP
3.1. SMTP
3.2. POP3
3.3. NNTP
3.4. Telnet
3.5. SSH
3.6. FTP
3.7. HTTP
3.8. IMAP
3.9. Was sind Ports?
3.10. Wer darf Mails abliefern?
II. Sicherheit in Computernetzen
4. Benutzer
4.2. Passwörter auf Client-Rechnern
5.1 Programme zur Überwachung des Datenverkehrs
5.2. Ethernet, die Netzwerkschicht
5.3. IP
5.4. ARP/RARP
5.5. ICMP
5.6. UDP
5.7. TCP
6.1. OS Fingerprinting
6.3. Nmap
7. Paketfilter zum Absichern von Rechnern
7.1. Iptables
7.2. Masquerading
7.3. Firewalling
7.6. Accounting Rule
7.7. Logging-Rule
7.8. Limits
8.1. Warum erfolgen Angriffe auf private PC?
8.2. Ausführen von eingeschleustem Code
8.3 Buffer overflows
III. Rechner im Netz – Netze im Rechner
9. Installation und Betrieb von Rechnernetzen
9.1. Emulatoren
9.2 Einrichten von vielen Rechnern
10. Anwendungen über das Netz – Remote Desktops
10.1 X11
10.2 Virtual Network Computing (VNC)
10.3 Nomachine NX
10.4 Microsofts Remote Desktop Protocol
III Rechner im Netz – Netze im Rechner
Die schulischen Rechnernetze unterscheiden sich recht deutlich von denen in Unternehmen. Von der Nutzungsseite her ist es so, dass sehr viel mehr verschiedene Nutzer an einem Rechner arbeiten und sehr viel mehr unterschiedliche Programme benutzt werden. Außerdem kommen relativ oft Anforderungen für die Installation neuer Software. In Unternehmen sind es eher einzelne Benutzer und nur wenige Programme, die der jeweilige Nutzer einsetzt.
9. Installation und Betrieb von Rechnernetzen
Sehr erheblich ist der Unterschied auch bei der Betreuung der Netze. Man kann davon ausgehen, dass für ca. 30-40 Computer-Arbeitsplätze eine volle Stelle zur Betreuung einkalkuliert wird. Im schulischen Umfeld stehen da etwa 3-5 Arbeitsstunden für die doppelte Zahl von Arbeitsplätzen zur Verfügung. Daher ist es sehr wichtig den Arbeitsaufwand zu minimieren und Konzepte zu benutzen, die dabei helfen.
9.1. Emulatoren
In der Regel setzt man Emulatoren ein, um mit Anwendungen oder Betriebssystemen arbeiten zu können, die auf dem Rechner eigentlich nicht vorhanden sind oder nicht lauffähig sind. Schon lange vorhanden ist z.B. VirtualPC auf dem MAC um dort einen WindowsPC zu emulieren. Auch im Linux-Umfeld werden Emulatoren oft eingesetzt, um Windows-Programme nutzen zu können. Es macht aber auch Sinn im Emulator noch einmal das gleiche Betriebssystem laufen zu lassen, das erleichtert das Experimentieren mit neuer Software erheblich.
VMWare Workstation schafft eine Umgebung, in der man auf einem Linux-PC oder einem Windows-PC praktisch alle für einen PC verfügbaren Betriebssysteme mehrfach installieren und ablaufen lassen kann, dazu wird ein kompletter PC emuliert. Eine Alternative zu VMWare ist die Software VirtualBox, die für private und unterrichtliche Nutzung kostenfrei unter http://www.virtualbox.org/ zur Verfügung steht.
Einen ganz anderen Weg gehen das freie Wine (http://www.winehq.com) bzw. seine leistungsfähigere kommerzielle Version CrossOver Office von Codeweavers. Diese Software emuliert die Programmierschnittstelle (API) von Windows. Sie erfordert keine Windows-Lizenz und keine Windows-Installation, um Windows-Programme nutzen zu können. Kann Crossover Office auf eine Windows-Installation zugreifen, gibt es weniger Probleme mit Zeichensätzen. Leider laufen noch nicht alle Windows-Anwendungen in dieser Umgebung. Auch von Codeweavers gibt es eine Mehrbenutzerversion von Crossover Office, die Crossover Office Server Edition.
9.1.1. VMWare
Administratoren, Techniker und Anwender benötigen gelegentlich verschiedene Betriebssysteme, verschieden konfigurierte Versionen von Betriebssystemen, Anwendungen für verschiedene Betriebssysteme und verschiedene Installationsvarianten von Anwendungen, um diese zu testen oder für ihre Arbeit zu nutzen. Statt dafür jedes Mal neue PC-Hardware einzurichten, kann man eine Virtualisierungssoftware einsetzten, die mehrere virtuelle PCs auf einer einzigen PC-Hardware bereitstellt.
Das Betriebssystem, das die Virtualisierungssoftware ausführt, heißt Gastgeber- oder Host-Betriebssystem und die Betriebssysteme, die darin virtuell ablaufen, heißen Gast- oder Guest-Betriebssystem.
Solche Virtualisierungslösungen sind u.a. VMWare von der VMWare-Division und Virtual PC von Microsoft. VMWare setzt auf Linux-, Unix- und Windows-Plattformen auf und Virtual PC auf Windows-Plattformen.
Die Virtualisierungssoftware VMWare kann auf einer einzigen PC-Hardware einen oder mehrere komplette virtuelle Intel-kompatible 32-Bit (inzwischen auch 64-Bit) PCs einrichten. Jeder virtuelle PC verfügt dann über eine eigene virtuelle Festplatte, eine eigene virtuelle Netzwerkkarte etc. und kann auf reale Geräte des Gastrechners zugreifen, wie CD/DVD-Laufwerke, serielle und parallele Schnittstellen und USB-Anschlüsse.
VMWare gibt es mittlerweile in zahlreichen Versionen für Workstation- und Serverbetrieb. VMWare unterscheidet zwischen der Arbeitsplatz-Versionen VMWare Workstation und den Server-Versionen VMWare GSX- / ESX-Server.
VMWare GSX / ESX-Server dient u.a. dazu, mehrere Linux- oder Windows-Server auf einem sehr großen Linux-Server zu konsolidieren. Dies spart u.a. Kosten bei Beschaffung, Einrichtung/Verkabelung und Administration. Mit VMWare GSX / ESX-Server kann man viele Instanzen einer virtuellen Maschine parallel starten und zum Beispiel gleichzeitig mit verschiedenen Versionen von Windows arbeiten. So kann einer dieser Gast-Server z.B. Windows Terminalserverdienste anbieten.
VMware erlaubt für eine 30-tägige Evaluation einen freien Download und Installation. Eine aktuelle Version kann man als .tar oder .rpm–Version von http://www.vmware.com zunächst als zeitlich beschränkte Evaluierungsversion fernladen, zum Test installieren und ggf. mit später beschafften Lizenzcodes im Regelbetrieb nutzen.
Seit Ende 2005 gibt es zusätzlich einen kostenfreien VMware-Player, der sich inzwischen in seinen Funktionen kaum noch von der Workstation-Version unterscheidet. Ein Unterschied besteht darin, dass man im Player keine Snapshots anlegen, also den Zustand des Systems nicht konservieren kann. Das Problem lässt sich aber durch ein komplettes Kopieren der virtuellen Festplatte lösen.
VMWare braucht einen relativ direkten Zugriff auf die Hardware Ihres Rechners. Deshalb benötigt es unter Linux spezielle Kernelmodule, die ihm diesen Zugriff erlauben. Die Kernel-Module müssen immer zur jeweiligen Kernel-Version passen. Damit das Konfigurationsprogramm von VMWare seine Module entsprechend kompilieren kann, müssen ihm die Quellen für Ihren Kernel zur Verfügung stehen. Auf Windows-Rechnern braucht VMware (auch der Player) zur Installation Adminstratoren-Rechte.
Bei der VMware-Konfiguration gibt es mehrere Möglichkeiten, wie dem zukünftigen Gast-Betriebssystem ein Netzwerkzugang ermöglicht wird.
- Bridged Network
- NAT
- Host-only
Bei der ersten Variante bekommt der virtuelle Rechner eine vollwertige Netzwerkkarte emuliert. Diese Karte verfügt über ihre eigene MAC-Adresse und wird damit vollwertiges Mitglied in dem Netzwerk, an das der Host-Rechner angeschlossen ist. Bei der NAT-Variante baut VMware einen virtuellen Router auf, über den der Gast-Rechner mittels NAT ans Netz angeschlossen wird. Nach außen sichtbar ist also nur der Host-Rechner. Host- und Gast-Rechner befinden sich miteinander in einem virtuellen Netz, aus dem auch die IP-Adressen vergeben werden. Soll der Gast-Rechner nur auf den Host-Rechner zugreifen können und nicht auf das gesamte Netz, so bietet sich die Variante Host-only an.
Die Installation von z.B. Windows XP als Gast-Betriebssystem ist recht einfach. Man klickt auf New virtual Machine und wählt dann im Wizard am einfachsten Typical.
Für die Wahl des Betriebssystems bietet VMWare die Gruppen Windows, Linux, Netware und Solaris und innerhalb der Gruppen noch unterschiedliche Versionen.
Danach folgen Angaben für den Speicherort und die Speichergröße. VMWare reserviert einen Teil der Festplatte für sich und seine Gäste. Diesen reservierten Bereich nennt VMWare virtual Disk. Alternativ kann man eine eigene Festplatte für die Windows-Installation angeben.
Wesentlich für die spätere Arbeit mit Windows ist die Anbindung an das Netz. Der letzte Schritt entscheidet über die Art der Netzwerkverbindung. Die Voreinstellung des Bridged Networking ist eine gute Wahl. Sie konfiguriert eine komplett eigene Netzwerk-Instanz für das Gastbetriebssystem, So verhält sich der virtuelle PC, als wäre sie unabhängig vom Host ans Netzwerk angeschlossen. Möchte man die virtuelle Maschine vom Netzwerk abschirmen, setzt man auf NAT für einen Zugriff per maskierender Firewall. Man kann als dritte Alternative auch host-only networking einstellen. Dann erhält man ein virtuelles Ethernet zwischen Gast und Hostbetriebssystem.
Bei den Einstellungen für die virtuelle Festplatte gibt das Installationsprogramm hier eine Größe von 4 GByte vor, bei Wind7 sollten es mindestens 8 GByte sein.. Falls Ihnen das zu groß erscheint, brauchen Sie Sich keine Gedanken zu machen, da VMWare immer nur soviel Speicherplatz belegt, wie das Windows wirklich benötigt.
Zum Abschluss der Installation zeigt die VM-Instanz eine Zusammenfassung an.
Über den Menüpunkt Edit · Virtuelle Machine Setting kann man die bisherigen Einstellungen jederzeit ändern.
Nach dieser Vorbereitung kann man Windows XP von CD installieren. Hierzu startet man die VM durch den angezeigten Menüpunkt.
Ab diesem Zeitpunkt läuft die Installation von Windows XP wie direkt auf einer PC-Hardware.
Das Setup von Windows stellt eine neue Festplatte fest. Lassen Sie das Setup-Programm die von ihm erkannte Festplatte einrichten und mit dem Format NTFS formatieren.
Bei Eingaben ist es wichtig zu wissen, welches Betriebssystem gerade den Fokus hat und die Eingaben erhält. Wenn Sie die Maus über das VMWare-Fenster bewegen und der Cursor die Form einer Hand hat, erhält Windows keine Eingaben. Klicken Sie einmal in das Windows-Fenster, um den Mauszeiger im Windows-Fenster zu „fangen“ und Ihre Eingaben an Windows zu geben.
Wollen Sie den Mauszeiger wieder „befreien“, müssen Sie Strg+Alt-Taste gleichzeitig drücken. Danach gehen die Eingaben wieder an das Gastgeber-System.
Das Setup von Windows XP kopiert danach die benötigen Dateien in die Installationsverzeichnisse und initialisiert Windows. Danach startet Windows XP. Es setzt das Setup im Grafikmodus fort und sucht und installiert Geräte.
Als Nächstes erfasst das Setup Angaben zum Gebietsschema wie Ländereinstellungen, Zeitzone, Sprache und Tastaturlayout, dann die Benutzerinformationen wie den Namen und den der Organisation.
Für Benutzer von Open Source-Software mag es ungewohnt sein, im nächsten Schritt eine Seriennummer anzugeben, aber es handelt sich hier um eine ganz normale Windows-Installation.
Windows XP installiert die virtuelle Netzwerkkarte, die es von VMWare bekommt (diese Netzwerkkarte ist völlig unabhängig von der realen Netzwerkkarte im Linux-Server), und richtet das Netzwerk ein.
Hier gibt man an, in welche Arbeitsgruppe oder Domäne der virtuellen Windows XP-PC eingefügt werden soll und gibt den Namen und das Passwort des Nutzers an, der den PC in die Windows-Domäne einfügen darf.
Nun kann man sich erst einmal eine Tasse Kaffee aufsetzen, die Installation dauert einige Zeit und erfordert erst einmal keine weitere Eingriffe.
Sobald die Installation fertig ist, kann man Windows XP in der Box von VMWare vom Linux-Server und von jedem X11-Terminal aus wie eine eigenständige Installation nutzen und sich an populären Windows-Anwendungen wie Microsoft Office erfreuen.
Eventuell ist Ihnen aufgefallen, dass VMware Sie darauf hinweist, dass Sie die VMware-Tools noch nicht installiert haben. Diese Tools beinhalten betriebssystemspezifische Treiber für die Grafikkarte, Tastatur und Maus. Die Installation verbessert vor allem den Umgang mit der emulierten Grafikkarte. Die Installation der Tools ist denkbar einfach. Wenn Sie bei laufendem Client-Betriebssystem den zugehörigen Menüpunkt aktivieren, dann blendet VMware virtuell eine CD mit den zugehörigen Dateien ein. Die Installation startet dann nach kurzer Anlaufzeit automatisch.
Sie können jederzeit zusätzliche Versionen von Windows, z.B. andere Sprachen bzw. andere Windows-Versionen, installieren. Hierzu müssten Sie wiederum die beschriebenen Installationsschritte für das neue, gewünschte Betriebssystem durchlaufen. Wenn Sie mehrere Windows-Sitzungen benötigen, können Sie auch mehrere Instanzen von Windows ausführen lassen. Dies benötigt jedoch sehr großzügig bemessene Hardware-Ressourcen.
9.1.2. VirtualBox
Wer einmal mit VMWare gearbeitet hat, der wird mit VirtualBox sofort zurecht kommen. Das Konzept beider Programme ist nahezu identisch, es ist sogar möglich virtuelle Festplatten zwischen beiden System auszutauschen. Ein großer Vorteil von VirtualBox besteht darin, dass es für private und unterrichtliche Nutzung kostenfrei zur Verfügung steht.
Wählt man in der VirtualBox Oberfläche den Menüpunkt New an, so folgt nach einem kleinen Hinweisfenster die erste Konfigurationsseite.
Gibt man hier bei Name einen sprechenden Bezeichner an, so wie im Bild, dann passt Virtualbox die Auswahlfelder Operating System und Version automatisch an. Die Menge des Speicherplatzes, den man im nächsten Schritt einstellt, hängt natürlich davon ab, wieviel Speicher überhaupt zur Verfügung steht.
Für ein Ubuntu-System sind 512 MB auf alle Fälle ausreichend. Beim Anlegen der virtuellen Festplatte kann man eine vorhandene Platte auswählen oder eine neue Platte erstellen.
Im nächsten Schritt legt man dann fest, ob die virtuelle Platte gleich mit der eingestellten Größe angelegt werden soll, oder ob die Platte erst bei Bedarf wachsen soll. Hier ist die Vorgabe Dynamically expand storage in der Regel am geeignetsten. Sehr wichtig ist noch der nächste Schritt:
Hier legt man fest, wie groß die Festplatte werden soll und vor allem den Speicherort, an dem die zugehörige Datei abgelegt werden soll. Da diese Datei sehr groß werden kann, muss man sich genau überlegen, wo genügend Platz zur Verfügung steht.
Damit ist die Konfiguration abgeschlossen und nach einigen Klicks auf OK landet man wieder im normalen VirtulBox-Fenster.
Vor dem ersten Start des Systems muss man sich noch überlegen, wie man mit der BootCD umgehen will. Hat man eine gebrannte CD zur Verfügung, so legt man diese ins Laufwerk des gastgebenden Rechners und bootet das virtuelle System. Hat man nur eine Abbilddatei der CD zur Verfügung, so klickt man auf den Abschnitt Storage im Reiter Details und kann dann dort die passende .ISO-Datei auswählen.
Nach der Auswahl der BootCD kann man dann aus der Oberfläche heraus durch einen Klick auf den Button Start den Rechner einschalten. Danach erfolgt dann eine ganz normale Installation des Betriebssystem in der virtuellen Maschine. Beim Start der Maschine wird man ggf. mehrfach darauf hingewiesen, dass Tastatur bzw. Maus vom virtuellen System gefangen werden können, was sich durch einen Druck auf die rechte Strg-Taste wieder aufheben lässt. Eingaben in die virtuelle Maschine sind nur möglich, wenn Tastatur und Maus von dieser gefangen sind, ggf. muss man einmal kurz in das Fenster klicken.
Während der Installation kann das Fenster der virtuellen Maschine etwas "zappeln", da jede Veränderung an der Auflösung zu einer Veränderung der Fenstergröße führt. Dieses "Zappeln" und auch die Effekte mit Tastatur und Maus sind erst beseitigt, wenn man nach der Installation des Betriebssystems im virtuellen Rechner dort die Guest Additions installiert. Die Guest Additions sind Treiber für die virtuelle Maschine, die einen optimierten Zugriff auf Tastatur, Maus und Grafikkarte.
Zur Installation dieser Treiber geht man im VirtualBox Hauptfenster auf Devices und dort auf Install Guest Additions... VirtualBox blendet jetzt ein ISO-Image mit den Treibern in das CD-Rom-Laufwerk ein. Das zum Betriebssystem passende Image kann es auswählen, da dieses ja beim Einrichten des virtuellen Rechners angegeben wurde.
Bei den meisten Betriebssystemen dürfte beim virtuellen Einlegen der CD ein Dialog erscheinen, der das Ausführen des Programmes zu Installation der Treiber bewirkt.
Nach der Treiber-Installation kann die Desktop-Auflösung des virtuellen Rechners auch über eine Größenänderung am zugehörigen Fenster erfolgen. Damit sind nahezu beliebige Desktopauflösungen möglich. Auch Tastatur und Maus lassen sich nur problemlos zwischen den Fenstern bewegen.
9.1.3. Crossover Office
Einen ganz anderen Weg als VMWare gehen das freie Wine (http://www.winehq.com) bzw. seine leistungsfähigere aber kommerzielle Version CrossOver Office von Codeweavers (http://www.codeweavers.com). Diese Software emuliert die Programmierschnittstelle (API) von Windows. Damit ist keine Windows-Installation und auch keine Windows-Lizenz notwendig, um Windows-Programme nutzen zu können. Leider hat Microsoft die Windows-API nicht vollständig dokumentiert. Außerdem sind nicht alle Anwendungen so sauber geschrieben, dass sie nur über die API auf Betriebssystem-Funktionen zugreifen. Dadurch ist nicht jedes Windows-Programms in diesem Emulator lauffähig.
Eine wachsende Teilmenge von Windows-Anwendungen wie die Textverarbeitung, die Tabellenkalkulation und die Präsentation von Microsoft Office kann auf Linux-PCs mit installiertem CrossoverOffice direkt ohne ein Windows laufen, als wären sie auf Windows nativ installiert. Crossover Office integriert Microsofts Office- und Internet-Programme dabei sehr elegant in KDE.
Die Installation von Crossover Office ist denkbar einfach. Man legt einfach die gelieferte CD in das Laufwerk und starten von der grafischen Oberfläche aus das Programm „install.sh“.
Der Installer fordert Sie zunächst auf, die Lizenzbedingungen zu akzeptieren. Wenn Sie das Programm nutzen wollen, bleibt Ihnen keine andere Wahl. Danach kommt dann die erste Konfigurationsmöglichkeit.
Crossover Office installiert sich selbst in ein Verzeichnis cxoffice im Heimatverzeichnis des Benutzers, der es installiert. Dabei belegt es etwas über 40MByte Plattenspeicher.
Die Anwendungsprogramme, die Sie in einem zweiten Schritt installieren, landen im Verzeichnis .cxoffice. Bei Bedarf können Sie hier den Installationspfad verändern.
Nach einem Klick auf Begin Install startet dann die eigentliche Installation von Crossover. Ein Laufbalken informiert Sie dabei über den Stand der sehr schnellen Installation.
Die Installation von Windows-Anwendungen ist genau so einfach, wie die Installation von Crossover selbst. Als Beispiel soll hier die Installation von Office 2000 dienen.
Ausgehend vom letzten Fenster der Installation klicken Sie auf Installieren bzw. Install. Sollten Sie das Fenster schon geschlossen haben oder später einmal Software installieren wollen, so finden Sie die Funktion im KDE-Menü unter Crossover • Office-Konfiguration.
Zu sehen ist eine Liste der Programme, für deren Installation Crossover vorbereitet ist. Wählen Sie hier das zu installierende Programm aus und klicken Sie auf Weiter.., wobei Sie das Installationsmedium der Software eingelegt haben sollten. Nach kurzer Zeit startet das Installatiosnprogramm der Windows-Anwendung.
Die nächsten Schritte laufen jetzt genau so ab, wie Sie es von einer Installation unter Windows gewohnt sind. Es folgt also die Abfrage der Lizenz-Informationen und weiterer Angaben zur Installation. Einen Unterschied gibt es erst später im Laufe der Installation.
Wenn der Installer Ihnen mitteilt, dass er das Betriebssystem neu starten möchte, brauchen Sie sich keine Gedanken über ihr Linux zu machen. Crossover simuliert den Windows-Neustart. Kurz danach geht die Installation ganz normal weiter. Am Ende der Installation beendet sich der Office-Installer und Crossover teilt Ihnen mit, dass die Installation abgeschlossen ist. Nun können Sie z.B. Word aus dem Crossover-Menü heraus starten.
Die von Crossover vorgenommene Installation ist so gut, dass Sie im Konqueror aus dem Kontext-Menü von Office-Dokumenten heraus die Office-Anwendung starten können.
Das Office-Installationsprogramm installiert Ihnen auch den Internet-Explorer auf Ihrem System, wie Sie an dem entsprechenden Icon auf dem Desktop sehen können. Auch dieses Programm ist unter Crossover ganz normal nutzbar.
Mit Hilfe von Crossover ist eine große Zahl weiterer Programme unter Linux nutzbar. Dazu gehören u.a.:
- Adobe Photoshop
- Dreamweaver MX
- Lotus Notes
- Microsoft Project
- Microsoft Visio
- Quicken
Diese Liste wächst ständig, die aktuelle Version finden Sie immer auf den Webseiten von Codeweavers.
9.2. Einrichten von vielen Rechnern
Die Installation eines aktuellen Betriebssystems auf einem Rechner ist mit recht hohem Zeitaufwand verbunden. Dabei sind mit Installation folgende Schritte gemeint:
- Grundinstallation des Betriebssystems
- Einbindung in das lokale Netz mit Anbindung an die Infrastruktur
- Aktualisierung des Systems und Einspielen aller Patches
- Installation der benötigten Anwendungssoftware
- Konfiguration der Anwendungssoftware
Bei WindXP kann allein der Punkt 3) schon mal eine Stunde dauern, je nach Aktualität der Grundinstallation. Ein halber Arbeitstag ist in der Regel nicht viel, wenn es um eine sorgfältige Installation geht. Auch wenn ein Rechner mit vorinstallierter Software beschafft wird, so verringert das nur den Zeitaufwand für Punkt 1).
Bei der Neuinstallation eines gesamten Computerraumes mit etwa 15 Rechnern ist es nicht mehr vertretbar, jeden Rechner einzeln zu installieren. Es ist daher naheliegend einen Rechner sorgfältig einzurichten und diese Installation dann durch Kopieren (Clonen) auf die anderen Geräte zu verteilen.
Zum Kopieren gibt es grundsätzlich mehrere Möglichkeiten,
- direkt von Festplatte zu Festplatte,
- von DVD auf Festplatte und
- über ein Netzwerk.
Das direkte Kopieren von Festplatte zu Festplatte geht recht schnell und es gibt auch preiswerte Tools dafür (Norton Ghost unter Windows und dd unter Linux). Es muss dann aber die Festplattengeometrie passen und man muss die Rechner alle aufschrauben.
Bei Kopieren von DVD bzw. übers Netz gibt es prinzipiell nur geringe Unterschiede. In beiden Fällen muss man die Installation von der Original-Festplatte in eine Image-Datei kopieren und diese auf der DVD bzw. einem Datei-Server ablegen. Diese Image-Datei wird dann auf dem Zielrechner eingespielt.
Generell ist es bei der Installation vieler Rechner wichtig, möglichst wenig Einstellungen individuell vornehmen zu müssen. Die Rechner sollten möglichst identisch sein, sich im Idealfall nur in der MAC-Adresse ihrer Netzwerkkarte unterscheiden.
9.2.1. Bootmedien
Für alle Ansätze braucht man aber ein zusätzliches Bootmedium um die Daten sichern bzw. einspielen zu können. Die meisten Betriebssysteme lassen nämlich im Betrieb keinen vollständigen Zugriff auf ihre Dateien zu. Man benötigt daher eine bootfähige CD oder DVD für diese Zwecke. Denkbar wäre es auch das System per PXE oder von einem USB-Datenträger (z.B. einem USB-Stick) zu beziehen. Disketten als Bootmedium sind nicht mehr ganz zeitgemäß, da manche Rechner nicht mehr über entsprechende Laufwerke verfügen.
Bootfähige Systeme benötigen übrigens nicht nur Systemverwalter in Schulen zum Kopieren von Installationen, sondern eigentlich alle Nutzer. Ein Virenscanner kann nämlich nur dann wirklich zuverlässig arbeiten, wenn er von einem mit Sicherheit sauberen System gestartet wurde. Es gibt eine Vielzahl von Schadprogrammen, die die üblichen Virenscanner angreifen und ausschalten können bzw. sich vor ihnen verstecken.
Ein Rootkit, das sich vor den Programmen des WindXP sehr effektiv verstecken kann, hat das Musiklabel Sony BMG eine Zeit lang als Kopierschutz beim Abspielen von Musik-CDs automatisch installiert (http://www.heise.de/newsticker/meldung/68034) und erst nach massiven Protesten auf den weiteren Einsatz verzichtet. Aber etwa 5 Millionen derartiger CDs sind verkauft worden. Die Mechanismen dieses Rootkits sind inzwischen analysiert und von „Hackern“ adaptiert worden.
Mit Linux kann man da auf ein breites Angebot an fertigen Boot-Systemen zurückgreifen, z.B. auf die Knoppix (http://www.knopper.net/knoppix/) Distribution. Mit Windows ist das etwas schwieriger, hier kann aus lizenzrechtlichen Gründen niemand bootfähige Systeme ausliefern. Daher wird hier sogar oft noch mit DOS-Systemen gearbeitet, von denen es freie Versionen gibt (http://www.drdos.de/). Hier bleibt dann aber immer das Problem der Netzanbindung des Systems. Zu nennen wäre hier:
- Bart's Network Boot Disk (http://www.nu2.nu/bootdisk/network/)
Die Website Bart Lagerweij ist hoch spannend. Der hat zwar die Entwicklung seiner Boot-Disketten eingestellt, hat aber ein System namens PE-Builder herausgebracht, über das man WindXP-Systeme erstellen kann, die von CD booten http://www.nu2.nu/pebuilder/. Er liefert dazu die Software, mit der man sich von der eigenen Installation ausgehend eine solche CD erstellen kann.
Die Computer-Zeitschrift c't hat den PE-Builder in den Heften 18/05 und 26/08 beschrieben und auch weiterentwickelt (http://www.heise.de/ct/05/18/122/default.shtml). Es gibt direkt eine c't-Edition vom PE-Builder. Die neueste Version des PE-Builder kann auch mit Vista umgehen.
9.2.2. Problem NTFS
Da für das Clonen von Window-Installationen oft Linux- oder DOS-Systeme zum Einsatz kommen bildet das NTFS-Dateisystem ein Problem, welches unter WindXP normalerweise zum Einsatz kommt. Die Spezifikationen für dieses Dateisystem sind geheim und nicht veröffentlicht. Wer also für Linux oder DOS entsprechende Treiber schreiben möchte, der muss also mit Reverse-Engeneering an das Problem herangehen.
Für Linux gibt es inzwischen mehrere Lösungen, um auf NTFS-Dateisysteme zugreifen zu können. Der lesende Zugriff war nie ein Problem, aber der schreibende Zugriff galt lange Zeit als experimentell.
9.2.3. Das Problem SID, Produkt-Key und Aktivierung
Neuere Windows-Varianten wie Wind.2000 und Wind.XP versehen jede Installation mit einer SID (Security Identifier), die eindeutig sein muss, wenn die Rechner gemeinsam in einem Netz sein sollen. Will man Windows-Systeme clonen, so muss die SID unbedingt beim Erstellen ders Images entfernt werden. Microsoft liefert für diesen Zweck das System Preparation Tool (SysPrep) mit aus. Mit diesem Tool lässt sich der letzte Installationsschritt auf dem Zielrechner weitgehend automatisieren.
Auf dem Rechner, der die Vorlage für das Clonen liefert, muss direkt unter C[/c:/sysprep :\sysprep] das Syprep-Tool vorhanden sein. Auf diesem Rechner wird dann zum Abschluss der Befehl
c:\sysprep\sysprep -mini -reseal -quiet
ausgeführt. Jeder geclonte Rechner führt dann beim ersten Start eine spezielle Konfigurationsroutine aus, die sich vollständig automatisieren lässt.
Gesteuert wird die Konfiguration durch die Datei sysprep.inf im Sysprep-Verzeichnis.
;SetupMgrTag [Unattended] OemSkipEula=Yes KeepPageFile=1 [GuiUnattended] AdminPassword=geheim OEMSkipRegional=1 TimeZone=110 OemSkipWelcome=1 [UserData] ProductID=12345-12345-12345-12345-12345 FullName="Hansa Gymnasium" OrgName="hansa" ;ComputerName="Windxp00" ComputerName=* [Display] BitsPerPel=24 Xresolution=1024 YResolution=768 Vrefresh=65 [RegionalSettings] LanguageGroup=1 SystemLocale=00000407 UserLocale=00000407 InputLocale=0407:00000407 [URL] Home_Page=http://rechner.hansa.hh.schule.de/aktuell.htm Search_Page=HTTP://www.google.de [Proxy] Proxy_Enable=1 Use_Same_Proxy=1 HTTP_Proxy_Server=192.168.1.1:3128 Proxy_Override=rechner.hansa.hh.schule.de; [GuiRunOnce] ;Command0="rundll32 printui.dll,PrintUIEntry /in /n \\192.168.1.7\Port2" [Identification] DomainAdmin=root DomainAdminPassword=abcdefg JoinDomain=ARBEITSGRUPPE [Networking] InstallDefaultComponents=Yes [sysprepcleanup]
An diesem einfachen Beispiel kann man etwa sehen, welche Möglichkeiten vorhanden sind. Hier meldet sich der Rechner sogar automatisch an der Domäne an.
Hier taucht aber das nächste Windows-Problem auf. Normalerweise ist der Produkt-Key nur für eine einzige Installation gültig, die dann anschließend auch noch aktiviert werden muss. Da das für die Betreiber vieler Systeme sehr unpraktisch ist bietet Microsoft spezielle Volumen-Lizenzen an, zu denen ein einziger Produkt-Key gehört. Installationen mit einem derartigen Key müssen auch nicht aktiviert werden. Schulen sollten also immer nur Volumen-Lizenzen erwerben.
9.2.4. Partitionierung
Eine Festplatte ist normalerweise in mehrere Partitionen aufgeteilt. Hierbei ist es immer sinnvoll Daten und Programme voneinander zu trennen und in unterschiedlichen Partitionen abzulegen. Bei der Neu-Installation des Betriebssystems gehen so die Daten nicht verloren.
Eine PC-Festplatte kann dabei über vier sog. primäre Partitionen verfügen. Falls diese Zahl von Partitionen nicht ausreicht, so kann man eine dieser Partitionen zur erweiterten Partition erklären und darin weitere logische Partitionen anlegen.
Unter Linux tragen die primären Partitionen die Nummern 1 bis 4 und alle Nummern ab 5 weisen auf logische Partitionen hin. Windows möchte immer auf einer primären Partition installiert sein, weitere Laufwerke legt Windows dann üblicherweise auf logischen Partitionen an. Linux ist die Art der Partition egal, es lässt sich auch auf logischen Partitionen installieren.
boss:~ # fdisk -l Platte /dev/hda: 80.0 GByte, 80026361856 Byte 255 Köpfe, 63 Sektoren/Spuren, 9729 Zylinder Einheiten = Zylinder von 16065 × 512 = 8225280 Bytes Gerät boot. Anfang Ende Blöcke Id System /dev/hda1 * 1 4717 37889271 7 HPFS/NTFS /dev/hda2 4718 9729 40258890 f W95 Erw. (LBA) /dev/hda5 4718 4781 514048+ 82 Linux Swap / Solaris /dev/hda6 4782 6087 10490413+ 83 Linux /dev/hda7 6088 6151 514048+ 83 Linux /dev/hda8 6152 6413 2104483+ 83 Linux /dev/hda9 6414 7719 10490413+ 83 Linux /dev/hda10 7720 8371 5237158+ 83 Linux /dev/hda11 8372 9728 10900071 83 Linux
In diesem Beispiel befindet sich auf der ersten Partition, einer primären, ein NTFS-Dateisystem. Die zweite Partition ist eine erweiterte Partition und innerhalb dieser erweiterten Partition liegen noch sieben logische Partitionen, alle mit Linux Datei-Systemen. Hierbei ist die Partition fünf, eine Linux Swap-Partition, hier werden Speicherinhalte ausgelagert, wenn Speicher knapp wird. Auch Windows hat eine Swap-Funktion, die entsprechenden Daten werden aber normalerweise auf der System-Partition mit abgelegt.
Hinweis: Das jeweilige Dateisystem wird erst nach dem Partitionieren angelegt, beim Formatieren der jeweiligen Partition. Beim Partitionieren muss man aber schon den Typ des Dateisystems festlegen.
Genau eine der Partitionen kann als aktiv gekennzeichnet sein, in der Tabelle gekennzeichnet mit einem Stern (*). Auf Rechnern mit mehreren parallelen Betriebssystem-Installationen gibt es zusätzlich noch einen Bootmanager. Das ist fast eine Art Betriebssystem, dessen Aufgabe nur darin besteht, die verfügbaren Betriebssysteme zur Auswahl anzubieten und das gewählte System zu starten.
Sowohl Linux als auch Windows liefern entsprechende Bootmanager mit. Windows ist hier aber wenig kooperativ, ein vorhandenes Linux als Betriebssystem bindet es nicht in den Bootmanager ein. Linux hingegen nimmt bei der Installation ein bereits vorhandenes Windows mit in seinen Bootmanager aus. Daher installiert man besser zuerst Windows und anschließend dann Linux, wenn man beide Systeme nebeneinander benutzen möchte.
Für die Partitionierung gibt es unter eigentlich allen Betriebssystemen ein Kommandozeilen-Tool namens fdisk. Zusätzlich sind dann in der Regel auch noch Programme mit grafischer Oberfläche vorhanden.
Bei WindXP findet sich dieses Tool relativ versteckt unter Systemsteuerung → Verwaltung → Computerverwaltung → Datenträgerverwaltung.
Die Vista-Version der Datenträgerverwaltung ist sogar in der Lage auch die Systempartition zu vergrößern.
Weit verbreitet sind auch Festplattentools, die von CD gebootet werden. Veränderungen an Festplatten sind einfacher, wenn die Partitionen nicht gemountet sind.
Ein freies grafisches Tool zum Partitionieren ist gparted. Dieses GNU-Programm nutzt man in der Regel mit Hilfe einer LiveCD, die vom Projekt unter http://gparted.sourceforge.net/ ebenfalls angeboten wird.
Beim aktuellen openSUSE wirkt die Festplattenverwaltung dagegen auf den ersten Blick etwas spartanisch, weil sie mit einer textbasierten Oberfläche aufwartet. Dafür verfügt sie über eine Fülle von Funktionen.
Man kann mit diesem Tool Volumes einrichten, RAID-Verbünde und verschlüsselte Partitionen bzw. Bereiche.
Dabei sind Volumes quasi virtuelle Festplatten, die aus mehreren physikalischen Festplatten bzw. Partitionen bestehen können. Volumes lassen sich durch Hinzufügen von physikalischen Festplatten jederzeit vergrößern, ohne dass das Betriebssystem mehr bemerkt, als die neue Größe.
Verschlüsselte Partitionen sollten für vertrauliche Daten selbstverständlich sein, vor allem auf Laptops. Selbst Geheimdienste verlieren gelegentlich Laptops, der Schaden besteht dann darin, dass die Daten in falsche Hände geraten können. Liegen die Daten auf verschlüsselten Partitionen, so können Finder bzw. Dieb nicht an die Daten heran.
RAID (redundant array of independent disks) Verbünde sind relativ weit verbreitet. Auch hier werden mehrere Partitionen bzw. Festplatten zusammengefasst. Ziel hierbei ist es entweder die Geschwindigkeit der Platten zu erhöhen (Raid 0) oder die Datensicherheit durch Redundanz (Raid 1 bzw. Raid 5). Aufgebaut werden solche Arrays entweder mit Hilfe spezieller Festplatten-Controller oder als Software-Raid. Die Funktionsweise ist ansonsten identisch.
Beim Raid 0 werden zwei identische Platten so zusammen geschaltet, dass die Zugriffe gleichmäßig auf beide Platten verteilt werden. Hierdurch vergrößert sich die Zugriffsgeschwindigkeit, aber auch das Ausfallrisiko.
Beim Raid 1 werden zwei Platten so gekoppelt, dass sie die gleichen Datenbestände haben. Das hat kaum Einfluss auf die Geschwindigkeit, erhöht aber die Datensicherheit, da eine der Platten ausfallen kann, ohne dass es zum Ausfall des Systems kommt.
Beim Raid 5 werden vier Platten so zusammen geschaltet, dass sowohl die Zugriffe verteilt werden, als auch Redundanz vorhanden ist. Damit werden Geschwindigkeit und Sicherheit erhöht.
Bei manchen Raid-Systemen ist es möglich, eine der Platten im laufenden Betrieb auszuwechseln. Sowie die neue Platte dann eingebaut ist synchronisiert der Controller das System, so dass nach kurzer Zeit der gesamte Verbund wieder bereit ist.
9.2.5. DHCP oder wo kommen die IP-Adressen her?
In IP-Netzen müssen sich Rechner mit einer eindeutigen Adresse ausweisen. Generell gibt es zwei Möglichkeiten, IP-Adressen im lokalen Netz zu verteilen:
- feste Adressen per Individualeintrag und
- dynamische Adressen per DHCP.
Bei der ersten Methode gibt man jeden Rechner individuell eine feste IP-Adresse. Dieses Verfahren erfordert eine gute Übersicht und Dokumentation, da niemals zwei Rechner mit der gleichen IP-Adresse im Netz aktiv sein dürfen.
Einfacher zu verwalten ist eine automatische Adress-Zuordnung per DHCP (Dynamic Host Control Protocol). Hierfür benötigt man einen DHCP-Server, der anderen Geräten im Netz, also auch den Windows-Rechnern, IP-Adressen dynamisch zuteilt.
Die Zuordnung einer IP-Adresse zu einem Rechner bezeichnet man als Ausleihe (lease). Um Doppelausleihen auszuschließen, vermerkt der DHCP-Dämon seine Ausleihen in der Datei /var/lib/dhcp/dhcpd.leases. Jede Ausleihe besitzt eine einstellbare Gültigkeit (lease-time). Dadurch kann man erreichen, dass der DHCPD den Rechnern im Netz jedes Mal die gleiche IP-Adresse zuordnet.
Den DHCP-Server kann man auf dem DSL-Internet-Modem/Router oder auf dem (Linux-)Server betreiben. Auf dem Linux-Server muss man den DHCP-Server meist nachträglich installieren, da die Standardinstallation ihn nicht einrichtet.
Nach der Installation muss man die Konfigurationsdatei /etc/dhcpd.conf erstellen.
Im ersten Schritt geht es um die Namen und Adressen, die der DHCP-Server übermitteln soll, in der Regel seine eigenen.
Jetzt fehlen dem DHCP-Server noch Angaben, aus welchem Bereich er die IP-Adressen vergeben darf.
Im folgenden Beispiel vergibt der Server die IP-Adressen aus dem Bereich 192.168.1.20 bis 192.168.1.200 und lässt die darüber und darunter liegenden Bereiche für Sonderaufgaben frei.
Bei den Leasing-Zeiten können wir zunächst die Vorgaben übernehmen, bei denen jeder Client die von ihm ausgeliehene IP-Adresse alle 4 Stunden verlängern muss. Wenn eine Verlängerung nicht möglich ist, verfällt die Ausleihe spätestens nach 2 Tagen.
Im letzten Schritt der Konfiguration können wir entscheiden, ob der DHCP-Server beim Systemstart gleich mit starten soll, oder ob Sie ihn lieber manuell starten möchten. Außer in Testumgebungen sollte der DHCP-Server automatisch starten.
Die erzeugte Konfigurationsdatei hat dann folgenden Inhalt.
/etc/dhcpd.conf
option domain-name "lokales-netz.de"; option domain-name-servers 192.168.1.2; option routers 192.168.1.2; option netbios-name-servers 192.168.1.2; ddns-update-style none; default-lease-time 14400; max-lease-time 172800; subnet 192.168.1.0 netmask 255.255.255.0 { range 192.168.1.20 192.168.1.200; default-lease-time 14400; max-lease-time 172800; }
Im ersten Teil stehen die allgemeinen Einstellungen, wie der Domain-Name, die Adressen der Nameserver und die Adresse des Routers. Weiter unten folgen die lease-Zeiten (Ausleihzeiten bzw. Leasing-Zeiten bei YaST) für die IP. Die IP wird hier nach vier Stunden aktualisiert und verfällt nach zwei Tagen.
Soll der Client hingegen die Ausleihe nur noch einmal täglich mit einer maximalen Gültigkeit von einer Woche erneuern, damit er immer die gleiche IP anfordert, so lange er nicht länger als eine Woche außer Betrieb ist, müssten wir die Zeiten so ansetzen:
default-lease-time 86400; max-lease-time 604800;
Die Zeile ddns-update-style enthält eine neue Funktion des DHCPD für die Windows-Namen der Clients:
ddns-update-style none;
Wenn wir hier statt none den Wert ad-hoc angeben, kann der DHCPD die Windows-Namen der Clients auch gleich in den Nameserver eintragen.
Anschließend folgen Einstellungen für das Netz.
subnet 192.168.1.0 netmask 255.255.255.0 { range 192.168.1.20 192.168.1.200; default-lease-time 14400; max-lease-time 172800; }
Das Subnetz 192.168.1.0 verfügt über die Netzmaske 255.255.255.0. Dies legt fest, dass alle Rechner, deren IP-Adressen sich nur in der letzten Zahl unterscheiden, zum gleichen Subnetz gehören. Der Server wählt die IP-Adressen aus dem Bereich 192.168.1.20 bis 192.168.1.200 und lässt die darüber und darunter liegenden Bereiche für Sonderaufgaben frei.
In der Regel wird man mit der dynamischen Adressvergabe gut zurecht kommen. Für einen Printserver oder für Linux-Terminals mit spezieller Hardware kann man aber auch einzelne IP-Adressen fest vergeben. Dazu ordnet man Hardware-Adressen (MAC-Adressen) einzeln IP- Adressen fest zu.
host printserver { hardware ethernet 08:00:07:26:c0:a5; fixed-address 192.168.1.7; }
Hier bekommt z.B. ein Printserver eine feste IP-Adresse. Dazu benötigt DHCP die Hardware-Adresse von dessen Netzwerkkarte. Diese Hardware-Adressen stehen normalerweise auf dem Gehäuse derartiger Geräte. Der Printserver startet so immer mit seiner festen IP-Adresse. Der DHCP-Server erkennt ihn anhand seiner Hardware-Adresse.
Im Prinzip kann man so allen Rechnern im Netz eine feste IP-Adresse dynamisch zuordnen, man muss nur die Einträge in der Konfigurationsdatei entsprechend pflegen. Der Vorteil gegenüber fest eingetragenen IP-Adressen im jeweiligen Rechner besteht darin, dass man nach dem Clonen der Festplatte nicht noch einmal extra an die Netzwerkkonfiguration heran muss, hier sollte immer der automatische Bezug aktiviert sein.
Wenn auf dem Client die dynamische Adresszuteilung eingeschaltet ist, müsste der DHCP-Server diesen eine IP-Adresse zugewiesen haben. Man sollte dann prüfen, ob das dynamische Zuordnen von IP-Adressen geklappt hat. Je nach Windows-Version gibt es hierzu verschiedene Programme.
Bei Windows 9x-Rechnern ermittelt man die IP-Adresse mit Start • Ausführen
winipcfg
Windows zeigt dann in einem kleinen Fenster die IP-Adresse des Rechners.
Wenn man hier eine korrekte IP für den Rechner sieht und auch die IP des Linux-Rechners richtig eingetragen ist, kann man die IP-Verbindung nutzen.
Bei Windows Vista/XP/2000/NT ruft man mit dem Zubehör-Programm Eingabeaufforderung das Programm ipconfig mit dem Schalter /ALL auf, um alle Verbindungen zu sehen:
ipconfig /ALL
9.2.6. Namensauflösung
IP-Adressen identifizieren Rechner im Internet eindeutig. Diese Art der Adressierung ist für Maschinen ganz praktisch, aber nicht für Menschen. Diesen kommt das hierarchische System von Domain-Namen in der Form www.lern-server.de oder allgemeiner Host.ServerDomain.TopLevelDomain entgegen.
Ruft jemand eine Webseite des Servers www.lern-server.de auf, so muss der Browser die IP-Nummer von www. lern-server.de herausfinden. Diese Aufgabe überlässt er dem Domain Name Service (DNS).
Jedes Programm, das einen Host-Namen mitgeteilt bekommt, versucht sofort, ihn in eine IP-Adresse aufzulösen. Dazu benutzen Internet-Clients folgendes Verfahren:
Zuerst suchen sie eine Datei hosts, bei Windows 9x im Windows-Verzeichnis (meist c:\windows), bei Windows XP/Vista unter Windows\system32\drivers\etc, bei Linux im Verzeichnis /etc. Dort prüfen sie, ob in der Datei zu dem Domain-Namen eine IP-Adresse steht. Wenn nicht, nehmen sie mit den DNS-Servern Kontakt auf, die auf dem Client in den Eigenschaften von IP als DNS-Server eingetragen sind.
Host-Dateien auf Clients lokal zu pflegen, ist sehr aufwändig. Daher nimmt man gern die Dienste von DNS-Servern in Anspruch.
Eigene Name-Server sollte man immer dann einrichten, wenn man im lokales Netz Dienste anbietet, also Printserver, Fileserver oder ähnliches im Einsatz hat, die über Rechnernamen angesprochen werden sollen.. Lokale Name-Server haben folgende Aufgaben:
- Verwalten der Namen für das lokale Netz (Hosting genannt),
- Weiterleiten der DNS-Anfragen an den DNS-Server des Providers (Caching).
Bis 1984 pflegte das Network Information Centre (NIC) die Zuordnung zwischen Namen und IP-Adressen in Form einer großen Tabelle. Als diese Liste zu groß wurde, hat die Netzgemeinde den hierarchischen Domain Name Service eingeführt.
Bisher gab es hauptsächlich zwei Arten von Top-Level-Domains, die nationalen, die mit zwei Buchstaben ein Land identifizieren und die ursprünglichen, die jeweils aus drei Buchstaben bestehen.
Die beiden Arten von Top-Level-Domains werden verschieden verwaltet: nationale NICs – Network Information Centers (www.nic.de, www.nic.at, www.nic.ch, www.nic.fr) – verwalten die Landesdomains wie de (Deutschland), at (Österreich), ch (Schweiz) und fr (Frankreich).
Inzwischen verwalten zahlreiche konkurrierende Firmen die Drei-Buchstaben-Domains aus der Anfangszeit des Internet (com, edu, gov, mil, net, org, int). Hier kommt es immer häufiger zu Pannen wie Doppelvergabe. Für die neuen Top-Level-Domains biz, info etc. konnten sich Firmen um die Domain-Verwaltung bewerben. Auch wenn die Vergabe nicht immer ganz transparent geworden ist, ist die eindeutige Zuständigkeit geklärt. Der Ablauf einer Namens-Anfrage ist folgendermaßen:
- Ruft jemand in den USA die Web-Adresse www. lern-server.de auf, so landet dessen Name-Server-Anfrage über Zwischenschritte beim zentralen Name-Server des NIC, dem root-Server.
- Dieser übergibt die Anfrage an den Name-Server des De-NIC, der Sie dann an den für lern-server.de zuständigen Name-Server (ns.namespace4you.de) weiter gibt, von wo er nun endgültig die IP-Adresse (85.214.46.129) bekommt.
- Diese IP-Adresse geht dann auf dem langen Weg über die beteiligten Nameserver an den anfragenden Rechner weiter.
Da sich die meisten Name-Server Adressen in einem Cache merken, nehmen Anfragen nur selten diesen langen Weg. Dieser Cache hat aber auch den Nachteil, dass es je nach Konfiguration ein paar Tage dauern kann, bis der letzte Name-Server einen neuen Eintrag oder eine Änderung mitbekommen hat.
Zusätzlich zu diesen Anfragen, zu einem Namen eine IP-Adresse zu ermitteln, muss ein Name-Server auch umgekehrt den Namen, der zu einer IP-Adresse gehört, ermitteln. (Reverse Lookup). Auch die Zuordnung eines zuständigen Mailservers für einen Adressbereich erfolgt über den Nameserver. Hierfür sind die MX-records (Mail Exchanger-Einträge) zuständig.
In kleineren Netzen ist ein eigener Name-Server nicht notwendig. Hier kann man die vorhandenen Rechner einfach in die Hosts-Datei eines jeden Rechners eintragen. Das Format dieser Datei ist für Linux und Windows identisch. Bearbeiten können Sie die Datei entweder direkt mit einem Texteditor:
/etc/hosts
# # hosts This file describes a number of hostname-to-address # mappings for the TCP/IP subsystem. It is mostly # used at boot time, when no name servers are running. # On small systems, this file can be used instead of a # "named" name server. # Syntax: # # IP-Address Full-Qualified-Hostname Short-Hostname # 127.0.0.1 localhost # special IPv6 addresses ::1 localhost ipv6-localhost ipv6-loopback fe00::0 ipv6-localnet ff00::0 ipv6-mcastprefix ff02::1 ipv6-allnodes ff02::2 ipv6-allrouters ff02::3 ipv6-allhosts 192.168.1.2 boss.lokales-netz.de boss
Zumindest die Zeilen, die den lokalen Rechner beschreiben, hier die beiden hervorgehobenen Zeilen, müssen sich immer in der Hosts-Datei finden. So kann der Server zumindest seine eigenen Adressen immer auflösen.
Einen großen Teil der Datei können Sie ignorieren, er ist für die Erweiterung des IP-Adressformates auf 16Byte bedeutsam.
Mit der Konfiguration eines Nameservers hat man nicht nur im lokalen Netz zu tun, sondern eventuell auch, wenn man eine eigene Domain besitzt und unter deren Adresse Internetdienste anbietet. Wenn man den Webspeicherplatz und die Domainverwaltung beim gleichen Provider bucht, dann hat man immer dann Probleme, wenn man das Speicherplatz-Angebot wechseln möchte. Außerdem bieten einen nicht viele der Speicherplatz-Anbieter auch Zugriff auf den Nameserver. Am flexibelsten ist man, wenn man die Domainverwaltung bei einem extra Provider, z.B Domainfactory (http://www.df.eu) vornehmen lässt. Hier hat man sehr bequemen Zugriff auf den Nameserver:
Man kann hier recht bequem eine Vielzahl von Einstellungen vornehmen. Domainfactory bietet eine Art Catchall-Funktion an, über den Eintrag *.lern-server.de sind (fast) alle Subdomains angesprochen, solange sie keinen individuellen Eintrag besitzen. Die fett hervorgehobenen Einträge muss man aber immer individuell überschreiben, da DF dafür sonst eigene Einstellungen vorgibt.
Für jeden Eintrag muss man den Typ auswählen und dann das Ziel.
Nicht alle Typen aus der Liste sind allgemein bekannt. Die Hilfe-Seiten bieten dazu aber genügend Informationen.
Was man bei Domainfactory natürlich nicht einstellen kann, ist die Rückwärtsauflösung der IP-Adresse zu einem Domainnamen. Das ist relativ logisch, da beliebig viele Domains zur gleichen IP-Adresse auflösen können, die IP-Adresse aber nur zu einer einzigen Domain.
Will ein Rechner wissen, welche Domain zur IP-Adresse 85.214.46.129 gehört, so landet diese Anfrage immer beim Eigentümer des zugehörigen IP-Blockes 85.214.16.0 – 85.214.139.255, in diesem Fall der Strato AG.
9.2.7. Zugriff auf das Internet mittels Proxy
Um in Unternehmen und Bildungseinrichtungen und sonstigen Einrichtungen im Interesse des Jugendschutzes Seiten zu filtern, benötigt man Zusatzprogramme, die Seiten mit unerwünschten Inhalten wie bestimmten Text- oder Grafikobjekten und von einschlägigen Web-Sites ignorieren.
Hierzu kann man in lokalen Netzen die von den Anwendern besuchten Seiten zentral speichern. Einerseits kommt der Geschwindigkeitsvorteil für das erneute Laden allen zugute, da die Ladezeiten im lokalen Netz vergleichsweise kurz sind. Andererseits können Systemverwalter damit das Surf-Verhalten der Anwender auch dann überwachen, wenn diese die lokalen Speicher nach ihrem jeweiligen Arbeitsende löschen.
Für diesen Zweck setzt man auf Kommunikations-Servern einen Proxy-Server, bei Linux meist Squid, ein.
Zusätzlich zu der Cache-Funktion verfügt Squid über eine Stellvertreter- (Proxy) Funktion. Bei der Einwahl ins Internet stellt der Provider nur eine einzige offizielle IP-Adresse zur Verfügung, die der Linux-Server bekommt. Die anderen Rechner im Netz verfügen nur über lokale IP-Adressen, an die Web-Server keine Antworten schicken können. Diese lokalen Rechner fordern WWW-Seiten indirekt vom Squid an, welcher sie mit der IP-Adresse des Linux-Routers aus dem Internet abruft, sofern er sie nicht schon lokal gespeichert hat.
Ein Proxy-Cache hat mehrere Aufgaben und Vorteile:
- er beschleunigt den Internet-Zugriff, da schon einmal geladene Seiten nicht erneut übertragen werden,
- er hat eine Stellvertreterfunktion für die Rechner im Netz;
- er kann kontrollieren, welche Inhalte die Benutzer im lokalen Netz anfordern dürfen und
- er dokumentiert, wer wann von welchem Endgerät welche Web-Seiten angefordert hat.
Wie sehr der Proxy-Server das Laden von Web-Seiten dadurch beschleunigt, dass er mehrfach angeforderte Seiten aus dem lokalen Netz statt aus dem Internet bereitstellt, hängt in der Praxis davon ab, wie viele Nutzer die gleichen Seiten anfordern und sich eine vielleicht nur schmalbandige Internet-Anbindung teilen müssen.
Die Proxy- (Stellvertreter-) Funktion ist die einfachste Möglichkeit, beliebig vielen Rechnern im Intranet den Zugriff auf WWW-Seiten zu ermöglichen. Da dabei nur der Proxy Anfragen ins Internet stellt, kommt man mit einer einzigen offiziellen IP-Adresse aus.
Proxies können gezielt einzelne Seiten oder ganze Internet-Domains sperren, damit kein Browser, der sie anfordert, solche Seiten überhaupt sehen oder laden kann. Da ein Proxy alle Zugriffe protokollieren kann, lässt sich überwachen, wer welche Seiten aufgerufen hat.
Anfragen von Client-Browsern gehen nicht mehr direkt ins Internet, sondern zum Proxy-Server. Dieser prüft, ob er eine aktuelle Version der angeforderten Seite gespeichert hat. Wenn die Seite vorliegt und noch aktuell ist, liefert er sie direkt aus dem lokalen System heraus an den Browser.
Hat er die Seite nicht im Speicher oder ist sie nicht mehr aktuell, so lädt der Proxy sie aus dem Internet, speichert sie im lokalen Netz und stellt sie dann den Browsern der Clients zur Verfügung.
Da alle Linux-Distributionen Squid enthalten, lässt er sich einfach durch Auswahl des zugehörigen Pakets einrichten.
Konfiguriert wird Squid über eine recht umfangreiche Textdatei squid.conf. Wichtigster Inhalt dieser Datei sind die Zugriffsregeln.
# INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS # Example rule allowing access from your local networks. Adapt # to list your (internal) IP networks from where browsing should # be allowed acl freiedomain dstdomain "/etc/squid/freiedomain.acl" acl webtoolsdomain dstdomain "/etc/squid/domain.acl" acl webtoolsregexp url_regex -i "/etc/squid/regexp.acl" acl webtoolsuser proxy_auth "/etc/squid/user.acl" acl webadmin proxy_auth "/etc/squid/admin.acl" http_access allow webadmin http_access allow freiedomain http_access deny webtoolsdomain http_access deny webtoolsregexp http_access deny webtoolsuser http_access deny !password acl our_networks src 192.168.0.0/255.255.0.0 http_access allow our_networks http_access allow localhost # And finally deny all other access to this proxy http_access deny all
Mit dem Schüsselwort acl wird die Definition von Zugriffsregeln eingeleitet. Diese Regeln können sich z.B. auf die Zieldomain (dstdomain) beziehen, oder auch auf reguläre Ausdrücke (url_regex) innerhalb der angeforderten URL. Meist gibt man als Vergleich eine Datei an, in der dann die betreffenden Domains bzw. Ausdrücke stehen.
Die Zeilen, die mit http_access beginnen, schalten dann die vorher definierten Regeln scharf, indem sie den Zugriff erlauben oder verbieten. Hier kommt es sehr auf die Reihenfolge an. Im vorliegenden Beispiel wird zuerst überprüft, ob der Benutzer in der Liste der Webadmins steht, bevor die Listen mit den gesperrten Domains und Ausdrücken berücksichtigt werden. Ein Webadmin kann also problemlos die gesperrten Seiten erreichen.
Damit Client-Browser den Proxy-Cache nutzen können, müssen Sie ihn aktivieren. Dazu muss man im jeweiligen Browser die IP-Adresse des Proxy-Servers und seine Portnummer (voreingestellt 3128) eintragen. Den Browser Mozilla konfiguriert man unter Bearbeiten • Einstellungen • Erweitert • Netzwerk • Verbindung • Einstellungen... Er öffnet ein Formular, in dem Sie Parameter für verschiedene Protokolle einstellen können. Für HTTP, HTTPS (Sicherheit) und FTP gibt man die IP-Nummer oder den Namen des Kommunikations-Servers und den Port 3128, die Voreinstellung von Squid an. Die restlichen Zeilen bleiben wie voreingestellt. In dem großen Eingabefeld kann man Adressen (im lokalen Netz) angeben, für die der Browser den Proxy nicht benutzen soll.
Beim Microsoft Internet Explorer finden sich die gleichen Einstellmöglichkeiten unter Extras • Internetoptionen • Verbindungen • LAN-Einstellungen. Geht man hier auf Erweitert, so öffnet der Explorer einen weiteren Dialog mit der praktischen Einstellmöglichkeit Für alle Protokolle denselben Server verwenden.
Ähnlich wie beim Mozilla Firefox gibt es auch hier ein weiteres Formular für die verschiedenen Protokolle.
Auch hier kann man wieder die lokalen Adressen ausnehmen.
Bei Opera findet man die entsprechenden Einstellungen in einem einzigen Formular unter Extras • Einstellungen • Erweitert • Netzwerk • Proxyserver.
In manchen Netzen kann man die Proxyeinstellungen auch automatisch ermitteln lassen. Dazu muss der Serverbetreiber nur an der richtigen Stelle eine Datei namens wpad.dat ablegen, die die Informationen über den Proxyserver enthält. Die Datei kann der Client dann per DHCP oder auch beim Start des Browsers automatisch beziehen.
9.2.8. Nutzung externer Sperrlisten – SquidGuard
Die meisten Anwender wären damit überfordert, regelmäßig die Liste der unerwünschten Internetseiten aktualisieren zu müssen. Daher gibt es Anbieter, die zentral derartige Listen pflegen und verbreiten. Darunter finden sich kommerzielle Anbieter wie z.B. Time for Kids (http://www.time-for-kids.de) aber auch freie Projekte, wie SquidGuard (http://www.squidguard.org/). Time for Kids gibt an, bereits mehr als 5 Mrd. Webseiten kategorisiert zu haben.
Grundsätzlich ist es so, dass ausgehend von einem vorhandenen Squid, ein Hilfsprogramm installiert wird, welches die zusätzlichen Listen auswertet, die aufgrund des Umfangs in einem optimierten Format vorliegen müssen. Diese Listen werden in regelmäßigen Abständen von den Anbieter-Seiten aktualisiert und neu geladen.
SquidGuard bietet zusätzlich auch Logdateien, in denen die Sperraktionen protokolliert werden.
9.2.9 Laufwerke im Netz
In einem Netzwerk mit verschiedenen Arbeitsplätzen ist es wünschenswert, dass die Benutzer ihre Dateien nicht lokal auf dem jeweiligen Arbeitsplatz speichern, sondern zentral auf Laufwerken im Netz. Dadurch spielt es keine Rolle, an welchem Arbeitsplatz ein Nutzer am nächsten Tag arbeitet, er findet auf alle Fälle all seine Dateien wieder. Für den Administrator erleichtert dies auch die Sicherung der Dateien, da sie auch bei ausgeschaltetem Arbeitsplatz zugänglich sind.
Für das Nutzen von Netzwerklaufwerken gibt hauptsächlich es zwei Systeme:
- Samba
- NFS
Unter Linux ist der Samba-Dienst ist ein Nachbau der Funktionalitäten der Windows-Server (Server Message Block-Servers). Ein Samba-Server ist für die Arbeitsstation kaum von einem Windows-Server zu unterscheiden, er stellt Laufwerke und viele andere Dienste zur Verfügung.
In einem reinen Unix-Umfeld ist Samba nicht notwendig, hier steht das Network File System (NFS) zur Verfügung. Per NFS lassen sich Verzeichnisse auf Servern so in den lokalen Dateibaum des Rechners einbinden, dass sie für Anwendungen wie lokale Verzeichnisse wirken. Dieses System kann man in großen Installationen, wie z.B. Der Informatik, nutzen, um Anwendungen nur einmal zu installieren und trotzdem an allen Arbeitsplätzen nutzen zu können.
Zu diesem Zwecke werden Anwendungen in einem speziellen Zweig des Dateibaumes, oft /opt/, installiert. Dieses Verzeichnis wird dann per NFS exportiert und auf den Arbeitsplätzen als Verzeichnis /opt in den Dateibaum integriert. Das ganze funktioniert solange, wie die Anwendungen keinen schreibenden Zugriff auf diesen Pfad erfordern, sonst käme es zum Chaos. Unter Unix ist aber in der Regel sehr sauber geregelt, in welche Ordner eine Anwendung schreiben darf und in welche nicht.
Im Extremfall kann man mit NFS Rechner einrichten ohne jegliche lokale Festplatte. Man muss dann nur darauf achten die Ordner, in die temporäre Daten geschrieben werden müssen in besondere Bereiche, z.B. RAM-Laufwerke auszulagern. Die Benutzerdaten landen ja sowieso in den Home-Laufwerken auf dem Server.
Es gibt mehrere erfolgreiche Projekte, die das Einrichten von festplattenlosen Arbeitsplätzen erleichtern. Am bekanntesten dürfte LTSP, das Linux Terminal Server Projekt (http://www.ltsp.org/), sein. Relativ jung noch ist OpenSLX (http://www.openslx.org/), aber es basiert auf Installationen an der Universität Freiburg. Bei diesen Projekten wird auch das komplette System aus dem Netz gebootet.
Bei Windows-Systemen ist NFS leider nur mit zusätzlicher Software möglich, daher gibt es auch wenig Beispiele für festplattenlose Windows-Arbeitsplätze. Dabei hat NFS gegenüber Samba den Vorteil, dass es auch über das Internet funktioniert. Die meisten Router blockieren die für Samba notwendigen Ports, aber generell war dieses Protokoll auch nie wirklich routingfähig, da es sehr viel mit Broadcasts arbeitet. NFS über das Internet ist nicht ungewöhnlich, sinnvoll eingebundene NFS-Laufwerke sind transparenter in der Nutzung, als FTP-Dienste.
10. Anwendungen über das Netz – Remote Desktops
Die ständig wachsende Zahl von Computer-Arbeitsplätzen, auch in Schulen, fürhrt zu einem sehr hohen Wartungsaufwand, der kaum noch zu leisten ist, dabei gibt es Lösungen.
Anwender können lokal an einem Computer arbeiten (lokales Computing) oder ihr Endgerät über ein Netz mit einem Computer verbinden, auf dem ihre Anwendungen ablaufen (Network Computing). Bei lokalem Computing sind die Anwender-Peripheriegeräte Bildschirm, Maus, Tastatur, Lautsprecher, Drucker, Scanner usw. direkt an den Computer angeschlossen, der die Anwendungen ausführt.
Wenn Anwender vom Home-Office oder mobil auf zentralen Büroanwendungen arbeiten sollen, benötigen sie sichere Weitverkehrszugänge auf diese Anwendungen. Beim Network Computing sind die Peripheriegeräte an ein weiteres Endgerät (ein Terminal) angeschlossen, das seinerseits seine Benutzerein- und -ausgaben über ein Netz mit einem anderen Computer austauscht, auf dem die Anwendungen laufen. Damit Computer, auf denen Anwendungen laufen, und die Endgeräte der Benutzer ihre Ein- und Ausgabedaten austauschen können, verwenden sie ein Übertragungsprotokoll.
Hierfür gibt es verscheidene Möglichkeiten:
- standardisierte und frei zugänglich dokumentierte Protokolle aus der Unix/Linux-Welt,
- proprietäre, durch Urheberrecht geschützte Protokolle von Microsoft und Citrix sowie
- das plattformunabhängige Virtual Network Computing (VNC )
Bei Unix/Linux ist es seit Mitte der 90er Jahre des letzten Jahrhunderts selbstverständlich, dass man von einem beliebigen Rechner aus eine Desktop-Sitzung auf einem anderen PC nutzen kann. Das Massachusetts Institute of Technology (MIT) hatte schon damals auf der Basis der Vorgängerprojekte »V« und »W« das X-Window-System als grafische Benutzeroberfläche für Unix-Systeme entwickelt. Der Anwendungsserver und das Benutzer-Endgerät kommunizieren dabei über das X11-Protokoll. Dabei sind die Begriffe Server und Client anders als gewohnt definiert, da sie den Blickwinkel der Anwender und nicht des Rechenzentrums verwenden:
- Am Benutzer-Endgerät läuft ein X-Server, der Benutzereingaben (Maus, Tastatur) entgegennimmt und Ausgaben auf seinem Bildschirm darstellt.
- Anwendungen, sogenannte X-Clients wie Textverarbeitung, Mail etc., nutzen diese grafische Oberfläche, indem sie von ihr die Benutzereingaben erhalten und ihr Daten zur Ausgabe auf deren Grafikbildschirm schicken.
Den Datenverkehr zwischen X-Server und X-Client reduziert das Protokoll NX von NoMachine, einem Unternehmen des italienischen Softwarehauses Medialogic.
Microsoft machte Ende des letzten Jahrhunderts sein Serverbetriebssystem Windows NT 4 Server Terminal Server Edition mit Hilfe von Citrix transportfähig und pflegt diese Eigenschaft bei seinen Serverbetriebssystemen Windows 2000 Server, Windows 2003 Server und Windows Server 2008.
Zudem hat Microsoft seine Desktop-Betriebssysteme Windows XP und Vista für je eine einzelne Sitzung ein wenig nach außen geöffnet, damit Anwender von zu Hause auf ihren XP- und Vista-Bürorechnern weiterarbeiten können, ohne dafür zusätzliche freie oder kommerzielle Software zu benötigen. Für den Datenaustausch zwischen eigenen Terminalservern sowie nach außen geöffneten XP/Vista-Desktop-Sitzungen einerseits und den Benutzer-Endgeräten andererseits setzt Microsoft sein proprietäres Remote Desktop Protocol (RDP) ein. Dieses unterscheidet sich von dem Citrix-Protokoll Independent Computing Architecture (ICA) für die Kommunikation zwischen dessen Terminalservern (Citrix Presentation Server, heute Citrix Xen App) und Benutzer-Endgeräten.
Das Citrix-Protokoll wird auf den Verwaltungs-Arbeitsplätzen in Hamburgs Schulen intensiv genutzt.
Die Schnittstellen für X.11 und NX für Benutzer-Endgeräte sind öffentlich dokumentiert. Microsoft hat die Spezifikationen für sein RDP inzwischen auf seinem MSDN (Microsoft Developer Network) veröffentlicht. Auch schon eine relativ lange Tradition hat das plattformunabhängige Virtual Network Computing (VNC). Auch diese ursprünglich von Olivetti und dem Oracle Research Laboratory entwickelte und inzwischen quelloffene Lösung zeigt den Bildschirm des Rechners, auf die VNC-Serversoftware läuft, auf einem Rechner, auf dem die VNCViewer-Software arbeitet, an und sendet Maus- und Tastatureingaben an den VNCServer.
Das Protokoll ist so flexibel, dass man damit seine Rechner von mobilen Endgeräten aus steuern kann.
10.1. X11
Recht einfach ist das Arbeiten über das Netz auf Linux-Systemen mit einer OpenSUSE-Installation. Hier muss eigentlich nur der X-Zugriff über das Netz erlaubt werden. Dazu muss in der Datei kdmrc (bei einem KDE-System) eine Zeile verändert werden
[Xdmcp] # Whether KDM should listen to incoming XDMCP requests. # Default is false Enable=true
Danach kann dann ein entferner Linux-Rechner mittels:
X -query 192.168.1.1 :1
auf den Server hier zugreifen.
Dabei startet X das Programm-Xserver auf der Konsole :1, also als zweiten grafischen Bildschirm. Das -query 192.168.1.1 gibt an, welcher Server der X-Client sein soll.
Bei diesem Verfahren startet der neue Xserver immer im Vollbild und man muss mit den Tastenkombinationen Strg+Alt+F7 bzw. Strg+Alt+F8 zwischen den beiden Desktops wechseln.
Etwas flexibler wird man mit der Server-Erweiterung Xnest, die den neuen Desktop in den vorhandenen Desktop einbindet. Der Aufruf unterscheidet sich nur geringfügig.
Xnest :1 -query 192.168.1.1
Das X11-Protokoll hat leider ein paar kleine Nachteile. Der Datenverkehr zwischen Server und Client ist sehr hoch, daher gibt es Abwandlungen des Protokolles, die diese Nachteile vermeiden.
10.2. Virtual Network Computing (VNC)
Das plattformunabhängige Protokoll Virtual Network Computing (VNC) lässt sich für viele Anwendungen nutzen:
- Benutzer bitten Sie aus der Ferne um Hilfe an ihren Desktops.
- Sie wollen einen Windows-Desktop zusätzlich auf Ihrem Linux-PC nutzen oder umgekehrt.
- Sie wollen das Fernsehbild und den Ton Ihrer mit Linux gepatchten Nokia-D-Box auf ihrem Windows- oder Linux-Desktop sehen und hören.
Virtual Network Computing stammt aus dem Jahre 1998. Ursprünglich wurde es an den AT&T Laboratories in Cambridge entwickelt und 2002 in ein ausgegründetes Unternehmen namens RealVNC (http://www.realvnc.com/) eingebracht. Neben der kommerziellen Variante, die sich beispielsweise in Fernsteuerlösungen für Serverhardware (Keyboard, Video, Maus) findet, existieren eine freie Version und einige freie Weiterentwicklungen und Verbesserungen, wie UltraVNC (http://www.uvnc.com) oder TightVNC (http://www.tightvnc.com/).
Letzteres ist in der Linux-Welt verbreiteter Standard und steht unter der GPL-Lizenz für freie Software. VNC erlaubt den Zugriff auf einen gemeinsamen Desktop von verschiedenen Rechnern, die unterschiedliche Betriebssysteme verwenden können.
VNC löst das Problem anders als X.11. Es stellt den kompletten Desktop des einen Rechners in einem Fenster auf einem weiteren Rechner dar. VNC ist auf die optimale Nutzung schmaler Bandbreiten getrimmt und hat damit dem einfachen Remote-X.11 einiges voraus. Die benötigte Bandbreite für flüssiges Arbeiten hängt von der CPU (ein etwas älterer PentiumIII reicht aus), von der Bildauflösung sowie der Farbtiefe ab. Passiert nichts, fallen keine Daten an. Je größer jedoch das zu transportierende Bild und je besser die Farbtiefe, desto mehr Daten müssen bei jeder Änderung des Desktop-Inhalts übermittelt werden. Ganz extrem sind Videosequenzen.
Das VNC-Paket besteht aus zwei Komponenten, dem Server und dem Client, in der VNC-Sprache Viewer. Der Server greift die Daten vom laufenden Desktop ab und kann diese an einen oder mehrere Clients über das Netzwerk weiterreichen. Clients verbinden sich auf laufende VNC-Server und sorgen für die lokale Darstellung des entfernten Desktops in einem Fenster der grafischen Oberfläche, von der sie gestartet wurden. Während unter Windows genau eine Möglichkeit zur Verfügung steht, gibt es bei Linux zwei Varianten, um einen VNC-Server zu betreiben:
- Entweder Sie starten den Server als eigenen Prozess mit dem Kommando vncserver. Dieser Server öffnet keinen grafischen Desktop auf der Maschine, auf der er gestartet wurde. Damit können Sie mehr als einen VNC-Export anbieten. Es bedeutet aber auch, dass eine aktive X.11-Session auf diesem Wege nicht exportiert werden kann.
- Oder Sie schalten das x11vnc-Modul in Ihrer X-Server-Konfiguration ein und erlauben damit den entfernten Zugriff auf einen lokal laufenden Desktop. Dieses entspricht dem von Windows gewohnten Verhalten.
Im Gegensatz zu einer X.11-Sitzung, die mit dem Abschalten des Remote-Displays automatisch alle darin gestarteten Prozesse beendet, kann eine VNC-Sitzung ewig weiterleben. Der Client hängt sich lediglich vom Server ab, veranlasst jedoch nicht dessen Herunterfahren. Damit bleibt der VNC-Server aktiv, auch wenn sich alle VNCClients abgemeldet haben und alle in der Session gestarteten Programme laufen weiter. So kommt man bei der erneuten Verbindung zu exakt dem Zustand zurück, an dem der Client beendet wurde.
Den VNC-Server darf ein normaler Nutzer starten, er wird dann nur noch einem Passwort gefragt, welches dann auf dem entfernten Rechner angegeben werden muss.
10.3. Nomachine NX
Bei X-Programmen tauschen der X-Client und X-Server über das Protokoll X.11 Fragen und Antworten miteinander aus und warten dabei auf alle Antworten auf jede Frage. So eine Frage mit Antwort heißt auch Roundtrip . Bereits oben wurde am Beispiel eines animiert aufklappenden Menüs erklärt, dass ein- und dieselbe Ausgaben viele oder wenige Dialoge erfordern kann.
X-Programme wissen bei ihrer Ausführung auf einem X-Client nicht, wo sich der zugehörige X-Server befindet. Sie können bei einem über ein WAN erreichbaren X-Server nicht selbständig Roundtrips zwischen X-Server und X-Client einsparen. Auf dieses Problem zielt die Erweiterung NX des X.11-Protokolls der Division Nomachine von Medialogic S.p.A..
NX beschleunigt den Aufbau von X-Bildschirmen durch:
- Cachen (Speichern und aus dem Speicher wieder verwenden) bereits einmal übertragener Daten und differentielle Übertragung,
- Einsparen der meisten X-Roundtrips sowie
- Verdichten der verbleibenden X-Kommunikation.
Durch diese Effizienzverbesserung können Nutzer mit Network-Computing zufriedener sein als bei Technologien wie reinem X.11. Nomachine NX unterstützt Linux-, Solaris- und Windows-Anwendungsserver sowie Windows-, Solaris-, Linux- und MacOS/X- Clients.
Die Server-Version von NX steht naturgemäß nur für Unix-Server zur Verfügung. Über einen Unix-Server als Router ist aber auch der Zugang auf Windows-Server problemlos möglich.
10.4. Microsofts Remote Desktop Protocol
Mit dem Remote Desktop Protocol liefert Microsoft seit Ende des letzten Jahrtausends seine Terminaldienst-Sitzungen von den Terminalserver-Versionen seines Serverbetriebssystems an Benutzer-Endgeräte. Um von einem Server aus mehrere Benutzer Sitzungen bereitstellen zu können, hatte Microsoft dazu die sogenannte MultiwinTechonologie von Citrix lizenziert, nicht aber deren Übertragungsprotokoll Independent Computing Architecture (ICA). Die Multiwin-Technologie erlaubt es, auf Windows-Servern getrennte Benutzersitzungen ablaufen zu lassen und deren Benutzer-Dialoge aufzusplitten. Microsoft bietet die Terminaldienste seiner Windows-Server für drei Anforderungen von Unternehmen an:
- Fernwartung der Windows-Server,
- mit wenig Aufwand zu wartende und sicherere Anwendersitzungen als Antwort auf die ausufernden Gesamtkosten von Anwender-PCs und dabei
- Benutzerbetreuung durch gleichzeitiges Darstellen und Steuern der Anwendersitzungen auf einem Endgerät im Helpdesk.
Die Terminaldienste erlauben, viele populäre Windows-Programme auf Windows-Servern ablaufen zu lassen und über das RDP-Protokoll an Benutzer-Endgeräte zur Darstellung zu übermitteln. Da Windows-Anwendungen aber als Ein-Benutzer-Programme entwickelt sind und teils direkt auf PC-Hardware zugreifen wollen, lassen sich etliche Windows-Programme selbst mit erheblichem Programmier-Aufwand nicht über Terminaldienste bereitstellen.
Als Alternative zu Terminaldiensten bietet sich inzwischen der Fernzugriff auf XP/Vista-Rechner an. Seit Windows XP verwendet Microsoft sein Remote Desktop Protocol auch für den Fernzugriff (Remote Desktop Connection – RDC) auf Anwender-PCs. Damit können Anwender vom zu Hause aus ihrem Home Office oder von unterwegs auf offene Sitzungen ihres Büro-PCs zugreifen, ohne wegen der Einschränkungen von Terminaldiensten auf eine Auswahl der auf Terminalservern lauffähigen Windows-Programme angewiesen zu sein. Dieser Fernzugang wird inzwischen mehr und mehr dazu genutzt, um Desktops mit XP und Vista zentral aus Rechenzentren bereitzustellen.
Die Version 6.0 von RDP hat Microsoft im Jahr 2007 mit Windows Vista eingeführt, die Vorgänger 5.2 mit dem Service Pack 2 von Windows XP und 5.1 zuvor mit dem Service Pack 1 von Windows XP, aktuell ist RDP 6.1. Gegenüber der Fünfer-Version hat Microsoft u. a. die Farbtiefe des Bildschirms erhöht und das Verschlüsselungsverfahren geändert.
Will man unter WindXP Prof. Die Terminaldienste aktivieren, so geht dies über Systemsteuerung → System → Registerkarte Remote.
Hier muss bei Remotedesktop das Häkchen gesetzt werden. Will man auch Benutzern den Zugang erlauben, die keine Administratoren sind, so muss man diese unter Remotebenutzer auswählen angeben.
Will man nun von einem Arbeitsplatz aus auf den fernen Rechner zugreifen, so bnötigt man dazu einen RDP-Client. Für WindXP wird dieser von Microsoft mit ausgeliefert und findet sich unter Programme → Zubehör → Kommunikation → Remotedesktopverbindung.
Hier gibt man den Zielrechner und die zugehörigen Benutzerdaten an. WindXP ist für die Remote-Nutzung nur eingeschränkt tauglich, da nur ein Nutzer zur Zeit aktiv sein kann, ein eventueller lokaler Benutzer wird abgemeldet.
Die Server-Versionen lassen natürlich mehr Remote-Nutzer zu.
Auch unter Linux gibt es ein Client-Programm für RDP, das Programm Rdesktop (http://www.rdesktop.org/), von dem auch der Screenshot stammt. Rdekstop ist eigentlich ein Konsolen-Programm, es gibt aber eine Reihe von graphischen Frontends.
Recht interessant ist es, bei RDP-Verbindungen mit den Sound-Einstellungen zu spielen. Man hat nämlich die Wahl, ob der Sound auf dem lokalen Rechner oder auf dem fernen Rechner erscheinen soll. Im Windows-Client finden sich die Einstellungen im Reiter Lokale Ressourcen, bei rdesktop geht es auch über die Kommandozeile.
rdesktop -0 -r sound:local 192.168.1.152
bzw.
rdesktop -0 -r sound:remote 192.168.1.152
Für NX:
http://h1020819.serverkompetenz.net/plugin/nxapplet.html
Oder
http://nx.lokales-netz.de/plugin/nxapplet.html
Es fehlen noch
-Zentrale Verwaltung der Benutzerdaten
Arbeitsgruppe/Domäne
NIS
LDAP
...
-Schlanke Endgeräte
X-Terminals
LTSP
LDC