SlideShare ist ein Scribd-Unternehmen logo
1 von 126
Downloaden Sie, um offline zu lesen
I
Der Linux – Schulwebserver                                                                                                              1

Inhaltsverzeichnis

1    Linux Grundlagen .............................................................................................................3
  1.1      Was ist Linux? ..........................................................................................................3
  1.2      Linux-Geschichte ......................................................................................................7
  1.3      Open your mind / Open Source ................................................................................9
  1.4      Unterschied Windows – Linux ..................................................................................9
2    Planung ..........................................................................................................................11
  2.1      Hardwarevoraussetzung.........................................................................................11
  2.2      Die Serverkonfiguration ..........................................................................................11
  2.3      Netzwerkszenarien .................................................................................................12
3    TCP/IP ............................................................................................................................13
  3.1      TCP/IP-Referenzmodell..........................................................................................13
  3.2      IP Adressierung ......................................................................................................16
  3.3      Routing ...................................................................................................................18
  3.4      Netzklassen ............................................................................................................19
  3.5      DNS ........................................................................................................................21
4    Grundinstallation.............................................................................................................22
  4.1      Grundeinstellungen ................................................................................................22
  4.2      Softwareauswahl ....................................................................................................24
  4.3      Netzwerkkonfiguration ............................................................................................29
  4.4      Grafikkonfiguration .................................................................................................32
  4.5      FTP – Installation....................................................................................................35
5    Basiskonfiguration ..........................................................................................................43
  5.1      Usermanagement ...................................................................................................43
  5.2      Konfiguration der Netzwerkkarte ............................................................................44
  5.3      Update ....................................................................................................................47
  5.4      Softwareinstallation ................................................................................................49
  5.5      Zeitsynchronisation.................................................................................................50
6    Die Shell .........................................................................................................................53
  6.1      Verzeichnisse .........................................................................................................56
  6.2      Dateien ...................................................................................................................58
7    Konfiguration einfacher Serverdienste ...........................................................................63
  7.1      Apache-Webserver .................................................................................................63
  7.2      vsftp-Server ............................................................................................................65
  7.3      MySQL-Datenbankserver .......................................................................................68
  7.4      Webmin-Fernwartung .............................................................................................72
8    Der Schulserver..............................................................................................................77
  8.1      Die schnelle Schulhomepage .................................................................................77
  8.2      Das LMS Moodle ....................................................................................................90
9    Server Security .............................................................................................................110
  9.1      SuSE Firewall .......................................................................................................110
  9.2      MySQL und phpMyAdmin.....................................................................................114
  9.3      Webmin ................................................................................................................116
  9.4      Apache mit mod_ssl .............................................................................................117
10      Stichwortverzeichnis.................................................................................................119
11      Abbildungsverzeichnis..............................................................................................121
12      Tabellenverzeichnis..................................................................................................124
13      Literaturverzeichnis ..................................................................................................125
Der Linux – Schulwebserver                                                                    2


Vorwort

LINUX, das Unix ähnliche System von Linus Torvald, ist zu einer echten Alternative für
Schulen gereift. Speziell für Schulen bietet ein solches System viele Vorteile. Abgesehen von
der günstigen Anschaffung und des geringen Wartungsaufwandes gibt es eine Vielzahl von
Erweiterungen, die das schulische Arbeiten erleichtern.

Ich habe versucht eine Installation von SuSE Linux 9.2 für eine typische Schulumgebung zu
beschreiben. Das Ziel der Installation ist eine einfach zu betreibende Schulhomepage zu
erstellen, sowie ein Lern Management System für den schulischen Gebrauch zu
konfigurieren. Neben der Installation wird aber auch das notwendige Wissen für die
Administration des Servers vermittelt.

Vor der endgültigen Installation empfiehlt es sich das Skriptum durchzuarbeiten und ein
Testsystem zu erstellen. Dafür reicht ein einfacher PC oder eine virtuelle Arbeitsumgebung
wie zum Beispiel „VMware“. Erst wenn alles getestet wurde, soll ein Echtsystem installiert
werden. Ist bereits ein Linux Webserver an der Schule vorhanden, kann und direkt mit
Kapitel 8 begonnen werden. Empfehlenswert ist auf jeden Fall sich mit den wichtigsten
Regeln der Sicherheit im Kaptitel 9 vertraut zu machen. Es besteht auch die Möglichkeit die
Installation des Content Management und des System Lern Management System auf einem
Windows Server durchzuführen. Notwendig dafür sind aber eine Erweiterung des Internet
Information Server mit PHP und die Installation von MySQL.

LINUX ist ein sich schnell weiter entwickelndes Betriebssystem. Auch dieses Buch ist einem
ständigen Veränderungsprozess unterworfen. Über Anregungen und
Verbesserungsvorschläge würde ich mich sehr freuen.

Heiko Vogl

heiko.vogl@phgraz.at

Graz, 2005
Der Linux – Schulwebserver                                                                     3


1 Linux Grundlagen

Kompliziert, schwierig zu installieren, reine Texteingabe, unverständlich, kein Support, die
Hardware wird nicht unterstützt, dies sind die Worte mit denen Linux oft beschrieben wird.
Die Realität sieht anders aus. Linux hat sich entwickelt. Aus dem komplizierten und
undurchsichtigen Betriebssystem wurde ein einfach zu installierendes und wartendes OS.
Die Installation läuft zum Großteil automatisch. Das Systemupdate erfolgt direkt über das
Internet. Der Desktop ähnelt dem der Windows Systeme. Es wurde alles getann um es dem
User so einfach wie möglich zu machen.

1.1   Was ist Linux?

Mit dem Begriff „Linux“ bezeichnet man den Betriebssystemkern, den Kernel. Zusätzliche
Betriebssystem Software wird hauptsächlich aus dem GNU-Software-Projekt übernommen.
Betriebssystem Software und Kernel sind heute so ineinander verzahnt, dass man korrekter
weise von GNU/Linux sprechen müsste.




                            Hard-
                            ware




Abbildung 1: Linux System


Kernel
Der eigentliche Betriebssystem-Kern.
Der Linux – Schulwebserver                                                                       4

Shell
Die Shell ist ein Programm. Es ermöglicht dem User die Kommunikation mit dem System.
Erst die Shell ermöglicht es Befehle und Programme auszuführen. Eine weit verbreitete Shell
unter Linux ist die Bash1 (Bourne Again Shell). Einfache Shell-Programme erleichtern die
Systemadministration.

X-Server
Der X-Server ist ein Programm, welches Anfragen des X11-Protokolls verarbeiten kann oder
einfach ausgedrückt:

           „Das X Windows System ist ein System für grafische Darstellungen und
           Benutzeroberflächen, das auch über das Netzwerk funktioniert. Die Ausgabe von
           Grafiken und die Eingabe von Tastendrücken und Mausbewegungen können also
           auf einem anderen Rechner sein als das Programm, das diese Ausgaben veranlasst
           und die Eingaben letztlich verarbeitet.“ (Markus Passerschröer, http://www.rz.ruhr-
           uni-bochum.de/dienste/software/dokumentation/xfree86-cygwin.html, 25.01.2005)

Desktop
Das „Look and Feel“ der X-Umgebung wird durch das Desktop oder X-Windows-Manager
erzeugt. KDE und GNOME sind die am meist verbreiteten Desktops unter Linux. Auch
kommerzielle Firmen, wie Sun, entwickeln Desktops.




1
    http://www.gnu.org/software/bash/bash.html
Der Linux – Schulwebserver   5




Abbildung 2: KDE 3.32




Abbildung 3: Gnome 2.83



2
    http://www.kde.org/
3
    http://www.gnome.org/
Der Linux – Schulwebserver                                                                    6




Abbildung 4: Sun Java Desktop4


Bibliothek
Bibliotheken sind Sammlungen von wiederkehrenden Programmteilen (libraries). Da viele
Programme gleiche oder ähnliche Teile haben, ist es ineffektiv, diesen Teil immer wieder zu
programmieren. Daher werden diese Teile in eine externe Datei ausgelagert. Da mehrere
Programme darauf zugreifen, kann die Größe des einzelnen Programms verkleinert werden.
Fehlt die Bibliothek, läuft aber das gesamte Programm nicht mehr. Dies sind dann die
berühmten fehlenden Abhängigkeiten.

Distribution
Distributionen sind Organisationen und Firmen die Software, Betriebssystem und
Installations-Routinen zusammenstellen, dokumentieren und veröffentlichen. Die wichtigsten
Distributionen sind Debian5, RedHat6, SuSE7und Gentoo8.




4
  http://www.sun.com/software/javadesktopsystem/
5
  http://www.debian.org/
6
  http://www.redhat.com/
7
  http://www.suse.de/
8
  http://www.gentoo.org/
Der Linux – Schulwebserver                                                                        7


1.2    Linux-Geschichte

1991
Der finnische Student Linus Benedict Torvalds übernimmt Teile des Betriebssystem Minix9
für ein unixähnliches Betriebssystem für die X86-Architektur. Er schreibt am 5. Oktober in der
Newsgroup comp.os.minix10:

           "...As I mentioned a month ago, I'm working on a free version of a Minix-look-alike
         for AT-386 computers. It has finally reached the stage where it's even usable
         (though may not be, depending on what you want), and I am willing to put out the
         sources for wider distribution. It is just version 0.02... but I've successfully run bash,
         gcc, gnu-make, gnu-sed, compress, etc. under it."

1992
Die Version 0.12 wird per anonymous FTP im Internet verteilt. Die Usernet News Gruppe
alt.os.linux11 wird ins Leben gerufen. Das Interesse ist enorm. Linus Torvald koordiniert die
Weiterentwicklung. Die aktuelle Entwicklung ist unter http://www.kernel.org/ zugänglich.

1993
Über 100 Entwickler sind beteiligt. Der Linux-Kern wird an die GNU12- Umgebung der Free
Software Foundation13 (FSF) angepasst.

1994
Die Kernel - Version 1.0 erscheint. Linux wird netzwerkfähig. Die Userzahl steigt auf
100.000. Das XFree8614- Projekt entwickelt eine GUI für Linux. Der Linux Quellcode wird
unter die GPL15 gestellt.

1995
Linux wird auf Sun Sparc portiert.

1996
Linux funktioniert auch auf Systemen mit mehreren Prozessoren.




9
  http://www.cs.vu.nl/~ast/minix.html
10
   http://groups.google.de/groups?hl=de&lr=&ie=UTF-8&oe=UTF-
8&q=comp.os.minix&btnG=Google+Suche&meta
11
   http://groups.google.de/groups?q=alt.os.linux&ie=UTF-8&oe=UTF-8&hl=de&btnG=Google+Suche
12
   http://www.gnu.org/
13
   http://www.fsf.org/
14
   http://www.xfree86.org/
15
   http://www.selflinux.org/selflinux-devel/html/gpl_de.html
Der Linux – Schulwebserver                                                                         8

1997
Wöchentlich erscheinen neue Kernel-Versionen. Kommerzielle Firmen entwickeln Software
für Linux (Netscape, Applixware, Software AG, …).

1998
Der Linux Desktop KDE16 wird von ca. 700 Programmierer entwickelt. KDE ist der meist
verwendete Desktop in Europa. Firmen wie IBM, Compaq, Informix und Oracle entwickeln
Software und Hardware für Linux.

1999
Der Kernel 2.2 erscheint. Der Netzwerkcode und die Multiprozessor-Unterstützung wurden
stark verbessert. Ein neues Desktop-Projekt mit dem Namen GNOME17 wird gestartet. Das
Open Sound System18 Projekt wird gestartet. Der Windows Fileserver Samba19 wird in einer
neuen Version 2.0 veröffentlicht. IBM propagiert seine Linux-Strategie.

2000
XFree86 Version 4.0 erscheint. KDE Version 2.0 erscheint. IBM investiert 1 Milliarde Dollar in
den Bereich Linux. Sun veröffentlicht den StarOffice Quellcode unter LGPL20. Es entsteht
daraus OpenOffice21. Der erste Vortrag über Knoppix22.

2001
Release der Kernelversion 2.4. USB und Journaling Filesysteme23 werden unterstützt. Linux
wird auf die IBM AS/400 portiert. Samba 2.2 erscheint.

2002
OpenOffice Version 1.0 erscheint für Linux und Windows. Der Webbrowser Mozilla24



16
   http://www.kde.org/
17
   http://www.gnome.org/
18
   http://www.opensound.com/
19
   http://www.samba.org/
20
   http://www.gnu.org/copyleft/lesser.html
21
   http://www.openoffice.org/
22
   „KNOPPIX ist eine komplett von CD lauffähige Zusammenstellung von GNU/Linux-Software mit
automatischer Hardwareerkennung und Unterstützung für viele Grafikkarten, Soundkarten, SCSI- und
USB-Geräte und sonstige Peripherie. KNOPPIX kann als Linux-Demo, Schulungs-CD, Rescue-
System oder als Plattform für kommerzielle Software-Produktdemos angepasst und eingesetzt
werden. Es ist keinerlei Installation auf Festplatte notwendig. Auf der CD können durch transparente
Dekompression bis zu 2 Gigabyte an lauffähiger Software installiert sein.“
(http://www.knopper.net/knoppix/, 25-01-2005)
23
   „In einem so genannten Journal oder Log wird jederzeit festgehalten, welche Dateien gerade
bearbeitet und dann auf die Platte geschrieben werden sollen. Im Falle eines Crash kann dann
anhand dieses Journals bestimmt werden, welche Dateien inkonsistent sein könnten.“ (http://www.fh-
wedel.de/~si/seminare/ws01/Ausarbeitung/3.journalfs/wasist.html, 25-01-2005)
24
   http://www.mozilla.org/
Der Linux – Schulwebserver                                                                         9

erscheint für Linux und Windows. KDE erscheint in der Version 3.0, Gnome in der Version
2.0.

2003
Der Münchner Stadtrat hat sich am 28. Mai auf Grund einer Studie für die Umstellung seiner
14.000 Computer von Windows auf Linux entschieden.

2004
Die Kernelversion 2.6 erscheint.

2005
Wien überlegt den Umstieg auf Linux.

           „Die Stadt Wien setzt im Serverbereich bereits seit vielen Jahren Open-Source-
           Software (OSS) Produkte ein. Auf Grund der dabei gewonnenen positiven
           Erfahrungen wird bereits seit längerem die Entwicklung der OSS
           Standardkomponenten für Arbeitsplätze beobachtet. Die letzten Entwicklungen
           sowohl bei der Bedieneroberfläche des Betriebssystems (Linux) als auch bei den
           Office-Programmen (OpenOffice.org)…“ (Ingrid Kammerer, 25.01.2005,
           http://www.wien.gv.at/ma14/oss.htm)

1.3      Open your mind / Open Source


           „Der Ausdruck Open Source [       p n s s] (engl.: open source) steht für quelloffen,
           einerseits in dem Sinne, dass der Quelltext eines Programms frei erhältlich ist,
           andererseits für 'offene Quelle', also dass ein Werk frei zur Verfügung steht.
           Software gilt als Open Source, wenn sie bestimmte Kriterien erfüllt, die in ihrer
           Open-Source-Lizenz geregelt sind.“ (http://de.wikipedia.org/wiki/Open_source, 25-
           01-2005)

Linux ist nach der GNU Public License25 Open Source. Das heißt, der Programmcode darf
beliebig kopiert, verbreitet und genutzt werden. Es gibt keine Benutzungsbeschränkung
bezüglich der Anzahl der Benutzer, weder der Anzahl der Installationen. Die Software darf
verändert werden und in der veränderten Form weitergegeben werden.

1.4      Unterschied Windows – Linux

Wo liegt der Unterschied? Es wird die gleiche Hardware verwendet und es gibt ähnliche oder
sogar gleiche Software.
25
     Deutsche Übersetzung der GNU Public License: http://www.gnu.de/gpl-ger.html
Der Linux – Schulwebserver                                                                      10

Linux ist ein Mehrbenutzersystem
Von Anfang an wurde Linux als Mehrbenutzer-Betriebssystem entwickelt. Jeder Benutzer
muss sich mit Benutzernamen und Passwort an das System anmelden. Jeder User hat seine
individuell gestaltbare Arbeitsumgebung. Er hat ein Heimatverzeichnis zum Ablegen seiner
Daten. Darüber gibt es nur „root“ den Superuser. Unter Linux können sich mehrere Benutzer
gleichzeitig an das System anmelden. Prozesse werden unabhängig von anderen
angemeldeten Usern ausgeführt. Windows hat diese Funktionen erst ab Win2000
implementiert.

Virtuelle Desktops, Terminals
Unter KDE stehen mehrere virtuelle Desktops zur Verfügung. Auf jedem Desktop können
unterschiedliche Fenster und Programme geöffnet werden. Über die Tasten        +   +      bis
   +   +   können die unterschiedlichen Terminals geöffnet werden.

Das Dateisystem
Unter Windows werden je nach Betriebssystem FAT16, FAT32 und NTFS verwendet. Linux
verwendet andere Dateisysteme. EXT2, EXT3, ReiserFS, XFS und JFS sind solche. Die
Windows Dateisysteme werden aber auch unter Linux verwendet. Es ist daher in Linux
möglich, die gespeicherten Windows Daten zu lesen und zu verändern.

Case Sensitive
Linux ist Case Sensitvie. Das System unterscheidet zwischen Großschreibung und
Kleinschreibung. Die Datei test.txt entspricht nicht der Datei Test.txt.

Konfiguration
Die Konfiguration des Systems erfolgt über Textdateien. Zusätzlich stehen auch grafische
Dialoge zur Verfügung.

Laufwerksbuchstaben
Unter Linux gibt es keine Laufwerksbuchstaben. Es gibt nur einen Verzeichnisbaum. Der
Verzeichnisbaum ist hierarchisch gegliedert. Die Wurzel wird als Rootverzeichnis oder /
bezeichnet. Unter diesem Verzeichnis können beliebige Datenträger eingehängt werden.
Das Einhängen in den Verzeichnisbaum bezeichnet man als mounten.
Der Linux – Schulwebserver                                                                   11


2 Planung

Wird ein Linux-Server geplant, sollte folgendes berücksichtigt werden. Ausgangspunkt der
Planung sollte eine Bestandsaufnahme (IST-Zustandands-Analyse) sein. Gefolgt von einer
Bedarfsanalyse und einer Prognose.

Zusätzlich sollten in die Überlegungen auf jeden Fall ein grobe Kostenabschätzung
einfließen. Einfließen sollten dabei die Material- und Anschaffungskosten, der Zeitaufwand
der Installation, die Einweisung und Schulung der User und der Aufwand für Wartung und
Pflege.

Neben den technischen Voraussetzungen sollte aber auf keinen Fall die Organisation des IT-
Bereiches ausgeklammert werden. Eine gute Übersicht bietet dazu die Homepage der
ETHZ26. Die Broschüre „Wartung von Informatikmitteln an allgemeinbildenden
Schulen27“ ist ein guter Ausgangspunkt diesbezüglich.

2.1      Hardwarevoraussetzung
Tabelle 1: Hardwarevoraussetzungen



                             CPU                         RAM           Festplattenplatz


Minimum                      133 MHZ für x86             64            2 GB und darunter
                                                                       ohne grafische
                                                                       Unterstützung


Empfohlen                    1 GHZ für x86               1 GB          Ab 20 GB je nach
                                                                       Auslastung der Lern
                                                                       Management
                                                                       Systems



2.2      Die Serverkonfiguration

In diesem Buch wird das klassische LAMP System beschrieben. Für das System wird der
Apache Webserver, die Skript-Sprache PHP und der Datenbankserver MySQL benötigt.
Zusätzlich wird das Fernwartungstool Webmin und die SuSEFirewall eingerichtet.

26
     http://www.educeth.ch/
27
     http://www.educeth.ch/informatik/berichte/wartung/index.html
Der Linux – Schulwebserver                                                       12


2.3   Netzwerkszenarien

Je nach Netzwerkstruktur kann der Linux-Server an unterschiedlichen Positionen
eingebunden werden.




Abbildung 5: Intranetserver




Abbildung 6: Schulserver-Server in der DMZ




Abbildung 7: Schul-Server als Router
Der Linux – Schulwebserver                                                                    13


3 TCP/IP

Der TCP/IP Stack ist eine Familie von Netzwerkprotokollen. Dieser Protokoll-Stack ist die
Basis des Internets. Jeder Host, der dieses Protokoll interpretieren kann, kann am Internet
teilnehmen. Finanziert wurde die Entwicklung vom DoD28 des US-Verteidigungsministeriums.
Die Agentur DARPA29 hat das Projekt geleitet.

TCP/IP Protokolle werden in den RFC30-Dokumenten diskutiert und standardisiert. Ebenso
werden alle weiteren, das Internet betreffende, Implementierungen in den RFCs erörtert,
diskutiert und ggf. standardisiert. RFCs haben dabei den Status erforderlich (required),
empfohlen (recommended) oder optional (elective). Andere RFCs können auch als
experimentell (experimental) oder historisch (historic) bezeichnet werden.

1983 wurde im Arpanet das Internet entwicklet. Das NCP (Network Core Protocol) wurde
überarbeitet und als TCP/IP standardisiert. Dieses Protokoll ist bis heute der Standard im
Internet. Das TCP/IP Modell ist eine Umsetzung des OSI-Referenzmodell31.

Eine erste Vergrößerung des Internets über die DARPA Grenzen hinaus erfolgte durch die
Einbindung von Universitäten. Ab nun wurde das Netz auch zum Informationsaustausch von
Lehrenden und Studierenden verwendet. Einer der ersten Dienste in diesem Feld war E-
Mail.

Der Boom des Internets in den neunziger Jahren ist auf die Entwicklung der
Seitenbeschreibungssprache HTML und der ersten Webbrowser zurück zu führen. Erst mit
den ersten Browsern erleichterte sich die Bedienung.

Zurzeit ist die IP Version 4 (IPv4) aktuell. Durch die steigende Teilnehmerzahl von Hosts im
Internet stößt diese Version aber an seine Grenzen. Die IP Version 6 (IPv6) steht bereit, um
dieses Problem zu lösen.

3.1     TCP/IP-Referenzmodell

Das TCP/IP-Referenzmodell wird in einzelne, unabhängige Schichten unterteilt. Jede Schicht
ist eine funktionale Ebene mit eigener Kommunikationsaufgabe. Der TCP/IP Protokoll Stack
besteht aus vier aufeinander aufbauenden Schichten. Die Internet-Protokolle bilden sich im
TCP/IP-Referenzmodell ab. Es wird der Datenaustausch über die Grenzen lokaler

28
   Department of Defense
29
   Die Defense Advanced Research Projects Agency (DARPA) ist die Agentur des Pentagons, die
Hightech-Projekte für das US-Militär durchführt.
30
   Requests for Comments sind technische und organisatorische Internet-Dokumente.
31
   Open System Interconnection Modell
Der Linux – Schulwebserver                                                                  14

Netzwerke hinaus ermöglicht. Es wird weder der Zugriff auf ein Übertragungsmedium noch
die Datenübertragungstechnik definiert. Die Protokolle sind dafür zuständig, dass die
Datenpakete über mehrere Punkte (Hops) weitergeleitet werden.

Tabelle 2: TCP/IP-Referenzmodell



TCP/IP-Schicht        OSI-Schicht Beispiel


Anwendungsschicht     5-7            HTTP, POP3, IMAP, FTP


Transportschicht      4              TCP


Netzwerkschicht       3              IPv4,IPv6


Netzzugangsschicht 1-2



Jede einzelne Schicht erfüllt folgende Funktionen:

Anwendungsschicht
Die Anwendungsschicht umfasst alle Protokolle, die mit Anwendungsprogrammen
zusammenarbeiten und die Netzwerkinfrastruktur für den Austausch
anwendungsspezifischer Daten nutzen.

Transportschicht
Die Transportschicht stellt eine Ende-zu-Ende Verbindung her. Das wichtigste Protokoll
dieser Schicht ist das Transmission Control Protocol (TCP), das Verbindungen zwischen
jeweils zwei Netzwerkteilnehmern zum gesicherten Versenden von Datenströmen herstellt.

Netzwerkschicht
Die Netzwerk- oder Internetschicht ist für die Weitervermittlung von Paketen und die
Wegewahl (Routing) zuständig. Auf dieser Schicht und den darunterliegenden Schichten
werden Punkt-zu-Punkt-Verbindungen betrachtet. Die Aufgabe dieser Schicht ist es, zu
einem empfangenen Paket das nächste Zwischenziel zu ermitteln und das Paket dorthin
weiterzuleiten. Kern dieser Schicht ist das Internet Protocol (IP), das einen unzuverlässigen,
verbindungslosen Paketauslieferungsdienst bereitstellt.
Der Linux – Schulwebserver                                                                   15

Netzzugangsschicht
Die Netzzugangsschicht ist im TCP/IP-Referenzmodell spezifiziert, enthält jedoch keine
Protokolle der TCP/IP-Familie. Sie ist vielmehr als Platzhalter für verschiedene Techniken
zur Datenübertragung von Punkt zu Punkt zu verstehen. Die Internet-Protokolle wurden mit
dem Ziel entwickelt, verschiedene Subnetze zusammenzuschließen. Daher kann die Host-
an-Netz-Schicht durch Protokolle wie Ethernet, Token Ring oder FDDI ausgefüllt werden.

Protokolle der Anwendungsschicht

   •   HTTP - Hypertext Transfer Protocol (Port 80)

   •   FTP - File Transfer Protocol (Port 21, 20, >1024)

   •   SSH - Secure Shell (Port 22)

   •   SMTP - Simple Mail Transfer Protocol (Port 25)

   •   POP3 - Post Office Protocol (Version 3) - E-Mail-Abruf (Port 110)

   •   IMAP - Internet Message Access Protocol (Port 143)

   •   Telnet - Login auf entfernten Rechnern (remote terminal) (Port 23)

   •   DNS (Domain Name System) - Umsetzung zwischen Domainnamen und IP-Adressen
       (Port 53)

   •   SNMP - Simple Network Management Protocol - Verwaltung von Geräten im
       Netzwerk (Port 161)

   •   RIP (Routing Information Protocol) - Informationsaustausch zwischen Routern!
       (Distanzvektor) (Port 520)

Protokolle der Transportschicht

   •   TCP (Transmission Control Protocol) - Datenstrom-Übertragung
       (verbindungsorientiert, zuverlässig)

   •   UDP (User Datagram Protocol) - Datenpaket-Übertragung (verbindungslos,
       unzuverlässig)

Protokolle der Netzwerkschicht
Der Linux – Schulwebserver                                                                    16


      •    IP (Internet Protocol) - Datenpaket-Übertragung (verbindungslos, unzuverlässig)

      •    ICMP (Internet Control Message Protocol) - Kontrollnachrichten (z.B.
           Fehlermeldungen), Teil jeder IP-Implementierung

      •    OSPF (Open Shortest Path First) - Informationsaustausch zwischen Routern
           (Linkzustand)

      •    BGP (Border Gateway Protocol) - Informationsaustausch zwischen autonomen
           Systemen im Internet (Pfadvektor)

      •    ARP (Address Resolution Protocol) - Adressumsetzung zwischen IP- und
           Geräteadressen

      •    RARP (Reverse Address Resolution Protocol) - Gegenstück zu ARP

Protokolle der Netzzugangsschicht (sind keinBestandteil von TCP/IP)

      •    Ethernet - Netzwerkstandard IEEE 802.3

      •    TokenBus - Netzwerkstandard IEEE 802.4

      •    Token Ring - Netzwerkstandard IEEE 802.5

      •    FDDI - Fiber Distributed Data Interface

      •    WLAN - Netzwerkstandard IEEE 802.11

      •    PPP - Point-to-Point Protokoll, IEEE 1394

3.2       IP Adressierung

Die IP-Adresse erlaubt die Adressierung im Internet. Jeder Host besitzt dabei mindestens
eine eindeutige IP-Adresse pro Netzwerkschnittstelle. IP-Adressen in IPv4 erscheinen als
Folgen von vier Zahlen, die durch Punkte getrennt sind. Die Adressen bestehen aus 32 Bits
(4 Bytes). Es sind daher maximal 232 Adressen möglich.

Jede IP-Adresse unterteilt sich in Netzteil und Hostteil. Die Aufteilung wird durch die
Netzmaske bestimmt. Die Netmaske ist eine 32 Bitmaske. Für den Netzteil der IP-Adresse
werden alle Bits der Netzmaske auf 1 gesetzt. Für alle Bits des Hostanteils wird 0 gesetzt.
Der Linux – Schulwebserver                                                                     17

Für alle Host in einem Netzwerk, müssen der Netzwerkteil und die Netzmaske gleich sein.
Jede Netzwerkschnittstelle muss einen unterschiedlichen Hostteil haben. Die erste Adresse
des Netzwerkes darf nicht vergeben werden. Diese Adresse bezeichnet das Netzwerk selbst.
Die höchste Geräteadresse wird für den Broadcast32 verwendet.

Tabelle 3: IP-Adresse



IP-Adresse    192          168         0            7
              11000000 10101000 00000000 00000111


              Netzwerkanteil                        Hostanteil


Netzmaske 255              255         255          0
              11111111 11111111 11111111 00000000


Netzwerk      192          168         0            0
              11000000 10101000 00000000 00000000


Broadcast     192          168         0            255
              11000000 10101000 00000000 11111111


Eine Netzmaske wird in entweder dezimal oder in CIDR-Schreibweise33 notiert. So lautet die
Netzmaske für einen 8 Bit Netzwerkteil 255.255.255.0 oder auch /8, ein 16 Bit Netzwerkteil
255.255.0.0 oder auch /16.

Das Auslesen der IP-Adresse erfolgt in Linux mit dem Befehl ifconfig.

       /# ifconfig




32
   Ein Broadcast in einem Computernetzwerk stellt einen Rundruf dar, wobei Datenpakete von einem
Punkt aus gleichzeitig an alle Teilnehmer eines Netzes übertragen werden.
33
   Classless Inter-Domain Routing
Der Linux – Schulwebserver                                                                   18




Abbildung 8: ifconfig


3.3      Routing

Wird ein IP-Paket versendet, werden die Netzteile der Quelladresse und der Zieladresse
verglichen. Stimmen sie überein, wird das Paket direkt an den Zielhost geliefert. Stimmt der
Netzteil nicht überein, wird in der Routingtabelle eine IP-Adresse für den weiterleitenden
Host gesucht. Ein solcher Host (Router) hat mehrere Netzwerkschnittstellen und verbindet
unterschiedliche Netzwerksegmente miteinander. Der Router sendet das Paket an einen
weiteren Router oder an das Ziel. Bis zum Ziel kann das IP-Paket viele Netzwerke und
Router durchlaufen. Dieser Vorgang wird als Hop bezeichnet. Die Route kann mit dem
Befehl traceroute34 ausgelesen werden.

          /# traceroute ZIEL




34
     Windows: tracert ZIEL
Der Linux – Schulwebserver                                                                   19




Abbildung 9: traceroute


Das Netzwerk 127.0.0.0/8 bezeichnet man als loopback. Es bezieht sich auf den lokalen
Computer. Mit der IP-Adresse 127.0.0.1 wird der lokale Rechner adressiert. Diese Adresse
dient der Kommunikation lokaler Clients mit dem lokalen Server. So wird am Rechner mit
dem URL http://127.0.0.1/ immer der lokale Webserver erreicht.

Die Adresse 255.255.255.255 kann als Broadcast in allen Netzen verwendet werden. Diese
Adresse wird für BOOTP35 und DHCP36 verwendet.

3.4   Netzklassen

In IPv4 werden drei Netzklassen unterschieden.




35
   Das Bootstrap Protocol (BOOTP) dient dazu, einem Computer in einem TCP/IP-Netzwerk eine IP-
Adresse und eine Reihe weiterer Parameter zuzuweisen.
36
   Das DHCP (Dynamic Host Configuration Protocol) ermöglicht mit Hilfe eines entsprechenden
Servers die dynamische Zuweisung einer IP-Adresse
Der Linux – Schulwebserver                                                                          20

Tabelle 4: Netzklassen



Netzklasse Adressbereich           Netzmaske         CIDR-Schreibweise


Klasse A      0.0.0.0 bis          255.0.0.0         0.0.0.0/8
              127.255.255.255


Klasse B      128.0.0.0 bis        255.255.0.0       128.0.0.0/16
              191.255.255.255


Klasse C      192.0.0.0 bis        255.255.255.0 192.0.0.0/24
              223.255.255.255


Zusätzlich wird zwischen öffentlichen und privaten IP-Adressen unterschieden. Private IP-
Adressen können von jedem verwendet werden. Diese Adressen werden im Internet nicht
geroutet. Private IP-Adressen werden verwendet, weil es zu wenig öffentliche IP-Adressen
gibt, oder man Netzwerk-Strukturen verstecken möchte.

Tabelle 5: Private IP-Adressen



Netzklasse Adressbereich                         CIDR-                 Anzahl der möglichen
                                                 Schreibweise          Hosts


Klasse A      10.0.0.0 - 10.255.255.255          10.0.0.0/8            16777216


Klasse B      172.16.0.0 - 172.31.255.255        172.16.0.0/12         1048576


Klasse C      192.168.0.0 -                      192.168.0.0/16        65536
              192.168.255.255


Der Zugriff auf das Internet, muss für diese IP-Adressen über NAT37 oder PAT38 erfolgen.


37
   NAT (Network Address Translation) ist in Computernetzwerken ein Verfahren, bei dem private IP-
Adressen auf öffentliche IP-Adressen abgebildet werden.
38
   Masquerading oder PAT ist eine spezielle Form von NAT, bei der nicht nur IP-Adressen, sondern
auch Port-Nummern umgeschrieben werden
Der Linux – Schulwebserver                                                             21


3.5   DNS

Mit den Domain Name System können Namen in IP-Adressen umgesetzt werden. Ein weit
verbreiteter Server unter Linux ist bind.

Zum Testen der DNS Einstellungen wird der Befehl nslookup verwendet.

       /# nslookup HOST




Abbildung 10: nslookup


Wer für welchen Domain zuständig ist kann über http://www.nic.com ausgelesen werden.
Der Linux – Schulwebserver                                                                       22


4 Grundinstallation

SuSE Linux 9.2 kann unterschiedlich installiert werden. Je nach Installationsmedium variiert
der Installationsvorgang ein wenig. Installationsmedien sind CD, DVD, Floppy-Disk oder
direkt über das Internet per FTP39, HTTP40, NFS41 oder SMB42. In diesem Beispiel wird nur
die Installation per CD bzw. DVD beschrieben.

4.1   Grundeinstellungen

Die Distribution SuSE Linux 9.2 wird als Boot-DVD und Boot-CD ausgeliefert. Für die
Installation wird ein BIOS mit CD-Boot Funktion benötigt. In der Bootreihenfolge muss das
DVD- oder CD-Laufwerk vor die Harddisk gereiht werden. Nach dem Einschalten des
Computers wird vom Quellmedium gebootet. Der Begrüßungsbildschirm erscheint. Nach
einigen Sekunden erscheint ein Auswahlmenü für die Installation. Achtung, es stehen nur die
Cursor-Tasten zur Verfügung. Für die Installation stehen vier vorkonfigurierte Möglichkeiten
zur Auswahl. Für aktuelle Hardware reicht die Variante Installation. Die Option Installation -
ACPI Disabled wählen Sie dann an, wenn der verwendete Rechner kein ACPI43 unterstützt.
Die Installation - Safe Settings deaktiviert sowohl DMA als auch alle eventuell
problematischen Power-Management-Funktionen. Bei problematischer Hardware kann auch
die „manuelle Installation“ verwendet werden. Achtung in diesem Modus funktioniert keine
USB44 Unterstützung. Bei dieser Installation wird zusätzlich der Text-Modus über die Taste
gewählt, die Unterstützung der Maus ist deaktiviert. Mit       wird die Sprache Deutsch
ausgewählt. Durch Bestätigen mit        wird die Installation gestartet.




39
   File Transfer Protocol
40
   Hypertext Transfer Protocol
41
   Network File System
42
   Server Message Block
43
   Das Advanced Configuration and Power Interface (ACPI) ist ein offener Industriestandard für
Energieverwaltung in Desktop-Computern, Notebooks und Servern.
44
   Universal Serial Bus
Der Linux – Schulwebserver                                                               23




Abbildung 11: Installations-Modi


Die Option Rescue System wird zum Reparieren von beschädigten Systemen benötigt. Der
Memory Test erkennt fehlerhafte RAM-Module. Ein minimales Linux-System wird in den
Hauptspeicher geladen. Ab nun erfolgt die Installation mit der Textvariante von YaST2. Die
Sprache der Installation wird mit   +   bestätigt.




Abbildung 12: Sprachauswahl
Der Linux – Schulwebserver                                                                24




Abbildung 13: Installationseinstellungen


In den Installationseinstellungen werden Modus, die Tastaturbelegung und die Maus
konfiguriert. Es können meist die Vorschläge übernommen werden.

Linux benötigt mindestens zwei Partitionen, die Root-Partition für Daten und Programme und
die zweite Partition Swap für die Auslagerungsdatei. Für eine Testinstallation kann die
Vorgabe übernommen werden. Ist auch eine Windows-Installation auf der Festplatte, wird
von YaST automatisch diese Partition verkleinert um für Linux Platz zu schaffen.

4.2   Softwareauswahl

Über die Tastenkombination      +   werden zusätzliche Installationseinstellungen aufgerufen.




Abbildung 14: Menü Installationseinstellungen
Der Linux – Schulwebserver                                                                      25

Nach Software können in der Erweiterten Softwareauswahl                +   zusätzliche Pakete
gewählt werden.          +   öffnet den Filter. Hier kann gesucht werden. Nützlich ist ein
zusätzlicher Browser wie zum Beispiel Firefox45.




Abbildung 15: Software-Filter




Abbildung 16: Software-Suche


Die Auswahl wird mit          +    bestätigt und mit   +   übernommen. Zusätzlich benötigte
Pakete werden automatisch vorgeschlagen.




45
     http://www.mozilla.org/products/firefox/
Der Linux – Schulwebserver                                                                26




Abbildung 17: Automatisches Auflösen der Abhängigkeiten


Es sollte zusätzlich die Zeitzone, Europa-Österreich und die Sprache Deutsch kontrolliert
werden.




Abbildung 18: Zeitzone Europa Österreich


  +   bestätigt die Einstellungen. Wird Software mit zusätzlichen Lizenzen installiert,
müssen diese bestätigt werden     + .
Der Linux – Schulwebserver                                                           27




Abbildung 19: Beginn der Installation


Nach der Formatierung und Partitionierung werden die einzelnen Pakete eingespielt.




Abbildung 20: Paketinstallation
Der Linux – Schulwebserver                                                                28




Abbildung 21: Abschluss der Installation


Nach dem Abschluss der Installation erfolgt ein Reboot. Anschließend muss das root46
Passwort gesetzt werden.




Abbildung 22: Root-Passwort


Nur der Superuser kann Programme einspielen, Hardware konfigurieren und User anlegen.
Wird das root-Passwort vergessen, kann das System nur mit großem Aufwand
wiederhergestellt werden.

Erlangt ein Angreifer des Systems root-Rechte, erlangt dieser uneingeschränkte Rechte. Aus
Gründen der Sicherheit sollte für die tägliche Arbeit nur mit einem Benutzer-Konto eingeloggt


46
     Linux Superuser
Der Linux – Schulwebserver                                                                    29

werden. Werden trotzdem Superuser-Rechte benötigt, können diese Arbeiten mit su47
durchgeführt werden.

          /# su

Nach der Bestätigung des Passwortes        +    erfolgt die Netzwerkkonfiguration.

4.3      Netzwerkkonfiguration

Ist im Netzwerk ein DHCP48- Server im Netzwerk vorhanden, erfolgt die Konfiguration der
Netzwerkkarte automatisch. Die händische Konfiguration der Netzwerkkarte erfolgt im
Kaptitel 5.2 Konfiguration der Netzwerkkarte.




Abbildung 23: Netzwerkkonfiguration


Zusätzlich wird hier die SuSE-Firewall aktiviert. Über die Tastenkombination         +   werden
die Einstellungen übernommen.




47
     switch user
48
     Dynamic Host Configuration Protocol
Der Linux – Schulwebserver                                                           30




Abbildung 24: YOU – YaST Online Update


Anschließend bietet YaST den Test der Internetverbindung an. Bei diesem Test wird
zusätzlich nach aktuellen Updates gesucht. Diese können direkt eingespielt werden.




Abbildung 25: Verfügbare Updates


Zum Abschluss der Netzwerkkonfiguration muss die Authentifizierungsmethode gewählt
werden. In der Regel wird die Variante Einzelplatzrechner gewählt.
Der Linux – Schulwebserver                                                                         31




Abbildung 26: Authentifikationsmethode


Als Client kann das Linux-System auch an LDAP49, NIS50 oder SAMBA51 Server
authentifiziert werden.




Abbildung 27: Lokale User hinzufügen


Nach der Bestätigung mit       +    muss ein lokales Benutzerkonto angelegt werden. Dieses
wird wie immer bestätigt.

Die Release Notes sollten gelesen und anschließend bestätigt werden.


49
   Lightweight Directory Access Protocol
50
   Network Information Service
51
   Samba ist eine freie Software-Suite, die das Server Message Block - Protokoll (SMB) für Unix-
Systeme verfügbar macht. (http://de.wikipedia.org/wiki/Samba_(Software), 01.02.2005)
Der Linux – Schulwebserver                                                                    32


4.4     Grafikkonfiguration

Über       +   können Grafikkarte, Drucker, Soundkarte, TV-Karte und Bluetooth konfiguriert
werden. Wird die Grafikkarte gewählt, startet SaX252.




Abbildung 28: Grafikkarte


In SaX2 wird der Monitor, die Grafikkarte und die Auflösung eingestellt.




52
     Simple API for XML
Der Linux – Schulwebserver                                                          33




Abbildung 29: Sax2


Der größte Teil der Konfiguration erfolgt automatisch, es kann aber auch händisch
nachgebessert werden.
Der Linux – Schulwebserver                                                               34




Abbildung 30: Bildschirmauflösung


Nach dem Abschluss der Konfiguration erfolgt der Test der aktuellen Einstellungen. Die
Einstellungen müssen gespeichert werden.




Abbildung 31: Test des grafischen Systems
Der Linux – Schulwebserver                                                              35

Die Konfiguration wird von YaST2 geschrieben. Soundkarte und TV-Karten erkennt YaST2
automatisch.

Damit ist die Installation und Konfiguration von SuSE 9.2 abgeschlossen.




Abbildung 32: Abschluss der Installation


Das System wechselt nun in den Runlevel53 5 und loggt sich automatisch in KDE54 ein.

4.5   FTP – Installation

Auch die FTP – Installation erfolgt von einer Boot-CD55. Nach dem Start erscheint der
gewohnte Bildschirm.




53
   Betriebssysteme werden als Runlevels bezeichnet.
54
   K Desktop Environment, ursprünglich Kool Desktop Environment
55
   ftp://ftp.suse.com/pub/suse/i386/9.3/iso/SUSE-Linux-9.3-mini-installation.iso
Der Linux – Schulwebserver                                                36




Abbildung 33: FTP – Installation


Die Sprache wird mit    gewählt. Der Modus Installation wird bestätigt.




Abbildung 34: Keine Installationsquelle


Die Fehlermeldung, keine Installations-Quelle wird übernommen.
Der Linux – Schulwebserver                                                                  37




Abbildung 35: Linuxrc


Der Installationsmanager Linuxrc startet. Die Tastaturbelegung Deutsch wird aktualisiert.




Abbildung 36: Linuxrc Hauptmenü


Im Hauptmenü von Linuxrc wird Installation / System starten gewählt.
Der Linux – Schulwebserver                  38




Abbildung 37: Linuxrc - Installation




Abbildung 38: Linuxrc Quellmedium


Als Quellmedium wird Netzwerk ausgewählt.
Der Linux – Schulwebserver                                                           39




Abbildung 39: Linuxrc – Netzwerkprotokoll


Es empfiehlt sich das FTP – Protokoll zu verwenden.




Abbildung 40: Linuxrc - DHCP aktivieren


Ist im Netzwerk ein DHCP – Server aktiv, kann dieser verwendet werden. Ohne DHCP –
Server, müssen IP-Adresse, Netzmaske und Gateway händisch vergeben werden,
Der Linux – Schulwebserver                                                             40




Abbildung 41: Linuxrc - FTP Server


Die möglichen FTP – Server56 sind auf der SuSE Homepage eingetragen. Für die Installation
wird die IP-Adresse des Servers benötigt. Durch Ping auf den Hostnamen kann die Adresse
ausgelesen werden. Zum Beispiel:

          / # ping ftp.uni-kl.de
          PING ftp.uni-kl.de (131.246.120.27) 56(84) bytes of data.
          64 bytes from 131.246.120.27: icmp_seq=1 ttl=64 time=…




56
     http://www.novell.com/products/linuxprofessional/downloads/ftp/int_mirrors.html
Der Linux – Schulwebserver                                                        41




Abbildung 42: Linuxrc - Anonymous FTP


Meist wird Anonymous FTP akzeptiert.




Abbildung 43: Linuxrc - HTTP Proxy


Wird im Netzwerk ein Proxy-Server verwendet muss dieser bekannt gegeben werden.
Der Linux – Schulwebserver                                                                42




Abbildung 44: Linuxrc – Verzeichnis


Das Installationsverzeichnis wird angegeben. Dieses kann je nach Server variieren Das
Bereitstellen der FTP- Installation einer neuen SuSE – Linux Version erfolgt erst einen
gewissen Zeitraum nach dem Verkaufsstart. Die weitere Installation entspricht der
Grundinstallation (vgl. 4.1 Grundeinstellungen)
Der Linux – Schulwebserver                                                          43


5 Basiskonfiguration

5.1   Usermanagement

In YaST können User angelegt, verändert oder gelöscht werden. Nach dem Start von YaST
kann über Sicherheit und Benutzer und Benutzer bearbeiten und anlegen der
Usermanager gestartet werden.




Abbildung 45: User anlegen
Der Linux – Schulwebserver                                                                 44




Abbildung 46: Usermanager


Mit Bearbeiten und Löschen können angelegte User verändert oder gelöscht werden. Erst
mit Beenden werden die Einstellungen geschrieben.

5.2   Konfiguration der Netzwerkkarte

Es empfiehlt sich für einen Server die IP-Adresse fix einzutragen. Wie gewohnt wird YaST
gestartet. In Netzwerkgeräten kann die Netzwerkeinstellung über Netzwerkkarte
abgeändert werden. Das bereits konfigurierte Gerät muss mit Ändern konfiguriert werden.

Im Überblick der Geräte muss das entsprechende Gerät markiert werden. Über Bearbeiten
können die Einstellungen eingetragen werden.
Der Linux – Schulwebserver                                                    45




Abbildung 47: IP-Adresse vergeben


Auch der Rechnername und der Nameserver sollten manuell eingetragen werden.
Der Linux – Schulwebserver                                                       46




Abbildung 48: Rechnername und Nameserver


Abschließend muss im Routing der Gateway eingestellt werden. Das Schreiben der
Konfiguration erfolgt mit Weiter und Beenden.

Nach der Konfiguration müssen die Einstellungen mit ping getestet werden.
Der Linux – Schulwebserver                                                             47




       / # ping 192.168.100.254
       PING 192.168.100.254 (192.168.100.254) 56(84) bytes of data.
       64 bytes from 192.168.100.254: icmp_seq=1 ttl=64 time=…

Der Befehl ping wird mit   +   unterbrochen.

5.3   Update

Wie jedes moderne Betriebssystem verfügt auch SuSE Linux über eine automatische
Updatefunktion. Die Konfiguration erfolgt wie gewohnt über YaST. Im Bereich Software wird
der Online Update gestartet.




Abbildung 49: Online Update


Über Vollautomatisches Update konfigurieren… kann die Update-Zeit eingestellt werden.
Im Drop-Down-Menü Installationsquelle wird ein nahe liegender Update-Server gewählt.
Der Linux – Schulwebserver                                                                48




Abbildung 50: Online-Update konfigurieren


Nach dem Bestätigen mit OK und Weiter werden die Update-Informationen gelesen und
vorgeschlagen. Um ein aktuelles System zu betreiben, sollten alle Patches57 eingespielt
werden.




57
     Ein Patch (von englisch Flicken) ist eine Korrektur für Software oder Daten.
Der Linux – Schulwebserver                                                               49




Abbildung 51: Patchauswahl




5.4   Softwareinstallation

Die Installation der Software erfolgt mit YaST. Mit Software und Software installieren und
löschen können weitere Pakte eingespielt werden. Über Suchen können einzelne Pakte
ausgewählt werden.
Der Linux – Schulwebserver                                                                50




Abbildung 52: Softwareinstallation


Nach dem Aktiveren des Paketes wird mit Übernehmen der Vorgang bestätigt. Die
automatische Auflösung sucht sich notwendige Zusatzpakete und spielt diese ein.

5.5   Zeitsynchronisation

Das XNTP Protokoll bietet eine automatische Zeitsynchronisation mit Timeservern an. Die
Konfiguration erfolgt über YaST. Über Netzwerkdienste und NTP-Client wird die
Konfiguration gestartet.
Der Linux – Schulwebserver                                                            51




Abbildung 53: NTP-Server


Nach der Auswahl eines Öffentlichen NTP-Server müssen die Startoptionen eingestellt
werden.
Der Linux – Schulwebserver                   52




Abbildung 54: Konfiguration des NTP-Server
Der Linux – Schulwebserver                                                                 53


6 Die Shell

Neben der grafischen Oberfläche ist ein wichtiges Element die Shell. Dies kann in der
grafischen Oberfläche über ein Terminal geöffnet werden. Über die Tastenkombination
χ+α+φ kann auf den Terminal tty1 gewechselt werden. Mit α+γ bis α+κ können weiter
Terminal (tty2 bis tty6) aufgerufen werden. Die grafische Oberfläche wird mit α+µ wieder
erreicht.

Auf jeder Konsole muss wieder angemeldet werden. Achtung: Bei der Eingabe des
Passworts werden keine Zeichen angezeigt.




Abbildung 55: Konsole
Der Linux – Schulwebserver                                                                 54




Abbildung 56: Terminal


Nach der Anmeldung erscheint ein Prompt für die Befehlseingabe.

       user@host:ordner

Der Prompt zeigt den aktuellen Benutzer, den Rechnername und den aktuellen Ordner. Die
Linux Befehle sind komplex aber leistungsfähig. Die Wartung des Betriebssystems ist über
den Terminal einfacher und schneller als über die grafische Oberfläche. Ein weiterer Vorteil
ist die einfache Fernwartung über die Shell.

Im Folgenden werden die wichtigsten Linux-Shell-Befehle gezeugt.

       /# date ρ

Mit date wird die aktuelle Systemzeit ausgegeben. Jede Eingabe muss auf der Shell mit
Enter (Return) bestätigt werden.

       /# dmesg

Dieser Befehl gibt die Kernelmeldung aus. Ist die Ausgabe zu lange, kann mit σ+[Bild rauf]
oder σ+[Bild runter] gescrollt werden. Die meisten Programme werden mit χ+Χ abgebrochen.
Der Linux – Schulwebserver                                                                    55


Mit χ+Λ wird der Bildschirm neu aufgebaut. Die Tasten      beziehungsweise       scrollen in der
Befehls-History.

Das Abmelden von der Konsole erfolgt mit exit. Alternativ kann     +      verwendet werden.
Nach dem Abmelden wird wieder der Begrüßungs-Bildschirm gezeigt.

       /# exit

Ist man als User im System angemeldet, kann man mit su Administratorrechte erhalten. Der
Befehl verlangt das Passwort des Administrators. Viele Linux-Befehle kann nur der
Administrator auszuführen.

       /# su

Der Neustart wird mit reboot oder     +   +   durchgeführt.

       /# reboot

Beendet wird das System mit halt oder shutdown now.

       /# halt

Die große Menge an Dateien wird in Linux durch ein Ordnersystem geregelt. Die Ordner sind
streng hierarchisch. Das Hauptverzeichnis wird mit einem Slash / gekennzeichnet. Die
Bezeichnungen der Unterordner werden mit Slash getrennt. Zum Beispiel:

       /srv/www/#

Das aktuelle Verzeichnis wird mit pwd (print working directory) angezeigt.

       /srv/www/# pwd

Der Inhalt eines Ordners mit ls (list directory content) wiedergegeben.

       /srv/www/# ls

Mit dem Befehl cd (change direcotry) kann das Verzeichnis gewechselt werden.

       /# cd /etc
       /etc#
Der Linux – Schulwebserver                                                                 56

Mit cd und dem Verzeichnisnamen wird in das entsprechende Verzeichnis gewechselt. Mit
cd .. wird in ein höheres Verzeichnis gewechselt, cd / wechselt in das Wurzelverzeichnis und
cd ~ in das Heimat-Verzeichnis des Users.

         /etc# cd ..
         /# cd /etc
         /etc# cd /
         /# cd ~
         /~#

Die Tabulatortaste aktiviert die automatische Vervollständigung von Befehlen.

         /# cd /e
         /# cd /etc

Gibt es mehrer Möglichkeiten ertönt ein Piepton. Durch wiederholtes Drücken der       - Taste
werden alle Möglichkeiten angezeigt.

6.1     Verzeichnisse

Die Verzeichnisstruktur in Linux ist vorgegeben. Es kann aber Abweichungen je nach
Distribution geben.

/
Das Wurzelverzeichnis oder auch Rootverzeichnis genannt. In diesem Verzeichnis sollten
nur Ordner vorhanden sein.

/bin
Im Ordner sind Binaries gespeichert. Binaries sind ausführbare Programme. Die oben
genannten Befehle date, reboot sind zum Beispiel hier abgelegt.

/boot
Dieses Verzeichnis beinhaltet den Linux Bootmanager und den Linuxkern.

/dev
Die Abkürzung dev steht für Devices. Hier werden alle Schnittstellen der Peripherie
gespeichert.
Der Linux – Schulwebserver                                                                57

/etc
Dieser Ordner ist der Konfigurationsordner. Die Konfigurationsdateien sind unter Linux reine
ASCII-Dateien58. Sie können mit jedem beliebigen Editor verändert werden.

/home
Jeder User erhält sein Homeverzeichnis. Dieses Verzeichnis wird mit dem Username im
Ordner /home angelegt. Das Homeverzeichnis des Users tester heißt /home/tester.

/lib
Der Libraries-Ordner enthält alle Bibliotheken des Systems.

/media
In Linux gibt es keine Laufwerksbezeichnungen. Möchte man auf CD-Roms oder Disketten
zugreifen, müssen diese zuerst in den Verzeichnisbaum eingebunden werden. Diesen
Vorgang nennt man mounten. Nach dem Einhängen stehen diese Laufwerke im Ordner
/media zur Verfügung.

/mnt
In diesem Laufwerk werden USB-Sticks eingebunden.

/opt
Der Ordner /opt enthält optionale Zusatzprogramme wie Mozilla, Gnome und KDE.

/proc
Hier werden vom Betriebssystem Informationen über Hardware und Prozesse abgelegt.

/root
Das ist das Homeverzeichnis des Administrators.

/sbin
Im Ordner /sbin befinden sich ausführbare Programme. Sie dienen zur Systempflege und
sind nur für den Administrator verfügbar.

/srv
Dieser Ordner ist für Serveranwendungen reserviert. Ist auf den Linux-System ein
Webserver installiert, so ist die Homepage in diesem Verzeichnis zu finden.

/tmp
Dieser Ordner entspricht dem temporären Ordner unter Windows.


58
     American Standard Code for Information Interchange
Der Linux – Schulwebserver                                                               58

/usr
Alle für den User wichtigen Programme liegen in diesem Ordner.

/var
Linux User haben im Ordner /var Schreibrechte. Wichtige Informationen wie zum Beispiel die
Druckerwarteschlange oder die Usermails werden hier gespeichert.

6.2    Dateien

In Linux wird alles in Verzeichnissen und Dateien abgebildet. Da das System ein
Mehrbenutzer-System ist, gibt es ein einfaches, aber effektives Dateisystem. Alle User des
Systems sind in der Datei passwd eingetragen. Die Passwörter stehen verschlüsselt in der
Datei shadow. Beide Dateien finden sich im Verzeichnis /etc. Um den Inhalt einerDatei
anzuzeigen, wird der Befehl cat Filename verwendet.

        /# cat /etc/passwd
        /# cat /etc/shadow




Abbildung 57: passwd


Die Datei ist zeilenweise aufgebaut. Die Einträge sind durch Doppelpunkt getrennt. Der erste
Eintrag zeigt den Usernamen. Der zweite Eintrag bezieht sich auf das Passwort. Ein x
Der Linux – Schulwebserver                                                                  59

kennzeichnet, dass das Passwort im File shadow liegt. Der dritte Wert ist ein numerischer.
Dieser ist die UID59. Der nächste Wert ist der GID60. Im Kommentarfeld können zusätzliche
Informationen wie Namen und Adresse eingetragen werden. Die letzten zwei Werte zeigen
auf das Homeverzeichnis und auf das Startprogramm.

Der Inhalt eines Verzeichnisses wird mit ls angezeigt.

          /# ls

Mit dem Parameter -l wird das lange Format ausgegeben.

          /# ls –l




Abbildung 58: Verzeichnis ausgeben


In der ersten Spalte der Ausgabe werden die Dateirechte gesetzt. Der erste Buchstabe zeigt,
ob es sich um einen Ordner oder um ein File handelt. d steht hier für Verzeichnis. Die
nächsten neun Zeichen stehen für die Zugriffsrechte. Die erste Dreier Kombination
beschreibt die Rechte des Besitzers. Die zweite Dreier Kombination beschreibt die Rechte



59
     User Identifikation Deskriptor
60
     Group Identifikation Deskriptor
Der Linux – Schulwebserver                                                                      60

der Gruppe, die letzte, die der anderen Benutzer. Leserechte werden mit r, Schreibrechte mit
w gekennzeichnet. Ob eine Datei ausführbar ist, zeigt ein gesetztes x.

       -rwxr-xr-x 1           root root 6825 Oct 2 03:05 zshrc

Dieses Beispiel zeigt, dass es sich um ein File handelt (d steht für Verzeichnis, - steht für
normale Datei, b oder c für Gerätedateien und l für Link (Verweis) auf eine andere Datei).
Der Eigentümer root hat Leserechte, Schreibrechte. Zusätzlich ist die Datei für den
Eigentümer ausführbar. Die Gruppe root und alle anderen haben Leserechte und
Ausführungsrechte. Die 1 steht für die Anzahl der Links. Der nächste Eintrag zeigt den
Eigentümer des Files, gefolgt von der Eigentümergruppe. Die nachfolgende Dateigröße wird
in Bit angegeben. Das angegebene Datum zeigt die letzte Modifikation an. Abgeschlossen
wird die Zeile mit dem Dateinamen.

Mit dem Befehl touch Dateiname kann eine leere Datei angelegt werden.

       /home/tester # touch test
       /home/tester # ls –l

Um die Filerechte zu ändern, wird chmod Attribut Filename verwendet. Als Attribute
können u, g oder o (user, group, other) verwendet werden. Die Rechte werden mit r, w oder
x gesetzt.

       /home/tester # chmod g+w test

Diese Zeile setzt Schreibrechte für die Gruppe auf das File test. In Windows werden
ausführbare Dateien mit der Dateinamenerweiterung gekennzeichnet. In Linux wird dies mit
dem Attribut x gekennzeichnet.

       /home/tester # chmod u+g test

Gelöscht werden Rechte mit einem Minus.

       /home/tester # chmod o-r test

Sollen die Besitzrechte geändert werden, geschieht dies mit chown user:gruppe Filename.

       /home/tester # chown tester:users test

Der Parameter -R bedeutet rekursiv. Verwendet wird diese Option, wenn ein Ordner mit allen
Unterordner geändert werden soll. Dieses Attribut steht für chmod und chown zur
Verfügung.
Der Linux – Schulwebserver                                                                   61

Verzeichnisse werden mit mkdir (make directory) angelegt. Mit rmdir (remake directory)
werden Ordner wieder gelöscht. Files werden mit dem Befehl rm Filename gelöscht. Im
folgenden Beispiel werden die Befehle zusammengefasst.

       /home/tester # mkdir klassen
       /home/tester # cd klassen
       /home/tester/klassen # mkdir 1a
       /home/tester/klassen # mkdir 1b
       /home/tester/klassen # mkdir 2a
       /home/tester/klassen # mkdir 2b
       /home/tester/klassen # cd 2a
       /home/tester/klassen/2a # touch beispiele
       /home/tester/klassen/2a # cd ../..
       /home/tester/ # rmdir klassen/1a
       /home/tester/ # rmdir klassen/1b klassen/2b
       /home/tester/ # rm –R klassen

Hilfe zu jedem Befehl wird mit dem Parameter --help angezeigt. Für jeden Befehl gibt es
auch ein Manual. Mit man Befehl wird es angezeigt.

       /home/tester/ # rmdir --help
       /home/tester/ # man rmdir

Unter Unix gibt es keine Laufwerksbuchstaben wie bei DOS oder Windows. Unter Linux
werden Laufwerke in die Verzeichnisstruktur eingebunden. Das Einbinden nennt man
mounten. Der Befehl für das Einbinden nennt sich mount.

       /home/tester/ # mount /dev/cdrom /media/cdrom

Die CD wird in den Ordner /media/cdrom eingehängt. Zum Lösen der Einbindung wird
umount verwendet.

       /home/tester/ # umount /media/cdrom

Der Befehl df (disk free) zeigt an, wie viel Platz auf einem Laufwerk zur Verfügung steht.

       /home/tester/ # df

Das Kopieren von Dateien erfolgt mit dem Befehl cp (copy).

       /home/tester/ # cp /etc/passwd ./
Der Linux – Schulwebserver                                                               62

Die Datei passwd aus dem Ordner /etc wird in den aktuellen Ordner kopiert. Sollen
zusätzlich Verzeichnise kopiert werden, muss der Parameter -r verwendet werden.

       /home/tester/ # cp –r /etc/apache2 ./apache_sicherung

Zusätzlich zum Kopieren wird der Ornder apache2 in apache_sicherung umbenannt.
Neben dem Kopieren können Dateien auch verschoben werden.

       /home/tester/ # mv apache_sicherung /root

Der Ordner apache_sicherung wird mit dem Befehl mv (move) in den Ordner /root
verschoben. Move kann auch zum Umbenennen von Dateinamen benützt werden.

       /home/tester/ # mv /root/apache_sicherung
       /root/apache2_sicherung

Mit dem Befehl find und dem Parameter -name lassen sich im System Dateien finden.

       /home/tester/ # find / –name passwd

Das Zeichen / steht für das Startverzeichnis der Suche.

Zum Archivieren von Dateien wird der Befehl tar (tape archive) verwendet. Für das Erstellen
eines Archivs wird der Parameter c (create) verwendet.

       /home/tester/ # tar –cf etc.tar /etc

Soll das Archiv zusätzlich komprimiert werden, muss der Parameter z angegeben werden.
Zusätzliche Information über den Vorgang erhält man mit dem Parameter v (verbose).

       /home/tester/ # tar –cvzf etc.tgz /etc

Zum Extrahieren wird der Parameter x verwendet.

       /home/tester/ # tar –xvzf etc.tgz
Der Linux – Schulwebserver                                                                     63



7 Konfiguration einfacher Serverdienste

7.1   Apache-Webserver

Benötigte Pakete: apache2

Empfohlenen Pakete: Selektion Einfacher Webserver mit Apache2




Abbildung 59: Apache-Pakete


Linux mit dem Webserver Apache61 ist einer der meist verbreiteten Systeme für Webserver.
Der Apache-Webserver stellt den HTTP62-Dienst auf Port 80 zur Verfügung, über welches
die Seitenbeschreibungssprache HTML63 versendet wird. Der Server beantwortet Anfragen
der Form Dienst://host.domäne/ordner/seite und liefert diese dem Client aus. Durch
zusätzliche Module kann seine Funktion erweitert werden. Wichtige Module wären mod_php




61
   http://httpd.apache.org/
62
   Das Hypertext Transfer Protocol (HTTP) ist ein zustandsloses Datenaustausch-Protokoll zur
Übertragung von Daten.
63
   Hypertext Markup Language
Der Linux – Schulwebserver                                                                           64

und mod_ssl. Mit mod_php kann die Skriptsprache php64 implementiert werden, mod_ssl65
sorgt für die Verschlüsselung.

Alle Konfigurations-Skripts liegen im Ordner /etc/apache2. Teile der Konfiguration können
auch mit YaST erledigt werden.

Der Apache-Webserver kann über den YaST-Runlevel-Editor gestartet werden. In YaST
muss System und dann Runlevel-Editor gewählt werden. Nach Auswahl von apache2 wird
durch Aktivieren der Dienst gestartet. Gibt der folgende Dialog 0 zurück funktioniert nun der
Apache-Webserver.




Abbildung 60: Apache starten


Über den Browser kann direkt der Test des Webservers erfolgen. Über den URL
http://localhost meldet sich der Server. Sind keine Webseiten in der Dokument-Root des
Webservers, zeigt der Webserver einen Error 40466. Da keine Webseite vorhanden ist, wird
eine Error-Seite von Apache angezeigt. Diese Seiten können und sollten auch verändert
werden. Alle Error-Seiten befinden sich im Verzeichnis /usr/share/apache2/error/.


64
   http://www.php.net/
65
   http://www.openssl.org/
66
   404-Error: Dieser wird angezeigt, wenn eine Webseite nicht vorhanden oder nicht erreichbar ist.
Der Linux – Schulwebserver                                                                     65




Abbildung 61: Error 403


7.2      vsftp-Server

Benötigte Paket: vsftpd, xinetd

            „Das File Transfer Protocol (engl., "Dateiübertragungsverfahren", kurz FTP) ist ein in
            RFC 959 spezifiziertes Netzwerkprotokoll zur Dateiübertragung über TCP/IP-
            Netzwerke. FTP ist in der Anwendungsschicht des TCP/IP Protokollstapels
            angesiedelt. Es wird benutzt, um Dateien vom Server zum Client (Download), vom
            Client zum Server (Upload) oder clientgesteuert zwischen zwei Servern zu
            übertragen.“ (http://de.wikipedia.org/wiki/File_Transfer_Protocol, 07.02.2005)

Das FTP-Protokoll verwendet mehrere Ports. Port 21 wird als Control Port bezeichnet. Auf
diesem Port wird die Verbindung gesteuert. Die Datenübertragung erfolgt über Port 20 im
Active Mode. Im Passive Mode baut der Client eine Verbindung jenseits von Port 1024 auf.

Nach dem Einspielen der Pakete mit YaST ist der vsFTP-Server67 als Anonymous-FTP
Server konfiguriert. Jeder hat Leserechte, keiner hat Schreibrechte. Soll auch der FTP-



67
     http://vsftpd.beasts.org/
Der Linux – Schulwebserver                                                               66

Upload funktionieren, muss das File /etc/vsftpd.conf konfiguriert werden. Lokale User sollen
Lese- und Schreibrechte haben. Anonymen Usern wird der Zugang verweigert.

Das File /etc/vsftpd.conf muss dazu in einem Editor geöffnet werden. Das Konfigurations-
Skript teilt sich in drei Bereiche. In der General Settings Sektion wird allgemeines
konfiguriert. In der Sektion Anonymous FTP user Settings wird der anonyme Zugriff
konfiguriert. Im Bereich Lokal FTP user Settings wird der Zugriff für die am System
angelegten User eingestellt.

In den General Settings muss in der Zeile #write_enable=YES das Zeichen # entfernt
werden. Um eine Begrüßung beim Login zu senden, muss die Zeile
#ftpd_banner=“Welcome to FOOBAR FTP service.“ editiert werden. Um den Banner zu
aktiveren muss das Zeichen # entfernt werden.

In den Lokal FTP user Settings muss die Zeile #local_enable=YES verändert werden. Das
Zeichen # wird entfernt. Durch das Aktivieren von lokoal_unmask=022 werden die
Userrechte für den FTP-Server gesetzt.

Im Bereich Anonymous FTP user Settings muss vor die Zeile anonymous_enable=YES
das Zeichen # gesetzt werden.

Nach dem Speichern kann der vsFTP-Dämon gestartet werden. Dazu wird YaST geöffnet.
Im Bereich Netzwerkdienste wird das Icon Netzwerkdienste gewählt.
Der Linux – Schulwebserver                                                                 67




Abbildung 62: vsFTP-Dämon starten


Der Netzwerkdienst xinetd muss akitviert werden. In der Zeile ftp stream tcp nowait root
/usr/sbin/vsftp wird der Status auf An gesetzt. Nach dem Beenden von YaST läuft der FTP-
Server. Getestet kann der Server mit Konqueror werden.
Der Linux – Schulwebserver                                                             68




Abbildung 63: Test des FTP-Servers


Die URL für den Test lautet ftp://username@server, hier zum Beispiel
ftp://tester@localhost.

7.3     MySQL-Datenbankserver

Benötigte Pakete: MySQL, MySQL-client, MySQL-shared

Empfohlenen Pakete: Selektion „Einfacher Webserver mit Apache2“, phpMyAdmin

MySQL68 ist ein Datenbankserver der unter GPL zur Verfügung steht. Er gehört zu den
verbreitesten SQL Open Source Datenbanken. Neben der Linux-Variante wird MySQL auch
für Unix, Mac OS X und für Windows angeboten. Besonderer Beliebtheit erfreut sich MySQL
im Bereich von Webservern, da es besonders auf diesem Gebiet gute Performance liefert. In
Verbindung mit Linux, Apache und PHP spricht man von einem LAMP69 System.

Der erste Schritt nach dem Einspielen der Pakete sollte das Setzen eines neuen
Administrator-Passwortes sein.


68
     http://www.MySQL.com/
69
     LAMP: Linux-Apache-MySQL-PHP; WAMP: Windows-Apache-MySQL-PHP
Der Linux – Schulwebserver                                                        69




Abbildung 64: MySQL Administrator-Passwort

      /usr/bin/MySQLadmin –u root password ’NEUES_PASSWORT’

Danach kann MySQL mit Hilfe von YaST gestartet werden. Im Runlevel-Editor muss dazu
der Dienst MySQL aktiviert werden.
Der Linux – Schulwebserver                                                            70




Abbildung 65: MySQL starten


Ist auf dem Server das Paket phpMyAdmin aufgespielt, kann der Datenbank-Server direkt
über das Browserfenster verwaltet werden. Es ist dazu notwendig, das Administrator-
Passwort in das File /srs/www/htdocs/phpMyAdmin/config.inc.php einzutragen.
Der Linux – Schulwebserver                                                             71




Abbildung 66: phpMyAdmin konfigurieren


Dazu muss die Zeile $cfg[’Servers’][$i][’password’] editiert werden. Wird im Browser nun
der URL http://localhost/phpMyAdmin aufgerufen, steht das Datenbank-Frontend
phpMyAdmin zur Verfügung.
Der Linux – Schulwebserver                                                              72




Abbildung 67: phpMyAdmin


Jeder der Zugang zum Webserver hat, kann nun auf die Datenbank zugreifen. Dies
geschieht in diesem Fall mit Administrator-Rechten! Die Absicherung des Zugangs wird
später gezeigt.

7.4   Webmin-Fernwartung

Den kompletten Server über eine Browseroberfläche warten? Kein Problem, Webmin hilft.
Der Zugang zu Webmin erfolgt über das Protokoll http und das Port 80.

In der Download-Version von SuSE 9.2 ist das Paket Webmin nicht mehr enthalten. Das
Paket kann auch direkt als RPM-Paket von der Site http://www.webmin.com geladen
werden.
Der Linux – Schulwebserver                                                             73




Abbildung 68: Webmin Homepage


Nach der Auswahl des Mirrors wird das RPM-Paket wird direkt im Ordner /root gespeichert.
Der Linux – Schulwebserver                                             74




Abbildung 69: Webmin Installation starten


Die Installation startet durch das Anklicken des Files in Konqueror.
Der Linux – Schulwebserver                                                         75




Abbildung 70: Webmin installieren


Über Install package with YaST wird Webmin automatisch in das System integriert.
Alternativ kann im Terminal Webmin mit rpm installiert werden.

       rpm –i /root/webmin*

Über den URL http://localhost:10000 wird Webmin im Browser aufgerufen.
Der Linux – Schulwebserver                                                              76




Abbildung 71: Webmin-Fenster


Weitere Informationen stehen im Webmin-Tutorial von Tutorials-Tanmar70 zur Verfügung.




70
     http://tutorials.tanmar.de/linux-webmin.php
Der Linux – Schulwebserver                                                                    77


8 Der Schulserver

Webserver oder Intranetserver für Schulen sollten einige Besonderheiten haben. Linux
erweist sich in vielen Bereichen als idealer Partner für die Schule. Ein Linux-Server ist
kostengünstig, er benötigt wenig Wartung, die Hardware muss nicht die neueste sein. Es gibt
eine große Anzahl von gratis Software für den Einsatz in der Schule. Diese erleichtert die
Präsentation und Information über die Schule und organisiert den schulischen Alltag.

8.1   Die schnelle Schulhomepage

Der Weg zur Schulhomepage ist ein steiniger. Viele haben Ideen, wenige helfen bei der
Umsetzung und alle sind mit dem Ergebnis unzufrieden. Für die Schule ist eine statische nur
mit großem Aufwand zu ändernde Homepage nicht zielführend. Es empfiehlt sich daher, ein
vorgefertigtes Produkt nur mehr mit Inhalt zu füllen, oder besser noch, ein CMS71 zu wählen.
Der Vorteil eines CMS ist, dass Design und Daten getrennt verwaltet werden. Die meisten
CMS bieten zusätzlich eine einfache Administration. In den meisten Fällen geschieht dies
direkt über den Browser und ist auch von unerfahrenen Usern schnell zu erlernen. Eine
Übersicht über gängige CMS wird auf http://de.wikipedia.org/wiki/WCMS dargestellt.

Ein einfaches und für die Schule gutes WCMS72 ist Mambo. Der Download von Mambo
erfolgt von der Website http://www.mamboserver.com/.




71
   Ein Content-Management-System (CMS) ist eine Software zur Verwaltung des Inhalts einer Website
oder auch von anderen Informationsangeboten.
72
   Ein Web Content Management System (WCMS) ist ein Content Management System, welches sich
ausschließlich oder überwiegend mit der Publikation auf Webseiten beschäftigt.
Der Linux – Schulwebserver                                                              78




Abbildung 72: Download Mambo


Gespeichert wird der Download temporär im Verzeichnis /root. Nun wird das Webserver-
Dokument-Verzeichnis vorbereitet. Nach einem Wechsel in das Webserver-Dokument-
Verzeichnis werden alle nicht benötigten Dateien gelöscht. Mambo wird direkt hier her
ausgepackt.

       cd /srv/www/htdocs
       rm *
       tar –xvzf /root/Mambo*
Der Linux – Schulwebserver                                                             79




Abbildung 73: Mambo auspacken


Damit der Webserver (User: wwwrun) die Seiten lesen darf, werden die Dateirechte auf 755
geändert.

       chmod –R 755 *
Der Linux – Schulwebserver                                                           80




Abbildung 74: Moodle Userrechte ändern


Das WCMS Mambo benötigt zum Ablegen der Daten eine Datenbank und einen Zugang zu
dieser. Beides wird über phpMyAdmin angelegt. PhpMyAdmin wird über den Browser mit
dem URL http://localhost/phpMyAdmin gestartet.
Der Linux – Schulwebserver              81




Abbildung 75: Datenbank Mambo anlegen
Der Linux – Schulwebserver                                                                82




Abbildung 76: Datenbankuser Mambo anlegen


Mambo benötigt einen Datenbank-User, der auf die Datenbank mambo Zugriff hat. Aus
Überlegungen der Sicherheit sollte dieser User aber auf keine anderen Datenbanken des
Servers Zugriff haben. Nach der Wahl der Datenbank MySQL muss der Moodle-Datenbank-
User zuerst in die Tabelle user eingetragen werden.

Im Feld Host wird localhost eingetragen, im Feld User wird mambo eingetragen. Das
Passwort wird in das Feld Password eingetragen, die Funktion auf PASSWORD gestellt.
Alle anderen Werte werden nicht geändert. Zusätzlich werden die Rechte des Users für die
Datenbank vergeben. Dies geschieht in der Tabelle db.

Im Feld Host wird localhost eingetragen, im Feld Db wird mambo eingetragen, als User
wird mambo eingetragen. Alle anderen Felder werden auf Y gesetzt. Der User mambo hat
nun in der Datenbank mambo alle Rechte, kann aber keine anderen Datenbanken
bearbeiten. Zusätzlich kann er sich nur vom lokalen Rechner aus verbinden. Abschließend
muss die Datenbank neu gestartet werden.

       /etc/init.d/MySQL restart

Der Webserver benötigt im Ordner /srv/www/httpd/ Schreibrechte.
Der Linux – Schulwebserver                                                               83

       chown –R wwwrun /srv/www/httpd

Nach den Vorbereitungen erfolgt die eigentliche Installation von Mambo direkt über den
Browser-URL http://locahost/.




Abbildung 77: Mambo pre-installation check
Der Linux – Schulwebserver              84




Abbildung 78: Mambo Lizenzbedingungen
Der Linux – Schulwebserver                          85




Abbildung 79: Mambo MySQL Datenbank Konfiguration
Der Linux – Schulwebserver      86




Abbildung 80: Mambo Site name
Der Linux – Schulwebserver                                                            87




Abbildung 81: Mambo URL, Pfad, Administrator E-Mail Adresse, Administrator Passwort
Der Linux – Schulwebserver                                                            88




Abbildung 82: Installations-Ordner löschen


Nach dem Abschluss der Installation muss der Ordner installation gelöscht werden.

       rm –R /srv/www/htdocs/installation

Die Mambo Test Seiten können nun im Browser mit URL http://localhost/ aufgerufen werden.
Die Administration erfolgt über den URL http://localhost/administrator/.
Der Linux – Schulwebserver           89




Abbildung 83: Mambo Administration
Der Linux – Schulwebserver                                                                        90




Abbildung 84: Mambo Homepage


8.2      Das LMS Moodle

Benötigte Pakete: apache, mod_php, MySQL

Empfohlene Pakete: Selektion Einfacher Webserver mit Apache2

Moodle ist ein OpenSource LMS. Die Software ist kostenlos und bietet viele Möglichkeiten
einer modernen Lernplattform.

            „Das Projekt versucht, aktuelle Erkenntnisse der konstruktivistischen Pädagogik
            (Konstruktivismus) im Rahmen von webbasiertem Lernen umzusetzen. Moodle
            eröffnet so Möglichkeiten, e-Learning in Kursform im Sinne kollaborativen Lernens
            umzusetzen.“ (http://de.wikipedia.org/wiki/Moodle, 06.02.2005)

Im Evaluationsbericht73 des Österreichischen Bundesministeriums schneidet Moodle als
hervorragend ab.

Besonders hervorgehoben werden einfache Bedienbarkeit, Flexibilität und die deutschen
Supportstrukturen.

73
     http://www.bildung.at/statisch/bmbwk/lernplattformen_evaluation_und_ergebnisse_1_bis_3.pdf
Der Linux – Schulwebserver                                                            91

Es bietet sich an, für Moodle einen eigenen User anzulegen. Diese Aufgabe übernimmt
YaST.




Abbildung 85: User moodle anlegen


Das LMS Moodle wird im Format .tgz von der Webseite http://www.moodle.org/ herunter
geladen.
Der Linux – Schulwebserver                                                             92




Abbildung 86: Moodle Download


Gespeichert wird das komprimierte File im Ordner /home/moodle/. Auspacken kann man
das File direkt in diesem Ordner. Danach werden die Moodle-Files nach
/home/moodle/public_html verschoben.

      cd /home/moodle/
      tar –xvzf moodle*
      mv moodle/public_html/

Zusätzlich benötigt Moodle ein beschreibbares Verzeichnis moodledata. Dieses wird im
Ordner /home/moodle/ angelegt. Der User wwwrun wird Besitzer dieses Verzeichnisses.
Somit kann der Webserver Apache hier Files ablegen.

      mkdir /home/moodle/moodledata
      chown wwwrun –R moodledata

Das Einrichten eines Moodle-Datenbank-Users und einer Datenbank erfolgt am einfachsten
über phpMyAdmin. Dazu wird im Browser der URL http://localhost/phpMyAdmin/
geöffnet. Über die Eingabezeile Neue Datenbank anlegen wird die Datenbank erstellt.
Der Linux – Schulwebserver                                                              93




Abbildung 87: Datenbank moodle anlegen


Moodle benötigt einen Datenbank-User der auf die Datenbank moodle Zugriff hat. Aus
Überlegungen der Sicherheit sollte dieser User aber auf keine anderen Datenbanken des
Servers Zugriff haben. Nach der Wahl der Datenbank MySQL muss der Moodle-Datenbank-
User zuerst in die Tabelle user eingetragen werden.
Der Linux – Schulwebserver                                                             94




Abbildung 88: Datenbank-User „moodle“ anlegen.


Im Feld Host wird localhost eingetragen, im Feld User wird moodle eingetragen. Das
Passwort wird in das Feld Password eingetragen, die Funktion auf PASSWORD gestellt.
Alle anderen Werte werden nicht geändert. Zusätzlich werden die Rechte des Users für die
Datenbank vergeben. Dies geschieht in der Tabelle db.
Der Linux – Schulwebserver                                                                95




Abbildung 89: Moodle Datenbank-Rechte vergeben


Im Feld Host wird localhost eingetragen, im Feld db wird moodle eingetragen, als User
wird moodle eingetragen. Alle anderen Felder werden auf Y gesetzt. Der User moodle hat
nun in der Datenbank moodle alle Rechte, kann aber keine anderen Datenbanken
bearbeiten. Zusätzlich kann er sich nur vom lokalen Rechner aus verbinden. Abschließend
muss die Datenbank neu gestartet werden.

       /etc/init.d/MySQL restart

Nach den Vorbereitungen erfolgt die eigentliche Installation von Moodle direkt über den
Browser-URL http://locahost/~moodle/.
Der Linux – Schulwebserver                                                                    96




Abbildung 90: Sprachauswahl


Der erste Schritt der Installation ist die Wahl der Sprache. Moodle unterstützt während der
Installation Deutsch.
Der Linux – Schulwebserver                                   97




Abbildung 91: Überprüfung der PHP-Einstellungen


Im zweiten Schritt werden die PHP-Einstellungen überprüft.
Der Linux – Schulwebserver                                                             98




Abbildung 92: Überprüfung der Verzeichnisse


Die URL Adresse, das Moodle Verzeichnis und das Datenverzeichnis wird im dritten Schritt
überprüft. Im Datenverzeichnis muss der User wwwrun Schreibrechte haben. Entweder
werden die Dateirechte auf 777 gesetzt, oder das Verzeichnis wird chmod dem User
wwwrun übergeben (vgl. Seite 92 moodledata).
Der Linux – Schulwebserver                                                           99




Abbildung 93: Datenbank Zugang


Im nächsten Schritt wird der Zugang zur Datenbank konfiguriert. Die oben erstellte
Datenbank und der Moodle-Datenbank-User werden für den Zugang eingetragen.
Der Linux – Schulwebserver            100




Abbildung 94: Konfigurations-Skript
Der Linux – Schulwebserver                      101




Abbildung 95: Konfigurations-Skript speichern
Der Linux – Schulwebserver   102




Abbildung 96: GPL-Lizenz
Der Linux – Schulwebserver           103




Abbildung 97: Datenbank einspielen
Der Linux – Schulwebserver                                                             104




Abbildung 98: Variablen konfigurieren


Bei der Konfiguration der Variabeln sollte eine Sprache gewählt werden. Ein Land und eine
existierende E-Mail Adresse müssen eingetragen werden.
Der Linux – Schulwebserver           105




Abbildung 99: Moodle Release Notes
Der Linux – Schulwebserver                                        106




Abbildung 100: Aktualisieren der Datenbank


Bestätigen der nächsten Schritte mit Weiter am Ende der Seiten.
Der Linux – Schulwebserver                    107




Abbildung 101: Konfiguration der Startseite
Der Linux – Schulwebserver                                                           108




Abbildung 102: Administrator anlegen


Die E-Mail Adresse des Administrators und die Stadt des Administrators muss eingetragen
werden.
Der Linux – Schulwebserver    109




Abbildung 103: Moodle Start
Der Linux – Schulwebserver                                                               110


9 Server Security

Sicherheit ist bei Webservern immer ein Problem. Linux bietet einige Möglichkeiten das
System zu schützen.

9.1   SuSE Firewall

Die SuSE Firewall kann direkt über YaST konfiguriert werden. Die Konfiguration startet über
Sicherheit und Benutzer und Firewall.




Abbildung 104: Firewall neu konfigurieren


Im ersten Schritt wird Firewall-Einstellungen neu konfigurieren gewählt.
Der Linux – Schulwebserver                                                            111




Abbildung 105: Schnittstellen zuweisen


Die externe Schnittstelle wird vorgeschlagen. Die MAC-Adresse der Netzwerkkarte wird als
Device-Name angezeigt.
Der Linux – Schulwebserver                                                            112




Abbildung 106: Firewall konfigurieren


Je nach angebotenen Servierdiensten muss die entsprechende Checkbox aktiviert werden.
Für den FTP-Server werden zusätzlich die TCP-Ports 20 und 21, sowie das UDP Port 21
benötigt (vgl. FTP, Seite 15). Zusätzlich kann das TCP-Port 10000 für Webmin freigegeben
werden.
Der Linux – Schulwebserver                                                             113




Abbildung 107: Firewall Protokollierung


In den Protokollierungsoptionen wird angegeben, was in das Logfile /var/log/messages
eingetragen werden soll.
Der Linux – Schulwebserver                                                             114




Abbildung 108: Masquerading


Sind in den Server zwei Netzwerkkarten eingebaut, kann das Masquerading aktiviert werden.
Die Firewall routet dann auch Pakte weiter.

9.2   MySQL und phpMyAdmin

Bei der Installation von MySQL und phpMyAdmin, wie im Kapitel 7.3 beschrieben, kann jeder
User direkt über die Homepage auf MySQL zugreifen. Eine elegantere Variante wäre, einen
User anzulegen, der nur Lesezugriff auf die Datenbank MySQL hat. Dies kann direkt in
phpMyAdmin erfolgen. Dazu muss die Datenbank MySQL ausgewählt werden. Über den
Register SQL kann der User pma mit dem Passwort pmapass hinzugefügt werden.

       GRANT USAGE ON MySQL.* TO 'pma'@'localhost' IDENTIFIED BY
       'pmapass';
       GRANT SELECT (
            Host, User, Select_priv, Insert_priv, Update_priv,
       Delete_priv,
            Create_priv, Drop_priv, Reload_priv, Shutdown_priv,
       Process_priv,
Der Linux – Schulwebserver                                                        115

            File_priv, Grant_priv, References_priv, Index_priv,
       Alter_priv,
            Show_db_priv, Super_priv, Create_tmp_table_priv,
       Lock_tables_priv,
            Execute_priv, Repl_slave_priv, Repl_client_priv
            ) ON MySQL.user TO 'pma'@'localhost';
       GRANT SELECT ON MySQL.db TO 'pma'@'localhost';
       GRANT SELECT ON MySQL.host TO 'pma'@'localhost';
       GRANT SELECT (Host, Db, User, Table_name, Table_priv,
       Column_priv)
            ON MySQL.tables_priv TO 'pma'@'localhost';

Um die Userrechte zu aktiveren, wird zusätzlich die Datenbank neu geladen.

       /# /etc/init.d/MySQL reload

Als Abschluss wird das File /srv/www/htdocs/phpMyAdmin/config.inc.php geändert.




Abbildung 109: config.inc.php


Als controluser wird pma gesetzt, als controlpass wird pmapass verwendet. Der
auth_type wird auf http verändert. Das Administratorpasswort gelöscht.
Der Linux – Schulwebserver                                                                     116

Wird nun phpMyAdmin aufgerufen, muss sich jeder User anmelden und er kann nur seinen
Bereich bearbeiten.

9.3   Webmin

Webmin ist das ideale Tool für die Fernwartung. Bei der Installation von Kapitel 7.4 wird das
unsichere http Protokoll verwendet. Soll das https74 Protokoll verwendet werden, muss
Webmin entsprechend eingerichtet werden. Zusätzlich wird das Paket perl-Net_SSLeay
benötigt.




Abbildung 110: pearl-Net_SSLeary


In Webmin erfolgen die notwenigen Schritte unter Webmin Coniguration und SSL
Encryption. SSL muss aktiviert werden. Mit Create Now werden diese Einstellungen
abgeschlossen.




74
  HTTPS steht für hypertext transfer protocol secure und ist ein Netzwerkprotokoll, das eine
gesicherte HTTP-Verbindung zwischen Rechnern ermöglicht.
Der Linux – Schulwebserver                                                          117




Abbildung 111: Webmin SSL Encryption


Mit Certificate Authority kann ein eigenes Zertifikat für Webmin erstellt werden.


9.4   Apache mit mod_ssl

Auch die Administrations-Zugänge für Mambo und Moodle sollte über https gesichert
werden. Der erste Schritt dafür ist die Erstellung des Zertifikates.

       /etc/apache2 # openssl req –new –x509 –nodes –days 365 –out
       ssl.crt/server.crt –keyout ssl.key/server.key

Die Informationen für das Land, die Organisation usw. müssen eingetragen werden.
Abschließend muss der Webserver neu gestartet werden.

       /etc/apache2 # rcapache2 stop
       /etc/apache2 # rcapache2 startssl
Der Linux – Schulwebserver                                                          118




Abbildung 112: APACHE_SERVER_FLAG=“SSL“


Soll Apache2 automatisch mit SSL gestartet werden, muss mit YaST das File /etc/sysconfig
verändert werden. Der Wert Network/WWW/Apache2/APACHE_SERVER_FLAGS muss
auf SSL gesetzt werden. Mambo und Moodle können somit auch über die gesicherte https
Verbindung aufgerufen werden.
Der Linux – Schulwebserver                                                              119


10 Stichwortverzeichnis
apache2 62, 63, 64, 90, 117                      Kernel 3, 7, 8
ARP 16                                           Knoppix 8
Bash                                             Konqueror 67, 74
                                                 LAMP 11, 68
  Bourne Again Shell 4                           LGPL 8
                                                 loopback 19
BGP 16                                           ls 55, 59, 60
Bibliothek                                       MAC 111
                                                 Mambo 77, 78, 79, 80, 81, 82, 83, 84, 85,
  libraries 6                                       86, 87, 88, 89, 90, 117, 118
                                                 man 3, 10, 19, 20, 55, 57, 61, 62, 68, 92
                                                 mkdir 61, 92
bind 21                                          mod_php 63, 90
BOOTP 19                                         mod_ssl 64, 117
Broadcast 17, 19                                 Moodle 80, 82, 90, 91, 92, 93, 95, 96, 98,
cat 58                                              99, 105, 109, 117, 118
cd 55, 56, 61, 78, 92                            mounten 10, 57, 61
chmod 60, 79, 98                                 Mounten 61
chown 60, 83, 92                                 mv 62, 92
CMS 77                                           MySQL 2, 11, 68, 69, 70, 82, 85, 90, 93,
cp 61, 62                                           95, 114, 115
DARPA 13                                         Netzmaske 16, 17, 20
date 54, 56                                      Netzwerk 4, 14, 15, 16, 17, 19, 20, 29
Debian 6                                         nslookup 21
df 61                                            NTP 50, 51, 52
DHCP 19, 29                                      Open Source 9, 68
Distribution 6, 22, 56                           OpenOffice 8, 9
dmesg 54                                         OSPF 16
DNS 15, 21                                       passwd 58, 61, 62
DoD 13                                           perl-Net_SSLeay 116
Ethernet 15, 16                                  PHP 2, 11, 68, 97
exit 55                                          phpMyAdmin 68, 70, 71, 72, 80, 92, 114,
find 62                                             115, 116
FTP 7, 14, 15, 22, 65, 66, 67, 68, 112           ping 40, 46, 47
Gateway 16, 46                                   POP3 14, 15
Gentoo 6                                         pwd 55
GID 59                                           RARP 16
GNOME 4, 8                                       reboot 55, 56
GNU-Software-Projekt 3, 7, 8, 9                  RedHat 6
halt 55                                          Referenzmodell 13, 14, 15
Hops 14                                          ReiserFS 10
http 4, 5, 6, 7, 8, 9, 11, 19, 21, 25, 31, 63,   RFC 13, 65
   64, 65, 68, 71, 72, 75, 76, 77, 80, 83,       RIP 15
   88, 90, 91, 92, 95, 115, 116                  rm 61, 78, 88
https 116, 117, 118                              rmdir 61
ICMP 16                                          Router 12, 18
Ifconfig 17, 18                                  RPM 72, 73
IMAP 14, 15                                      Runlevel 35, 64, 69
IP 13, 14, 15, 16, 17, 18, 19, 20, 21, 44,       Samba 8, 31
   45, 65                                        SaX2 32
IPv4 13, 14, 16, 19                              shadow 58, 59
IPv6 13, 14                                      Shell 4, 15, 53, 54
KDE 4, 5, 8, 9, 10, 35, 57                       shutdown 55
Der Linux – Schulwebserver                                                120

SMTP 15                              traceroute 18, 19
SNMP 15                              UDP 15, 112
SSH 15                               UID 59
SSL 116, 117, 118                    umount 61
su 29, 55                            VMware 2
SuSE 2, 6, 22, 29, 35, 47, 72, 110   vsFTP 65, 66, 67
SuSEFirewall 11                      WCMS 77, 80
tar 62, 78, 92                       Webmin 11, 72, 73, 74, 75, 76, 112, 116,
TCP 13, 14, 15, 16, 19, 65, 112         117
TCP/IP 13, 14, 15, 16, 19, 65        WLAN 16
Telnet 15                            wwwrun 79, 83, 92, 98
Terminals 10                         XFree86 7, 8
Token 15, 16                         X-Server 4
Torvald, Linus 2, 7                  YaST 24, 30, 43, 44, 47, 49, 50, 64, 65,
touch 60, 61                            66, 67, 69, 75, 91, 110, 118
Der Linux Schulserver
Der Linux Schulserver
Der Linux Schulserver
Der Linux Schulserver
Der Linux Schulserver

Weitere ähnliche Inhalte

Was ist angesagt?

Stack- und Heap-Overflow-Schutz bei Windows XP und Windows Vista
Stack- und Heap-Overflow-Schutz bei Windows XP und Windows Vista Stack- und Heap-Overflow-Schutz bei Windows XP und Windows Vista
Stack- und Heap-Overflow-Schutz bei Windows XP und Windows Vista Johannes Hohenbichler
 
agorum core-benutzer-handbuch-6 4-0
agorum core-benutzer-handbuch-6 4-0agorum core-benutzer-handbuch-6 4-0
agorum core-benutzer-handbuch-6 4-0agorum Software GmbH
 
Allgemeine betriebsdokumentation-kolab server22-20080103_1.0
Allgemeine betriebsdokumentation-kolab server22-20080103_1.0Allgemeine betriebsdokumentation-kolab server22-20080103_1.0
Allgemeine betriebsdokumentation-kolab server22-20080103_1.0Daniel Ward
 
Agorum core-administrations-handbuch-6 4-0a
Agorum core-administrations-handbuch-6 4-0aAgorum core-administrations-handbuch-6 4-0a
Agorum core-administrations-handbuch-6 4-0aagorum Software GmbH
 
Team Oldenburger Robo-Fußball – Abschlussbericht der Projektgruppe 2010
Team Oldenburger Robo-Fußball – Abschlussbericht  der Projektgruppe  2010Team Oldenburger Robo-Fußball – Abschlussbericht  der Projektgruppe  2010
Team Oldenburger Robo-Fußball – Abschlussbericht der Projektgruppe 2010Johannes Diemke
 

Was ist angesagt? (10)

Stack- und Heap-Overflow-Schutz bei Windows XP und Windows Vista
Stack- und Heap-Overflow-Schutz bei Windows XP und Windows Vista Stack- und Heap-Overflow-Schutz bei Windows XP und Windows Vista
Stack- und Heap-Overflow-Schutz bei Windows XP und Windows Vista
 
agorum core-benutzer-handbuch-6 4-0
agorum core-benutzer-handbuch-6 4-0agorum core-benutzer-handbuch-6 4-0
agorum core-benutzer-handbuch-6 4-0
 
Allgemeine betriebsdokumentation-kolab server22-20080103_1.0
Allgemeine betriebsdokumentation-kolab server22-20080103_1.0Allgemeine betriebsdokumentation-kolab server22-20080103_1.0
Allgemeine betriebsdokumentation-kolab server22-20080103_1.0
 
Pdf Crack
Pdf CrackPdf Crack
Pdf Crack
 
Ge Guide
Ge GuideGe Guide
Ge Guide
 
JAX B
JAX BJAX B
JAX B
 
Agorum core-administrations-handbuch-6 4-0a
Agorum core-administrations-handbuch-6 4-0aAgorum core-administrations-handbuch-6 4-0a
Agorum core-administrations-handbuch-6 4-0a
 
Team Oldenburger Robo-Fußball – Abschlussbericht der Projektgruppe 2010
Team Oldenburger Robo-Fußball – Abschlussbericht  der Projektgruppe  2010Team Oldenburger Robo-Fußball – Abschlussbericht  der Projektgruppe  2010
Team Oldenburger Robo-Fußball – Abschlussbericht der Projektgruppe 2010
 
Dbox2 V050207 Lndlr
Dbox2 V050207 LndlrDbox2 V050207 Lndlr
Dbox2 V050207 Lndlr
 
Laz Infos Svn0082
Laz Infos Svn0082Laz Infos Svn0082
Laz Infos Svn0082
 

Andere mochten auch

Andere mochten auch (20)

Dr. Sabine Schonert Hirz - Stressmanagement
Dr. Sabine Schonert Hirz - Stressmanagement Dr. Sabine Schonert Hirz - Stressmanagement
Dr. Sabine Schonert Hirz - Stressmanagement
 
Ost 1 41435 2000
Ost 1 41435 2000Ost 1 41435 2000
Ost 1 41435 2000
 
Civilizaciones del agua de egipto 6 a eq 6
Civilizaciones      del   agua  de  egipto 6 a eq 6Civilizaciones      del   agua  de  egipto 6 a eq 6
Civilizaciones del agua de egipto 6 a eq 6
 
Boletin electronicoucn ed2n32
Boletin electronicoucn ed2n32Boletin electronicoucn ed2n32
Boletin electronicoucn ed2n32
 
Dinamizacion comunitaria
Dinamizacion comunitariaDinamizacion comunitaria
Dinamizacion comunitaria
 
Die Schulgarten Bibliothek
Die Schulgarten BibliothekDie Schulgarten Bibliothek
Die Schulgarten Bibliothek
 
Presentacion final
Presentacion  finalPresentacion  final
Presentacion final
 
Computo
ComputoComputo
Computo
 
Von Kohle zu Silizium
Von Kohle zu SiliziumVon Kohle zu Silizium
Von Kohle zu Silizium
 
El relive de_espa_a2
El relive de_espa_a2El relive de_espa_a2
El relive de_espa_a2
 
Google maps
Google mapsGoogle maps
Google maps
 
Proyecto Capilla y casa hermandad
Proyecto Capilla y casa hermandadProyecto Capilla y casa hermandad
Proyecto Capilla y casa hermandad
 
Juditas3(rev)
Juditas3(rev)Juditas3(rev)
Juditas3(rev)
 
Resultados Campeonato Nacional de Ruta 2011 Scratch
Resultados Campeonato Nacional de Ruta 2011 ScratchResultados Campeonato Nacional de Ruta 2011 Scratch
Resultados Campeonato Nacional de Ruta 2011 Scratch
 
Coinfinity Max Tertinegg
Coinfinity Max TertineggCoinfinity Max Tertinegg
Coinfinity Max Tertinegg
 
Lärmpausen am Frankfurter Flughafen
Lärmpausen am Frankfurter FlughafenLärmpausen am Frankfurter Flughafen
Lärmpausen am Frankfurter Flughafen
 
Goteo Andalucía Innycia
Goteo Andalucía InnyciaGoteo Andalucía Innycia
Goteo Andalucía Innycia
 
participacion medioambiente
participacion medioambienteparticipacion medioambiente
participacion medioambiente
 
Web 2.0
Web 2.0Web 2.0
Web 2.0
 
Photos
PhotosPhotos
Photos
 

Ähnlich wie Der Linux Schulserver

Final Opentrans 2.0 Rfq
Final Opentrans 2.0   RfqFinal Opentrans 2.0   Rfq
Final Opentrans 2.0 Rfqguest6f1fb4
 
Win32 Api Tutorials Pdf
Win32 Api Tutorials PdfWin32 Api Tutorials Pdf
Win32 Api Tutorials Pdfguestf7827f
 
382726314 X Php5 In 14 Tagen (Ddt)
382726314 X Php5 In 14 Tagen (Ddt)382726314 X Php5 In 14 Tagen (Ddt)
382726314 X Php5 In 14 Tagen (Ddt)guest943d41
 
Web-Entwicklung mit Spring, Hibernate und Facelets in Eclipse
Web-Entwicklung mit Spring, Hibernate und Facelets in EclipseWeb-Entwicklung mit Spring, Hibernate und Facelets in Eclipse
Web-Entwicklung mit Spring, Hibernate und Facelets in EclipseSarah Steffen
 
lernOS Prozessmodellierung Guide (Version 1.0)
lernOS Prozessmodellierung Guide (Version 1.0)lernOS Prozessmodellierung Guide (Version 1.0)
lernOS Prozessmodellierung Guide (Version 1.0)Cogneon Akademie
 
Handbuch CONSIDEO Modeler V 5.0
Handbuch CONSIDEO Modeler V 5.0Handbuch CONSIDEO Modeler V 5.0
Handbuch CONSIDEO Modeler V 5.0Detlef Kahrs
 
Maven Definitive Guide De
Maven Definitive Guide DeMaven Definitive Guide De
Maven Definitive Guide Debouchri
 
Handbuch de
Handbuch deHandbuch de
Handbuch degordem
 
Grundlagen der Kommandozeile unter Unix/Linux (Handout)
Grundlagen der Kommandozeile unter Unix/Linux (Handout)Grundlagen der Kommandozeile unter Unix/Linux (Handout)
Grundlagen der Kommandozeile unter Unix/Linux (Handout)Kerstin Puschke
 
Besser php programmieren - Von der Klasse über Unittests, Cruisecontrol, Seli...
Besser php programmieren - Von der Klasse über Unittests, Cruisecontrol, Seli...Besser php programmieren - Von der Klasse über Unittests, Cruisecontrol, Seli...
Besser php programmieren - Von der Klasse über Unittests, Cruisecontrol, Seli...teena77
 
Besser php entwickeln - Erstentwurf
Besser php entwickeln - ErstentwurfBesser php entwickeln - Erstentwurf
Besser php entwickeln - ErstentwurfGünther Haslbeck
 
Hackers Undergroundbook
Hackers UndergroundbookHackers Undergroundbook
Hackers Undergroundbookprasadpsrh
 
Best Practice Guide
Best Practice GuideBest Practice Guide
Best Practice Guideguestc141a6
 
Blockchain-based access right management for private data in decentralized cl...
Blockchain-based access right management for private data in decentralized cl...Blockchain-based access right management for private data in decentralized cl...
Blockchain-based access right management for private data in decentralized cl...ArtemEger
 
Bachelor%20thesis%20Willi%20Tscheschner
Bachelor%20thesis%20Willi%20TscheschnerBachelor%20thesis%20Willi%20Tscheschner
Bachelor%20thesis%20Willi%20Tscheschnertutorialsruby
 
Bachelor%20thesis%20Willi%20Tscheschner
Bachelor%20thesis%20Willi%20TscheschnerBachelor%20thesis%20Willi%20Tscheschner
Bachelor%20thesis%20Willi%20Tscheschnertutorialsruby
 

Ähnlich wie Der Linux Schulserver (20)

Final Opentrans 2.0 Rfq
Final Opentrans 2.0   RfqFinal Opentrans 2.0   Rfq
Final Opentrans 2.0 Rfq
 
Win32 Api Tutorials Pdf
Win32 Api Tutorials PdfWin32 Api Tutorials Pdf
Win32 Api Tutorials Pdf
 
382726314 X Php5 In 14 Tagen (Ddt)
382726314 X Php5 In 14 Tagen (Ddt)382726314 X Php5 In 14 Tagen (Ddt)
382726314 X Php5 In 14 Tagen (Ddt)
 
Web-Entwicklung mit Spring, Hibernate und Facelets in Eclipse
Web-Entwicklung mit Spring, Hibernate und Facelets in EclipseWeb-Entwicklung mit Spring, Hibernate und Facelets in Eclipse
Web-Entwicklung mit Spring, Hibernate und Facelets in Eclipse
 
lernOS Prozessmodellierung Guide (Version 1.0)
lernOS Prozessmodellierung Guide (Version 1.0)lernOS Prozessmodellierung Guide (Version 1.0)
lernOS Prozessmodellierung Guide (Version 1.0)
 
Manual
ManualManual
Manual
 
Handbuch CONSIDEO Modeler V 5.0
Handbuch CONSIDEO Modeler V 5.0Handbuch CONSIDEO Modeler V 5.0
Handbuch CONSIDEO Modeler V 5.0
 
Maven Definitive Guide De
Maven Definitive Guide DeMaven Definitive Guide De
Maven Definitive Guide De
 
Handbuch de
Handbuch deHandbuch de
Handbuch de
 
Solution Guide
Solution GuideSolution Guide
Solution Guide
 
Grundlagen der Kommandozeile unter Unix/Linux (Handout)
Grundlagen der Kommandozeile unter Unix/Linux (Handout)Grundlagen der Kommandozeile unter Unix/Linux (Handout)
Grundlagen der Kommandozeile unter Unix/Linux (Handout)
 
Besser php programmieren - Von der Klasse über Unittests, Cruisecontrol, Seli...
Besser php programmieren - Von der Klasse über Unittests, Cruisecontrol, Seli...Besser php programmieren - Von der Klasse über Unittests, Cruisecontrol, Seli...
Besser php programmieren - Von der Klasse über Unittests, Cruisecontrol, Seli...
 
Besser php entwickeln - Erstentwurf
Besser php entwickeln - ErstentwurfBesser php entwickeln - Erstentwurf
Besser php entwickeln - Erstentwurf
 
Lcam
LcamLcam
Lcam
 
Xm b
Xm bXm b
Xm b
 
Hackers Undergroundbook
Hackers UndergroundbookHackers Undergroundbook
Hackers Undergroundbook
 
Best Practice Guide
Best Practice GuideBest Practice Guide
Best Practice Guide
 
Blockchain-based access right management for private data in decentralized cl...
Blockchain-based access right management for private data in decentralized cl...Blockchain-based access right management for private data in decentralized cl...
Blockchain-based access right management for private data in decentralized cl...
 
Bachelor%20thesis%20Willi%20Tscheschner
Bachelor%20thesis%20Willi%20TscheschnerBachelor%20thesis%20Willi%20Tscheschner
Bachelor%20thesis%20Willi%20Tscheschner
 
Bachelor%20thesis%20Willi%20Tscheschner
Bachelor%20thesis%20Willi%20TscheschnerBachelor%20thesis%20Willi%20Tscheschner
Bachelor%20thesis%20Willi%20Tscheschner
 

Mehr von heiko.vogl

Learning Agreement Student Mobility for Studies
Learning Agreement  Student Mobility for StudiesLearning Agreement  Student Mobility for Studies
Learning Agreement Student Mobility for Studiesheiko.vogl
 
Studying in Graz,
Studying in Graz, Studying in Graz,
Studying in Graz, heiko.vogl
 
Erasmus+ Journal Issue 1
Erasmus+ Journal Issue 1 Erasmus+ Journal Issue 1
Erasmus+ Journal Issue 1 heiko.vogl
 
In-Service Course Graz: VOICES - Integrated competences for European Teachers...
In-Service Course Graz: VOICES - Integrated competences for European Teachers...In-Service Course Graz: VOICES - Integrated competences for European Teachers...
In-Service Course Graz: VOICES - Integrated competences for European Teachers...heiko.vogl
 
In-Service Course Graz 2014: VOICES - Integrated competences for European Te...
In-Service Course Graz 2014: VOICES -  Integrated competences for European Te...In-Service Course Graz 2014: VOICES -  Integrated competences for European Te...
In-Service Course Graz 2014: VOICES - Integrated competences for European Te...heiko.vogl
 
EINVERSTÄNDNIS-, EINWILLIGUNGSERKLÄRUNG
EINVERSTÄNDNIS-, EINWILLIGUNGSERKLÄRUNGEINVERSTÄNDNIS-, EINWILLIGUNGSERKLÄRUNG
EINVERSTÄNDNIS-, EINWILLIGUNGSERKLÄRUNGheiko.vogl
 
EINVERSTÄNDNIS-, EINWILLIGUNGSERKLÄRUNG
EINVERSTÄNDNIS-, EINWILLIGUNGSERKLÄRUNGEINVERSTÄNDNIS-, EINWILLIGUNGSERKLÄRUNG
EINVERSTÄNDNIS-, EINWILLIGUNGSERKLÄRUNGheiko.vogl
 
VoiceS National Group Meeting Graz 2013
VoiceS National Group Meeting Graz 2013VoiceS National Group Meeting Graz 2013
VoiceS National Group Meeting Graz 2013heiko.vogl
 
Sport- und Kreativwoche 2013
Sport- und Kreativwoche 2013Sport- und Kreativwoche 2013
Sport- und Kreativwoche 2013heiko.vogl
 
Sport- und Kreativwoche 2012
Sport- und Kreativwoche 2012Sport- und Kreativwoche 2012
Sport- und Kreativwoche 2012heiko.vogl
 
Learning-Management vs. Beziehungsmanagement
Learning-Management vs. BeziehungsmanagementLearning-Management vs. Beziehungsmanagement
Learning-Management vs. Beziehungsmanagementheiko.vogl
 
Entwurf eines Posters Erasmus <-> Facebook
Entwurf eines Posters Erasmus <-> FacebookEntwurf eines Posters Erasmus <-> Facebook
Entwurf eines Posters Erasmus <-> Facebookheiko.vogl
 
Entwurf des Papers Erasmus <-> Facebook
Entwurf des Papers Erasmus <-> FacebookEntwurf des Papers Erasmus <-> Facebook
Entwurf des Papers Erasmus <-> Facebookheiko.vogl
 
20120130 Erasmus Auslandsstudium 1 Infomeeting
20120130 Erasmus Auslandsstudium 1 Infomeeting20120130 Erasmus Auslandsstudium 1 Infomeeting
20120130 Erasmus Auslandsstudium 1 Infomeetingheiko.vogl
 
Erasmus Auslandsstudium 1. Infomeeting
Erasmus Auslandsstudium 1. InfomeetingErasmus Auslandsstudium 1. Infomeeting
Erasmus Auslandsstudium 1. Infomeetingheiko.vogl
 
Zotero Tutorial
Zotero TutorialZotero Tutorial
Zotero Tutorialheiko.vogl
 
moodle vs. facebook.ppt
moodle vs. facebook.pptmoodle vs. facebook.ppt
moodle vs. facebook.pptheiko.vogl
 
moodle vs facebook
moodle vs facebookmoodle vs facebook
moodle vs facebookheiko.vogl
 

Mehr von heiko.vogl (20)

3 infomeeting
3 infomeeting3 infomeeting
3 infomeeting
 
Learning Agreement Student Mobility for Studies
Learning Agreement  Student Mobility for StudiesLearning Agreement  Student Mobility for Studies
Learning Agreement Student Mobility for Studies
 
Studying in Graz,
Studying in Graz, Studying in Graz,
Studying in Graz,
 
Erasmus+ Journal Issue 1
Erasmus+ Journal Issue 1 Erasmus+ Journal Issue 1
Erasmus+ Journal Issue 1
 
In-Service Course Graz: VOICES - Integrated competences for European Teachers...
In-Service Course Graz: VOICES - Integrated competences for European Teachers...In-Service Course Graz: VOICES - Integrated competences for European Teachers...
In-Service Course Graz: VOICES - Integrated competences for European Teachers...
 
In-Service Course Graz 2014: VOICES - Integrated competences for European Te...
In-Service Course Graz 2014: VOICES -  Integrated competences for European Te...In-Service Course Graz 2014: VOICES -  Integrated competences for European Te...
In-Service Course Graz 2014: VOICES - Integrated competences for European Te...
 
EINVERSTÄNDNIS-, EINWILLIGUNGSERKLÄRUNG
EINVERSTÄNDNIS-, EINWILLIGUNGSERKLÄRUNGEINVERSTÄNDNIS-, EINWILLIGUNGSERKLÄRUNG
EINVERSTÄNDNIS-, EINWILLIGUNGSERKLÄRUNG
 
EINVERSTÄNDNIS-, EINWILLIGUNGSERKLÄRUNG
EINVERSTÄNDNIS-, EINWILLIGUNGSERKLÄRUNGEINVERSTÄNDNIS-, EINWILLIGUNGSERKLÄRUNG
EINVERSTÄNDNIS-, EINWILLIGUNGSERKLÄRUNG
 
VoiceS National Group Meeting Graz 2013
VoiceS National Group Meeting Graz 2013VoiceS National Group Meeting Graz 2013
VoiceS National Group Meeting Graz 2013
 
E Book
E BookE Book
E Book
 
Sport- und Kreativwoche 2013
Sport- und Kreativwoche 2013Sport- und Kreativwoche 2013
Sport- und Kreativwoche 2013
 
Sport- und Kreativwoche 2012
Sport- und Kreativwoche 2012Sport- und Kreativwoche 2012
Sport- und Kreativwoche 2012
 
Learning-Management vs. Beziehungsmanagement
Learning-Management vs. BeziehungsmanagementLearning-Management vs. Beziehungsmanagement
Learning-Management vs. Beziehungsmanagement
 
Entwurf eines Posters Erasmus <-> Facebook
Entwurf eines Posters Erasmus <-> FacebookEntwurf eines Posters Erasmus <-> Facebook
Entwurf eines Posters Erasmus <-> Facebook
 
Entwurf des Papers Erasmus <-> Facebook
Entwurf des Papers Erasmus <-> FacebookEntwurf des Papers Erasmus <-> Facebook
Entwurf des Papers Erasmus <-> Facebook
 
20120130 Erasmus Auslandsstudium 1 Infomeeting
20120130 Erasmus Auslandsstudium 1 Infomeeting20120130 Erasmus Auslandsstudium 1 Infomeeting
20120130 Erasmus Auslandsstudium 1 Infomeeting
 
Erasmus Auslandsstudium 1. Infomeeting
Erasmus Auslandsstudium 1. InfomeetingErasmus Auslandsstudium 1. Infomeeting
Erasmus Auslandsstudium 1. Infomeeting
 
Zotero Tutorial
Zotero TutorialZotero Tutorial
Zotero Tutorial
 
moodle vs. facebook.ppt
moodle vs. facebook.pptmoodle vs. facebook.ppt
moodle vs. facebook.ppt
 
moodle vs facebook
moodle vs facebookmoodle vs facebook
moodle vs facebook
 

Der Linux Schulserver

  • 1. I
  • 2. Der Linux – Schulwebserver 1 Inhaltsverzeichnis 1 Linux Grundlagen .............................................................................................................3 1.1 Was ist Linux? ..........................................................................................................3 1.2 Linux-Geschichte ......................................................................................................7 1.3 Open your mind / Open Source ................................................................................9 1.4 Unterschied Windows – Linux ..................................................................................9 2 Planung ..........................................................................................................................11 2.1 Hardwarevoraussetzung.........................................................................................11 2.2 Die Serverkonfiguration ..........................................................................................11 2.3 Netzwerkszenarien .................................................................................................12 3 TCP/IP ............................................................................................................................13 3.1 TCP/IP-Referenzmodell..........................................................................................13 3.2 IP Adressierung ......................................................................................................16 3.3 Routing ...................................................................................................................18 3.4 Netzklassen ............................................................................................................19 3.5 DNS ........................................................................................................................21 4 Grundinstallation.............................................................................................................22 4.1 Grundeinstellungen ................................................................................................22 4.2 Softwareauswahl ....................................................................................................24 4.3 Netzwerkkonfiguration ............................................................................................29 4.4 Grafikkonfiguration .................................................................................................32 4.5 FTP – Installation....................................................................................................35 5 Basiskonfiguration ..........................................................................................................43 5.1 Usermanagement ...................................................................................................43 5.2 Konfiguration der Netzwerkkarte ............................................................................44 5.3 Update ....................................................................................................................47 5.4 Softwareinstallation ................................................................................................49 5.5 Zeitsynchronisation.................................................................................................50 6 Die Shell .........................................................................................................................53 6.1 Verzeichnisse .........................................................................................................56 6.2 Dateien ...................................................................................................................58 7 Konfiguration einfacher Serverdienste ...........................................................................63 7.1 Apache-Webserver .................................................................................................63 7.2 vsftp-Server ............................................................................................................65 7.3 MySQL-Datenbankserver .......................................................................................68 7.4 Webmin-Fernwartung .............................................................................................72 8 Der Schulserver..............................................................................................................77 8.1 Die schnelle Schulhomepage .................................................................................77 8.2 Das LMS Moodle ....................................................................................................90 9 Server Security .............................................................................................................110 9.1 SuSE Firewall .......................................................................................................110 9.2 MySQL und phpMyAdmin.....................................................................................114 9.3 Webmin ................................................................................................................116 9.4 Apache mit mod_ssl .............................................................................................117 10 Stichwortverzeichnis.................................................................................................119 11 Abbildungsverzeichnis..............................................................................................121 12 Tabellenverzeichnis..................................................................................................124 13 Literaturverzeichnis ..................................................................................................125
  • 3. Der Linux – Schulwebserver 2 Vorwort LINUX, das Unix ähnliche System von Linus Torvald, ist zu einer echten Alternative für Schulen gereift. Speziell für Schulen bietet ein solches System viele Vorteile. Abgesehen von der günstigen Anschaffung und des geringen Wartungsaufwandes gibt es eine Vielzahl von Erweiterungen, die das schulische Arbeiten erleichtern. Ich habe versucht eine Installation von SuSE Linux 9.2 für eine typische Schulumgebung zu beschreiben. Das Ziel der Installation ist eine einfach zu betreibende Schulhomepage zu erstellen, sowie ein Lern Management System für den schulischen Gebrauch zu konfigurieren. Neben der Installation wird aber auch das notwendige Wissen für die Administration des Servers vermittelt. Vor der endgültigen Installation empfiehlt es sich das Skriptum durchzuarbeiten und ein Testsystem zu erstellen. Dafür reicht ein einfacher PC oder eine virtuelle Arbeitsumgebung wie zum Beispiel „VMware“. Erst wenn alles getestet wurde, soll ein Echtsystem installiert werden. Ist bereits ein Linux Webserver an der Schule vorhanden, kann und direkt mit Kapitel 8 begonnen werden. Empfehlenswert ist auf jeden Fall sich mit den wichtigsten Regeln der Sicherheit im Kaptitel 9 vertraut zu machen. Es besteht auch die Möglichkeit die Installation des Content Management und des System Lern Management System auf einem Windows Server durchzuführen. Notwendig dafür sind aber eine Erweiterung des Internet Information Server mit PHP und die Installation von MySQL. LINUX ist ein sich schnell weiter entwickelndes Betriebssystem. Auch dieses Buch ist einem ständigen Veränderungsprozess unterworfen. Über Anregungen und Verbesserungsvorschläge würde ich mich sehr freuen. Heiko Vogl heiko.vogl@phgraz.at Graz, 2005
  • 4. Der Linux – Schulwebserver 3 1 Linux Grundlagen Kompliziert, schwierig zu installieren, reine Texteingabe, unverständlich, kein Support, die Hardware wird nicht unterstützt, dies sind die Worte mit denen Linux oft beschrieben wird. Die Realität sieht anders aus. Linux hat sich entwickelt. Aus dem komplizierten und undurchsichtigen Betriebssystem wurde ein einfach zu installierendes und wartendes OS. Die Installation läuft zum Großteil automatisch. Das Systemupdate erfolgt direkt über das Internet. Der Desktop ähnelt dem der Windows Systeme. Es wurde alles getann um es dem User so einfach wie möglich zu machen. 1.1 Was ist Linux? Mit dem Begriff „Linux“ bezeichnet man den Betriebssystemkern, den Kernel. Zusätzliche Betriebssystem Software wird hauptsächlich aus dem GNU-Software-Projekt übernommen. Betriebssystem Software und Kernel sind heute so ineinander verzahnt, dass man korrekter weise von GNU/Linux sprechen müsste. Hard- ware Abbildung 1: Linux System Kernel Der eigentliche Betriebssystem-Kern.
  • 5. Der Linux – Schulwebserver 4 Shell Die Shell ist ein Programm. Es ermöglicht dem User die Kommunikation mit dem System. Erst die Shell ermöglicht es Befehle und Programme auszuführen. Eine weit verbreitete Shell unter Linux ist die Bash1 (Bourne Again Shell). Einfache Shell-Programme erleichtern die Systemadministration. X-Server Der X-Server ist ein Programm, welches Anfragen des X11-Protokolls verarbeiten kann oder einfach ausgedrückt: „Das X Windows System ist ein System für grafische Darstellungen und Benutzeroberflächen, das auch über das Netzwerk funktioniert. Die Ausgabe von Grafiken und die Eingabe von Tastendrücken und Mausbewegungen können also auf einem anderen Rechner sein als das Programm, das diese Ausgaben veranlasst und die Eingaben letztlich verarbeitet.“ (Markus Passerschröer, http://www.rz.ruhr- uni-bochum.de/dienste/software/dokumentation/xfree86-cygwin.html, 25.01.2005) Desktop Das „Look and Feel“ der X-Umgebung wird durch das Desktop oder X-Windows-Manager erzeugt. KDE und GNOME sind die am meist verbreiteten Desktops unter Linux. Auch kommerzielle Firmen, wie Sun, entwickeln Desktops. 1 http://www.gnu.org/software/bash/bash.html
  • 6. Der Linux – Schulwebserver 5 Abbildung 2: KDE 3.32 Abbildung 3: Gnome 2.83 2 http://www.kde.org/ 3 http://www.gnome.org/
  • 7. Der Linux – Schulwebserver 6 Abbildung 4: Sun Java Desktop4 Bibliothek Bibliotheken sind Sammlungen von wiederkehrenden Programmteilen (libraries). Da viele Programme gleiche oder ähnliche Teile haben, ist es ineffektiv, diesen Teil immer wieder zu programmieren. Daher werden diese Teile in eine externe Datei ausgelagert. Da mehrere Programme darauf zugreifen, kann die Größe des einzelnen Programms verkleinert werden. Fehlt die Bibliothek, läuft aber das gesamte Programm nicht mehr. Dies sind dann die berühmten fehlenden Abhängigkeiten. Distribution Distributionen sind Organisationen und Firmen die Software, Betriebssystem und Installations-Routinen zusammenstellen, dokumentieren und veröffentlichen. Die wichtigsten Distributionen sind Debian5, RedHat6, SuSE7und Gentoo8. 4 http://www.sun.com/software/javadesktopsystem/ 5 http://www.debian.org/ 6 http://www.redhat.com/ 7 http://www.suse.de/ 8 http://www.gentoo.org/
  • 8. Der Linux – Schulwebserver 7 1.2 Linux-Geschichte 1991 Der finnische Student Linus Benedict Torvalds übernimmt Teile des Betriebssystem Minix9 für ein unixähnliches Betriebssystem für die X86-Architektur. Er schreibt am 5. Oktober in der Newsgroup comp.os.minix10: "...As I mentioned a month ago, I'm working on a free version of a Minix-look-alike for AT-386 computers. It has finally reached the stage where it's even usable (though may not be, depending on what you want), and I am willing to put out the sources for wider distribution. It is just version 0.02... but I've successfully run bash, gcc, gnu-make, gnu-sed, compress, etc. under it." 1992 Die Version 0.12 wird per anonymous FTP im Internet verteilt. Die Usernet News Gruppe alt.os.linux11 wird ins Leben gerufen. Das Interesse ist enorm. Linus Torvald koordiniert die Weiterentwicklung. Die aktuelle Entwicklung ist unter http://www.kernel.org/ zugänglich. 1993 Über 100 Entwickler sind beteiligt. Der Linux-Kern wird an die GNU12- Umgebung der Free Software Foundation13 (FSF) angepasst. 1994 Die Kernel - Version 1.0 erscheint. Linux wird netzwerkfähig. Die Userzahl steigt auf 100.000. Das XFree8614- Projekt entwickelt eine GUI für Linux. Der Linux Quellcode wird unter die GPL15 gestellt. 1995 Linux wird auf Sun Sparc portiert. 1996 Linux funktioniert auch auf Systemen mit mehreren Prozessoren. 9 http://www.cs.vu.nl/~ast/minix.html 10 http://groups.google.de/groups?hl=de&lr=&ie=UTF-8&oe=UTF- 8&q=comp.os.minix&btnG=Google+Suche&meta 11 http://groups.google.de/groups?q=alt.os.linux&ie=UTF-8&oe=UTF-8&hl=de&btnG=Google+Suche 12 http://www.gnu.org/ 13 http://www.fsf.org/ 14 http://www.xfree86.org/ 15 http://www.selflinux.org/selflinux-devel/html/gpl_de.html
  • 9. Der Linux – Schulwebserver 8 1997 Wöchentlich erscheinen neue Kernel-Versionen. Kommerzielle Firmen entwickeln Software für Linux (Netscape, Applixware, Software AG, …). 1998 Der Linux Desktop KDE16 wird von ca. 700 Programmierer entwickelt. KDE ist der meist verwendete Desktop in Europa. Firmen wie IBM, Compaq, Informix und Oracle entwickeln Software und Hardware für Linux. 1999 Der Kernel 2.2 erscheint. Der Netzwerkcode und die Multiprozessor-Unterstützung wurden stark verbessert. Ein neues Desktop-Projekt mit dem Namen GNOME17 wird gestartet. Das Open Sound System18 Projekt wird gestartet. Der Windows Fileserver Samba19 wird in einer neuen Version 2.0 veröffentlicht. IBM propagiert seine Linux-Strategie. 2000 XFree86 Version 4.0 erscheint. KDE Version 2.0 erscheint. IBM investiert 1 Milliarde Dollar in den Bereich Linux. Sun veröffentlicht den StarOffice Quellcode unter LGPL20. Es entsteht daraus OpenOffice21. Der erste Vortrag über Knoppix22. 2001 Release der Kernelversion 2.4. USB und Journaling Filesysteme23 werden unterstützt. Linux wird auf die IBM AS/400 portiert. Samba 2.2 erscheint. 2002 OpenOffice Version 1.0 erscheint für Linux und Windows. Der Webbrowser Mozilla24 16 http://www.kde.org/ 17 http://www.gnome.org/ 18 http://www.opensound.com/ 19 http://www.samba.org/ 20 http://www.gnu.org/copyleft/lesser.html 21 http://www.openoffice.org/ 22 „KNOPPIX ist eine komplett von CD lauffähige Zusammenstellung von GNU/Linux-Software mit automatischer Hardwareerkennung und Unterstützung für viele Grafikkarten, Soundkarten, SCSI- und USB-Geräte und sonstige Peripherie. KNOPPIX kann als Linux-Demo, Schulungs-CD, Rescue- System oder als Plattform für kommerzielle Software-Produktdemos angepasst und eingesetzt werden. Es ist keinerlei Installation auf Festplatte notwendig. Auf der CD können durch transparente Dekompression bis zu 2 Gigabyte an lauffähiger Software installiert sein.“ (http://www.knopper.net/knoppix/, 25-01-2005) 23 „In einem so genannten Journal oder Log wird jederzeit festgehalten, welche Dateien gerade bearbeitet und dann auf die Platte geschrieben werden sollen. Im Falle eines Crash kann dann anhand dieses Journals bestimmt werden, welche Dateien inkonsistent sein könnten.“ (http://www.fh- wedel.de/~si/seminare/ws01/Ausarbeitung/3.journalfs/wasist.html, 25-01-2005) 24 http://www.mozilla.org/
  • 10. Der Linux – Schulwebserver 9 erscheint für Linux und Windows. KDE erscheint in der Version 3.0, Gnome in der Version 2.0. 2003 Der Münchner Stadtrat hat sich am 28. Mai auf Grund einer Studie für die Umstellung seiner 14.000 Computer von Windows auf Linux entschieden. 2004 Die Kernelversion 2.6 erscheint. 2005 Wien überlegt den Umstieg auf Linux. „Die Stadt Wien setzt im Serverbereich bereits seit vielen Jahren Open-Source- Software (OSS) Produkte ein. Auf Grund der dabei gewonnenen positiven Erfahrungen wird bereits seit längerem die Entwicklung der OSS Standardkomponenten für Arbeitsplätze beobachtet. Die letzten Entwicklungen sowohl bei der Bedieneroberfläche des Betriebssystems (Linux) als auch bei den Office-Programmen (OpenOffice.org)…“ (Ingrid Kammerer, 25.01.2005, http://www.wien.gv.at/ma14/oss.htm) 1.3 Open your mind / Open Source „Der Ausdruck Open Source [ p n s s] (engl.: open source) steht für quelloffen, einerseits in dem Sinne, dass der Quelltext eines Programms frei erhältlich ist, andererseits für 'offene Quelle', also dass ein Werk frei zur Verfügung steht. Software gilt als Open Source, wenn sie bestimmte Kriterien erfüllt, die in ihrer Open-Source-Lizenz geregelt sind.“ (http://de.wikipedia.org/wiki/Open_source, 25- 01-2005) Linux ist nach der GNU Public License25 Open Source. Das heißt, der Programmcode darf beliebig kopiert, verbreitet und genutzt werden. Es gibt keine Benutzungsbeschränkung bezüglich der Anzahl der Benutzer, weder der Anzahl der Installationen. Die Software darf verändert werden und in der veränderten Form weitergegeben werden. 1.4 Unterschied Windows – Linux Wo liegt der Unterschied? Es wird die gleiche Hardware verwendet und es gibt ähnliche oder sogar gleiche Software. 25 Deutsche Übersetzung der GNU Public License: http://www.gnu.de/gpl-ger.html
  • 11. Der Linux – Schulwebserver 10 Linux ist ein Mehrbenutzersystem Von Anfang an wurde Linux als Mehrbenutzer-Betriebssystem entwickelt. Jeder Benutzer muss sich mit Benutzernamen und Passwort an das System anmelden. Jeder User hat seine individuell gestaltbare Arbeitsumgebung. Er hat ein Heimatverzeichnis zum Ablegen seiner Daten. Darüber gibt es nur „root“ den Superuser. Unter Linux können sich mehrere Benutzer gleichzeitig an das System anmelden. Prozesse werden unabhängig von anderen angemeldeten Usern ausgeführt. Windows hat diese Funktionen erst ab Win2000 implementiert. Virtuelle Desktops, Terminals Unter KDE stehen mehrere virtuelle Desktops zur Verfügung. Auf jedem Desktop können unterschiedliche Fenster und Programme geöffnet werden. Über die Tasten + + bis + + können die unterschiedlichen Terminals geöffnet werden. Das Dateisystem Unter Windows werden je nach Betriebssystem FAT16, FAT32 und NTFS verwendet. Linux verwendet andere Dateisysteme. EXT2, EXT3, ReiserFS, XFS und JFS sind solche. Die Windows Dateisysteme werden aber auch unter Linux verwendet. Es ist daher in Linux möglich, die gespeicherten Windows Daten zu lesen und zu verändern. Case Sensitive Linux ist Case Sensitvie. Das System unterscheidet zwischen Großschreibung und Kleinschreibung. Die Datei test.txt entspricht nicht der Datei Test.txt. Konfiguration Die Konfiguration des Systems erfolgt über Textdateien. Zusätzlich stehen auch grafische Dialoge zur Verfügung. Laufwerksbuchstaben Unter Linux gibt es keine Laufwerksbuchstaben. Es gibt nur einen Verzeichnisbaum. Der Verzeichnisbaum ist hierarchisch gegliedert. Die Wurzel wird als Rootverzeichnis oder / bezeichnet. Unter diesem Verzeichnis können beliebige Datenträger eingehängt werden. Das Einhängen in den Verzeichnisbaum bezeichnet man als mounten.
  • 12. Der Linux – Schulwebserver 11 2 Planung Wird ein Linux-Server geplant, sollte folgendes berücksichtigt werden. Ausgangspunkt der Planung sollte eine Bestandsaufnahme (IST-Zustandands-Analyse) sein. Gefolgt von einer Bedarfsanalyse und einer Prognose. Zusätzlich sollten in die Überlegungen auf jeden Fall ein grobe Kostenabschätzung einfließen. Einfließen sollten dabei die Material- und Anschaffungskosten, der Zeitaufwand der Installation, die Einweisung und Schulung der User und der Aufwand für Wartung und Pflege. Neben den technischen Voraussetzungen sollte aber auf keinen Fall die Organisation des IT- Bereiches ausgeklammert werden. Eine gute Übersicht bietet dazu die Homepage der ETHZ26. Die Broschüre „Wartung von Informatikmitteln an allgemeinbildenden Schulen27“ ist ein guter Ausgangspunkt diesbezüglich. 2.1 Hardwarevoraussetzung Tabelle 1: Hardwarevoraussetzungen CPU RAM Festplattenplatz Minimum 133 MHZ für x86 64 2 GB und darunter ohne grafische Unterstützung Empfohlen 1 GHZ für x86 1 GB Ab 20 GB je nach Auslastung der Lern Management Systems 2.2 Die Serverkonfiguration In diesem Buch wird das klassische LAMP System beschrieben. Für das System wird der Apache Webserver, die Skript-Sprache PHP und der Datenbankserver MySQL benötigt. Zusätzlich wird das Fernwartungstool Webmin und die SuSEFirewall eingerichtet. 26 http://www.educeth.ch/ 27 http://www.educeth.ch/informatik/berichte/wartung/index.html
  • 13. Der Linux – Schulwebserver 12 2.3 Netzwerkszenarien Je nach Netzwerkstruktur kann der Linux-Server an unterschiedlichen Positionen eingebunden werden. Abbildung 5: Intranetserver Abbildung 6: Schulserver-Server in der DMZ Abbildung 7: Schul-Server als Router
  • 14. Der Linux – Schulwebserver 13 3 TCP/IP Der TCP/IP Stack ist eine Familie von Netzwerkprotokollen. Dieser Protokoll-Stack ist die Basis des Internets. Jeder Host, der dieses Protokoll interpretieren kann, kann am Internet teilnehmen. Finanziert wurde die Entwicklung vom DoD28 des US-Verteidigungsministeriums. Die Agentur DARPA29 hat das Projekt geleitet. TCP/IP Protokolle werden in den RFC30-Dokumenten diskutiert und standardisiert. Ebenso werden alle weiteren, das Internet betreffende, Implementierungen in den RFCs erörtert, diskutiert und ggf. standardisiert. RFCs haben dabei den Status erforderlich (required), empfohlen (recommended) oder optional (elective). Andere RFCs können auch als experimentell (experimental) oder historisch (historic) bezeichnet werden. 1983 wurde im Arpanet das Internet entwicklet. Das NCP (Network Core Protocol) wurde überarbeitet und als TCP/IP standardisiert. Dieses Protokoll ist bis heute der Standard im Internet. Das TCP/IP Modell ist eine Umsetzung des OSI-Referenzmodell31. Eine erste Vergrößerung des Internets über die DARPA Grenzen hinaus erfolgte durch die Einbindung von Universitäten. Ab nun wurde das Netz auch zum Informationsaustausch von Lehrenden und Studierenden verwendet. Einer der ersten Dienste in diesem Feld war E- Mail. Der Boom des Internets in den neunziger Jahren ist auf die Entwicklung der Seitenbeschreibungssprache HTML und der ersten Webbrowser zurück zu führen. Erst mit den ersten Browsern erleichterte sich die Bedienung. Zurzeit ist die IP Version 4 (IPv4) aktuell. Durch die steigende Teilnehmerzahl von Hosts im Internet stößt diese Version aber an seine Grenzen. Die IP Version 6 (IPv6) steht bereit, um dieses Problem zu lösen. 3.1 TCP/IP-Referenzmodell Das TCP/IP-Referenzmodell wird in einzelne, unabhängige Schichten unterteilt. Jede Schicht ist eine funktionale Ebene mit eigener Kommunikationsaufgabe. Der TCP/IP Protokoll Stack besteht aus vier aufeinander aufbauenden Schichten. Die Internet-Protokolle bilden sich im TCP/IP-Referenzmodell ab. Es wird der Datenaustausch über die Grenzen lokaler 28 Department of Defense 29 Die Defense Advanced Research Projects Agency (DARPA) ist die Agentur des Pentagons, die Hightech-Projekte für das US-Militär durchführt. 30 Requests for Comments sind technische und organisatorische Internet-Dokumente. 31 Open System Interconnection Modell
  • 15. Der Linux – Schulwebserver 14 Netzwerke hinaus ermöglicht. Es wird weder der Zugriff auf ein Übertragungsmedium noch die Datenübertragungstechnik definiert. Die Protokolle sind dafür zuständig, dass die Datenpakete über mehrere Punkte (Hops) weitergeleitet werden. Tabelle 2: TCP/IP-Referenzmodell TCP/IP-Schicht OSI-Schicht Beispiel Anwendungsschicht 5-7 HTTP, POP3, IMAP, FTP Transportschicht 4 TCP Netzwerkschicht 3 IPv4,IPv6 Netzzugangsschicht 1-2 Jede einzelne Schicht erfüllt folgende Funktionen: Anwendungsschicht Die Anwendungsschicht umfasst alle Protokolle, die mit Anwendungsprogrammen zusammenarbeiten und die Netzwerkinfrastruktur für den Austausch anwendungsspezifischer Daten nutzen. Transportschicht Die Transportschicht stellt eine Ende-zu-Ende Verbindung her. Das wichtigste Protokoll dieser Schicht ist das Transmission Control Protocol (TCP), das Verbindungen zwischen jeweils zwei Netzwerkteilnehmern zum gesicherten Versenden von Datenströmen herstellt. Netzwerkschicht Die Netzwerk- oder Internetschicht ist für die Weitervermittlung von Paketen und die Wegewahl (Routing) zuständig. Auf dieser Schicht und den darunterliegenden Schichten werden Punkt-zu-Punkt-Verbindungen betrachtet. Die Aufgabe dieser Schicht ist es, zu einem empfangenen Paket das nächste Zwischenziel zu ermitteln und das Paket dorthin weiterzuleiten. Kern dieser Schicht ist das Internet Protocol (IP), das einen unzuverlässigen, verbindungslosen Paketauslieferungsdienst bereitstellt.
  • 16. Der Linux – Schulwebserver 15 Netzzugangsschicht Die Netzzugangsschicht ist im TCP/IP-Referenzmodell spezifiziert, enthält jedoch keine Protokolle der TCP/IP-Familie. Sie ist vielmehr als Platzhalter für verschiedene Techniken zur Datenübertragung von Punkt zu Punkt zu verstehen. Die Internet-Protokolle wurden mit dem Ziel entwickelt, verschiedene Subnetze zusammenzuschließen. Daher kann die Host- an-Netz-Schicht durch Protokolle wie Ethernet, Token Ring oder FDDI ausgefüllt werden. Protokolle der Anwendungsschicht • HTTP - Hypertext Transfer Protocol (Port 80) • FTP - File Transfer Protocol (Port 21, 20, >1024) • SSH - Secure Shell (Port 22) • SMTP - Simple Mail Transfer Protocol (Port 25) • POP3 - Post Office Protocol (Version 3) - E-Mail-Abruf (Port 110) • IMAP - Internet Message Access Protocol (Port 143) • Telnet - Login auf entfernten Rechnern (remote terminal) (Port 23) • DNS (Domain Name System) - Umsetzung zwischen Domainnamen und IP-Adressen (Port 53) • SNMP - Simple Network Management Protocol - Verwaltung von Geräten im Netzwerk (Port 161) • RIP (Routing Information Protocol) - Informationsaustausch zwischen Routern! (Distanzvektor) (Port 520) Protokolle der Transportschicht • TCP (Transmission Control Protocol) - Datenstrom-Übertragung (verbindungsorientiert, zuverlässig) • UDP (User Datagram Protocol) - Datenpaket-Übertragung (verbindungslos, unzuverlässig) Protokolle der Netzwerkschicht
  • 17. Der Linux – Schulwebserver 16 • IP (Internet Protocol) - Datenpaket-Übertragung (verbindungslos, unzuverlässig) • ICMP (Internet Control Message Protocol) - Kontrollnachrichten (z.B. Fehlermeldungen), Teil jeder IP-Implementierung • OSPF (Open Shortest Path First) - Informationsaustausch zwischen Routern (Linkzustand) • BGP (Border Gateway Protocol) - Informationsaustausch zwischen autonomen Systemen im Internet (Pfadvektor) • ARP (Address Resolution Protocol) - Adressumsetzung zwischen IP- und Geräteadressen • RARP (Reverse Address Resolution Protocol) - Gegenstück zu ARP Protokolle der Netzzugangsschicht (sind keinBestandteil von TCP/IP) • Ethernet - Netzwerkstandard IEEE 802.3 • TokenBus - Netzwerkstandard IEEE 802.4 • Token Ring - Netzwerkstandard IEEE 802.5 • FDDI - Fiber Distributed Data Interface • WLAN - Netzwerkstandard IEEE 802.11 • PPP - Point-to-Point Protokoll, IEEE 1394 3.2 IP Adressierung Die IP-Adresse erlaubt die Adressierung im Internet. Jeder Host besitzt dabei mindestens eine eindeutige IP-Adresse pro Netzwerkschnittstelle. IP-Adressen in IPv4 erscheinen als Folgen von vier Zahlen, die durch Punkte getrennt sind. Die Adressen bestehen aus 32 Bits (4 Bytes). Es sind daher maximal 232 Adressen möglich. Jede IP-Adresse unterteilt sich in Netzteil und Hostteil. Die Aufteilung wird durch die Netzmaske bestimmt. Die Netmaske ist eine 32 Bitmaske. Für den Netzteil der IP-Adresse werden alle Bits der Netzmaske auf 1 gesetzt. Für alle Bits des Hostanteils wird 0 gesetzt.
  • 18. Der Linux – Schulwebserver 17 Für alle Host in einem Netzwerk, müssen der Netzwerkteil und die Netzmaske gleich sein. Jede Netzwerkschnittstelle muss einen unterschiedlichen Hostteil haben. Die erste Adresse des Netzwerkes darf nicht vergeben werden. Diese Adresse bezeichnet das Netzwerk selbst. Die höchste Geräteadresse wird für den Broadcast32 verwendet. Tabelle 3: IP-Adresse IP-Adresse 192 168 0 7 11000000 10101000 00000000 00000111 Netzwerkanteil Hostanteil Netzmaske 255 255 255 0 11111111 11111111 11111111 00000000 Netzwerk 192 168 0 0 11000000 10101000 00000000 00000000 Broadcast 192 168 0 255 11000000 10101000 00000000 11111111 Eine Netzmaske wird in entweder dezimal oder in CIDR-Schreibweise33 notiert. So lautet die Netzmaske für einen 8 Bit Netzwerkteil 255.255.255.0 oder auch /8, ein 16 Bit Netzwerkteil 255.255.0.0 oder auch /16. Das Auslesen der IP-Adresse erfolgt in Linux mit dem Befehl ifconfig. /# ifconfig 32 Ein Broadcast in einem Computernetzwerk stellt einen Rundruf dar, wobei Datenpakete von einem Punkt aus gleichzeitig an alle Teilnehmer eines Netzes übertragen werden. 33 Classless Inter-Domain Routing
  • 19. Der Linux – Schulwebserver 18 Abbildung 8: ifconfig 3.3 Routing Wird ein IP-Paket versendet, werden die Netzteile der Quelladresse und der Zieladresse verglichen. Stimmen sie überein, wird das Paket direkt an den Zielhost geliefert. Stimmt der Netzteil nicht überein, wird in der Routingtabelle eine IP-Adresse für den weiterleitenden Host gesucht. Ein solcher Host (Router) hat mehrere Netzwerkschnittstellen und verbindet unterschiedliche Netzwerksegmente miteinander. Der Router sendet das Paket an einen weiteren Router oder an das Ziel. Bis zum Ziel kann das IP-Paket viele Netzwerke und Router durchlaufen. Dieser Vorgang wird als Hop bezeichnet. Die Route kann mit dem Befehl traceroute34 ausgelesen werden. /# traceroute ZIEL 34 Windows: tracert ZIEL
  • 20. Der Linux – Schulwebserver 19 Abbildung 9: traceroute Das Netzwerk 127.0.0.0/8 bezeichnet man als loopback. Es bezieht sich auf den lokalen Computer. Mit der IP-Adresse 127.0.0.1 wird der lokale Rechner adressiert. Diese Adresse dient der Kommunikation lokaler Clients mit dem lokalen Server. So wird am Rechner mit dem URL http://127.0.0.1/ immer der lokale Webserver erreicht. Die Adresse 255.255.255.255 kann als Broadcast in allen Netzen verwendet werden. Diese Adresse wird für BOOTP35 und DHCP36 verwendet. 3.4 Netzklassen In IPv4 werden drei Netzklassen unterschieden. 35 Das Bootstrap Protocol (BOOTP) dient dazu, einem Computer in einem TCP/IP-Netzwerk eine IP- Adresse und eine Reihe weiterer Parameter zuzuweisen. 36 Das DHCP (Dynamic Host Configuration Protocol) ermöglicht mit Hilfe eines entsprechenden Servers die dynamische Zuweisung einer IP-Adresse
  • 21. Der Linux – Schulwebserver 20 Tabelle 4: Netzklassen Netzklasse Adressbereich Netzmaske CIDR-Schreibweise Klasse A 0.0.0.0 bis 255.0.0.0 0.0.0.0/8 127.255.255.255 Klasse B 128.0.0.0 bis 255.255.0.0 128.0.0.0/16 191.255.255.255 Klasse C 192.0.0.0 bis 255.255.255.0 192.0.0.0/24 223.255.255.255 Zusätzlich wird zwischen öffentlichen und privaten IP-Adressen unterschieden. Private IP- Adressen können von jedem verwendet werden. Diese Adressen werden im Internet nicht geroutet. Private IP-Adressen werden verwendet, weil es zu wenig öffentliche IP-Adressen gibt, oder man Netzwerk-Strukturen verstecken möchte. Tabelle 5: Private IP-Adressen Netzklasse Adressbereich CIDR- Anzahl der möglichen Schreibweise Hosts Klasse A 10.0.0.0 - 10.255.255.255 10.0.0.0/8 16777216 Klasse B 172.16.0.0 - 172.31.255.255 172.16.0.0/12 1048576 Klasse C 192.168.0.0 - 192.168.0.0/16 65536 192.168.255.255 Der Zugriff auf das Internet, muss für diese IP-Adressen über NAT37 oder PAT38 erfolgen. 37 NAT (Network Address Translation) ist in Computernetzwerken ein Verfahren, bei dem private IP- Adressen auf öffentliche IP-Adressen abgebildet werden. 38 Masquerading oder PAT ist eine spezielle Form von NAT, bei der nicht nur IP-Adressen, sondern auch Port-Nummern umgeschrieben werden
  • 22. Der Linux – Schulwebserver 21 3.5 DNS Mit den Domain Name System können Namen in IP-Adressen umgesetzt werden. Ein weit verbreiteter Server unter Linux ist bind. Zum Testen der DNS Einstellungen wird der Befehl nslookup verwendet. /# nslookup HOST Abbildung 10: nslookup Wer für welchen Domain zuständig ist kann über http://www.nic.com ausgelesen werden.
  • 23. Der Linux – Schulwebserver 22 4 Grundinstallation SuSE Linux 9.2 kann unterschiedlich installiert werden. Je nach Installationsmedium variiert der Installationsvorgang ein wenig. Installationsmedien sind CD, DVD, Floppy-Disk oder direkt über das Internet per FTP39, HTTP40, NFS41 oder SMB42. In diesem Beispiel wird nur die Installation per CD bzw. DVD beschrieben. 4.1 Grundeinstellungen Die Distribution SuSE Linux 9.2 wird als Boot-DVD und Boot-CD ausgeliefert. Für die Installation wird ein BIOS mit CD-Boot Funktion benötigt. In der Bootreihenfolge muss das DVD- oder CD-Laufwerk vor die Harddisk gereiht werden. Nach dem Einschalten des Computers wird vom Quellmedium gebootet. Der Begrüßungsbildschirm erscheint. Nach einigen Sekunden erscheint ein Auswahlmenü für die Installation. Achtung, es stehen nur die Cursor-Tasten zur Verfügung. Für die Installation stehen vier vorkonfigurierte Möglichkeiten zur Auswahl. Für aktuelle Hardware reicht die Variante Installation. Die Option Installation - ACPI Disabled wählen Sie dann an, wenn der verwendete Rechner kein ACPI43 unterstützt. Die Installation - Safe Settings deaktiviert sowohl DMA als auch alle eventuell problematischen Power-Management-Funktionen. Bei problematischer Hardware kann auch die „manuelle Installation“ verwendet werden. Achtung in diesem Modus funktioniert keine USB44 Unterstützung. Bei dieser Installation wird zusätzlich der Text-Modus über die Taste gewählt, die Unterstützung der Maus ist deaktiviert. Mit wird die Sprache Deutsch ausgewählt. Durch Bestätigen mit wird die Installation gestartet. 39 File Transfer Protocol 40 Hypertext Transfer Protocol 41 Network File System 42 Server Message Block 43 Das Advanced Configuration and Power Interface (ACPI) ist ein offener Industriestandard für Energieverwaltung in Desktop-Computern, Notebooks und Servern. 44 Universal Serial Bus
  • 24. Der Linux – Schulwebserver 23 Abbildung 11: Installations-Modi Die Option Rescue System wird zum Reparieren von beschädigten Systemen benötigt. Der Memory Test erkennt fehlerhafte RAM-Module. Ein minimales Linux-System wird in den Hauptspeicher geladen. Ab nun erfolgt die Installation mit der Textvariante von YaST2. Die Sprache der Installation wird mit + bestätigt. Abbildung 12: Sprachauswahl
  • 25. Der Linux – Schulwebserver 24 Abbildung 13: Installationseinstellungen In den Installationseinstellungen werden Modus, die Tastaturbelegung und die Maus konfiguriert. Es können meist die Vorschläge übernommen werden. Linux benötigt mindestens zwei Partitionen, die Root-Partition für Daten und Programme und die zweite Partition Swap für die Auslagerungsdatei. Für eine Testinstallation kann die Vorgabe übernommen werden. Ist auch eine Windows-Installation auf der Festplatte, wird von YaST automatisch diese Partition verkleinert um für Linux Platz zu schaffen. 4.2 Softwareauswahl Über die Tastenkombination + werden zusätzliche Installationseinstellungen aufgerufen. Abbildung 14: Menü Installationseinstellungen
  • 26. Der Linux – Schulwebserver 25 Nach Software können in der Erweiterten Softwareauswahl + zusätzliche Pakete gewählt werden. + öffnet den Filter. Hier kann gesucht werden. Nützlich ist ein zusätzlicher Browser wie zum Beispiel Firefox45. Abbildung 15: Software-Filter Abbildung 16: Software-Suche Die Auswahl wird mit + bestätigt und mit + übernommen. Zusätzlich benötigte Pakete werden automatisch vorgeschlagen. 45 http://www.mozilla.org/products/firefox/
  • 27. Der Linux – Schulwebserver 26 Abbildung 17: Automatisches Auflösen der Abhängigkeiten Es sollte zusätzlich die Zeitzone, Europa-Österreich und die Sprache Deutsch kontrolliert werden. Abbildung 18: Zeitzone Europa Österreich + bestätigt die Einstellungen. Wird Software mit zusätzlichen Lizenzen installiert, müssen diese bestätigt werden + .
  • 28. Der Linux – Schulwebserver 27 Abbildung 19: Beginn der Installation Nach der Formatierung und Partitionierung werden die einzelnen Pakete eingespielt. Abbildung 20: Paketinstallation
  • 29. Der Linux – Schulwebserver 28 Abbildung 21: Abschluss der Installation Nach dem Abschluss der Installation erfolgt ein Reboot. Anschließend muss das root46 Passwort gesetzt werden. Abbildung 22: Root-Passwort Nur der Superuser kann Programme einspielen, Hardware konfigurieren und User anlegen. Wird das root-Passwort vergessen, kann das System nur mit großem Aufwand wiederhergestellt werden. Erlangt ein Angreifer des Systems root-Rechte, erlangt dieser uneingeschränkte Rechte. Aus Gründen der Sicherheit sollte für die tägliche Arbeit nur mit einem Benutzer-Konto eingeloggt 46 Linux Superuser
  • 30. Der Linux – Schulwebserver 29 werden. Werden trotzdem Superuser-Rechte benötigt, können diese Arbeiten mit su47 durchgeführt werden. /# su Nach der Bestätigung des Passwortes + erfolgt die Netzwerkkonfiguration. 4.3 Netzwerkkonfiguration Ist im Netzwerk ein DHCP48- Server im Netzwerk vorhanden, erfolgt die Konfiguration der Netzwerkkarte automatisch. Die händische Konfiguration der Netzwerkkarte erfolgt im Kaptitel 5.2 Konfiguration der Netzwerkkarte. Abbildung 23: Netzwerkkonfiguration Zusätzlich wird hier die SuSE-Firewall aktiviert. Über die Tastenkombination + werden die Einstellungen übernommen. 47 switch user 48 Dynamic Host Configuration Protocol
  • 31. Der Linux – Schulwebserver 30 Abbildung 24: YOU – YaST Online Update Anschließend bietet YaST den Test der Internetverbindung an. Bei diesem Test wird zusätzlich nach aktuellen Updates gesucht. Diese können direkt eingespielt werden. Abbildung 25: Verfügbare Updates Zum Abschluss der Netzwerkkonfiguration muss die Authentifizierungsmethode gewählt werden. In der Regel wird die Variante Einzelplatzrechner gewählt.
  • 32. Der Linux – Schulwebserver 31 Abbildung 26: Authentifikationsmethode Als Client kann das Linux-System auch an LDAP49, NIS50 oder SAMBA51 Server authentifiziert werden. Abbildung 27: Lokale User hinzufügen Nach der Bestätigung mit + muss ein lokales Benutzerkonto angelegt werden. Dieses wird wie immer bestätigt. Die Release Notes sollten gelesen und anschließend bestätigt werden. 49 Lightweight Directory Access Protocol 50 Network Information Service 51 Samba ist eine freie Software-Suite, die das Server Message Block - Protokoll (SMB) für Unix- Systeme verfügbar macht. (http://de.wikipedia.org/wiki/Samba_(Software), 01.02.2005)
  • 33. Der Linux – Schulwebserver 32 4.4 Grafikkonfiguration Über + können Grafikkarte, Drucker, Soundkarte, TV-Karte und Bluetooth konfiguriert werden. Wird die Grafikkarte gewählt, startet SaX252. Abbildung 28: Grafikkarte In SaX2 wird der Monitor, die Grafikkarte und die Auflösung eingestellt. 52 Simple API for XML
  • 34. Der Linux – Schulwebserver 33 Abbildung 29: Sax2 Der größte Teil der Konfiguration erfolgt automatisch, es kann aber auch händisch nachgebessert werden.
  • 35. Der Linux – Schulwebserver 34 Abbildung 30: Bildschirmauflösung Nach dem Abschluss der Konfiguration erfolgt der Test der aktuellen Einstellungen. Die Einstellungen müssen gespeichert werden. Abbildung 31: Test des grafischen Systems
  • 36. Der Linux – Schulwebserver 35 Die Konfiguration wird von YaST2 geschrieben. Soundkarte und TV-Karten erkennt YaST2 automatisch. Damit ist die Installation und Konfiguration von SuSE 9.2 abgeschlossen. Abbildung 32: Abschluss der Installation Das System wechselt nun in den Runlevel53 5 und loggt sich automatisch in KDE54 ein. 4.5 FTP – Installation Auch die FTP – Installation erfolgt von einer Boot-CD55. Nach dem Start erscheint der gewohnte Bildschirm. 53 Betriebssysteme werden als Runlevels bezeichnet. 54 K Desktop Environment, ursprünglich Kool Desktop Environment 55 ftp://ftp.suse.com/pub/suse/i386/9.3/iso/SUSE-Linux-9.3-mini-installation.iso
  • 37. Der Linux – Schulwebserver 36 Abbildung 33: FTP – Installation Die Sprache wird mit gewählt. Der Modus Installation wird bestätigt. Abbildung 34: Keine Installationsquelle Die Fehlermeldung, keine Installations-Quelle wird übernommen.
  • 38. Der Linux – Schulwebserver 37 Abbildung 35: Linuxrc Der Installationsmanager Linuxrc startet. Die Tastaturbelegung Deutsch wird aktualisiert. Abbildung 36: Linuxrc Hauptmenü Im Hauptmenü von Linuxrc wird Installation / System starten gewählt.
  • 39. Der Linux – Schulwebserver 38 Abbildung 37: Linuxrc - Installation Abbildung 38: Linuxrc Quellmedium Als Quellmedium wird Netzwerk ausgewählt.
  • 40. Der Linux – Schulwebserver 39 Abbildung 39: Linuxrc – Netzwerkprotokoll Es empfiehlt sich das FTP – Protokoll zu verwenden. Abbildung 40: Linuxrc - DHCP aktivieren Ist im Netzwerk ein DHCP – Server aktiv, kann dieser verwendet werden. Ohne DHCP – Server, müssen IP-Adresse, Netzmaske und Gateway händisch vergeben werden,
  • 41. Der Linux – Schulwebserver 40 Abbildung 41: Linuxrc - FTP Server Die möglichen FTP – Server56 sind auf der SuSE Homepage eingetragen. Für die Installation wird die IP-Adresse des Servers benötigt. Durch Ping auf den Hostnamen kann die Adresse ausgelesen werden. Zum Beispiel: / # ping ftp.uni-kl.de PING ftp.uni-kl.de (131.246.120.27) 56(84) bytes of data. 64 bytes from 131.246.120.27: icmp_seq=1 ttl=64 time=… 56 http://www.novell.com/products/linuxprofessional/downloads/ftp/int_mirrors.html
  • 42. Der Linux – Schulwebserver 41 Abbildung 42: Linuxrc - Anonymous FTP Meist wird Anonymous FTP akzeptiert. Abbildung 43: Linuxrc - HTTP Proxy Wird im Netzwerk ein Proxy-Server verwendet muss dieser bekannt gegeben werden.
  • 43. Der Linux – Schulwebserver 42 Abbildung 44: Linuxrc – Verzeichnis Das Installationsverzeichnis wird angegeben. Dieses kann je nach Server variieren Das Bereitstellen der FTP- Installation einer neuen SuSE – Linux Version erfolgt erst einen gewissen Zeitraum nach dem Verkaufsstart. Die weitere Installation entspricht der Grundinstallation (vgl. 4.1 Grundeinstellungen)
  • 44. Der Linux – Schulwebserver 43 5 Basiskonfiguration 5.1 Usermanagement In YaST können User angelegt, verändert oder gelöscht werden. Nach dem Start von YaST kann über Sicherheit und Benutzer und Benutzer bearbeiten und anlegen der Usermanager gestartet werden. Abbildung 45: User anlegen
  • 45. Der Linux – Schulwebserver 44 Abbildung 46: Usermanager Mit Bearbeiten und Löschen können angelegte User verändert oder gelöscht werden. Erst mit Beenden werden die Einstellungen geschrieben. 5.2 Konfiguration der Netzwerkkarte Es empfiehlt sich für einen Server die IP-Adresse fix einzutragen. Wie gewohnt wird YaST gestartet. In Netzwerkgeräten kann die Netzwerkeinstellung über Netzwerkkarte abgeändert werden. Das bereits konfigurierte Gerät muss mit Ändern konfiguriert werden. Im Überblick der Geräte muss das entsprechende Gerät markiert werden. Über Bearbeiten können die Einstellungen eingetragen werden.
  • 46. Der Linux – Schulwebserver 45 Abbildung 47: IP-Adresse vergeben Auch der Rechnername und der Nameserver sollten manuell eingetragen werden.
  • 47. Der Linux – Schulwebserver 46 Abbildung 48: Rechnername und Nameserver Abschließend muss im Routing der Gateway eingestellt werden. Das Schreiben der Konfiguration erfolgt mit Weiter und Beenden. Nach der Konfiguration müssen die Einstellungen mit ping getestet werden.
  • 48. Der Linux – Schulwebserver 47 / # ping 192.168.100.254 PING 192.168.100.254 (192.168.100.254) 56(84) bytes of data. 64 bytes from 192.168.100.254: icmp_seq=1 ttl=64 time=… Der Befehl ping wird mit + unterbrochen. 5.3 Update Wie jedes moderne Betriebssystem verfügt auch SuSE Linux über eine automatische Updatefunktion. Die Konfiguration erfolgt wie gewohnt über YaST. Im Bereich Software wird der Online Update gestartet. Abbildung 49: Online Update Über Vollautomatisches Update konfigurieren… kann die Update-Zeit eingestellt werden. Im Drop-Down-Menü Installationsquelle wird ein nahe liegender Update-Server gewählt.
  • 49. Der Linux – Schulwebserver 48 Abbildung 50: Online-Update konfigurieren Nach dem Bestätigen mit OK und Weiter werden die Update-Informationen gelesen und vorgeschlagen. Um ein aktuelles System zu betreiben, sollten alle Patches57 eingespielt werden. 57 Ein Patch (von englisch Flicken) ist eine Korrektur für Software oder Daten.
  • 50. Der Linux – Schulwebserver 49 Abbildung 51: Patchauswahl 5.4 Softwareinstallation Die Installation der Software erfolgt mit YaST. Mit Software und Software installieren und löschen können weitere Pakte eingespielt werden. Über Suchen können einzelne Pakte ausgewählt werden.
  • 51. Der Linux – Schulwebserver 50 Abbildung 52: Softwareinstallation Nach dem Aktiveren des Paketes wird mit Übernehmen der Vorgang bestätigt. Die automatische Auflösung sucht sich notwendige Zusatzpakete und spielt diese ein. 5.5 Zeitsynchronisation Das XNTP Protokoll bietet eine automatische Zeitsynchronisation mit Timeservern an. Die Konfiguration erfolgt über YaST. Über Netzwerkdienste und NTP-Client wird die Konfiguration gestartet.
  • 52. Der Linux – Schulwebserver 51 Abbildung 53: NTP-Server Nach der Auswahl eines Öffentlichen NTP-Server müssen die Startoptionen eingestellt werden.
  • 53. Der Linux – Schulwebserver 52 Abbildung 54: Konfiguration des NTP-Server
  • 54. Der Linux – Schulwebserver 53 6 Die Shell Neben der grafischen Oberfläche ist ein wichtiges Element die Shell. Dies kann in der grafischen Oberfläche über ein Terminal geöffnet werden. Über die Tastenkombination χ+α+φ kann auf den Terminal tty1 gewechselt werden. Mit α+γ bis α+κ können weiter Terminal (tty2 bis tty6) aufgerufen werden. Die grafische Oberfläche wird mit α+µ wieder erreicht. Auf jeder Konsole muss wieder angemeldet werden. Achtung: Bei der Eingabe des Passworts werden keine Zeichen angezeigt. Abbildung 55: Konsole
  • 55. Der Linux – Schulwebserver 54 Abbildung 56: Terminal Nach der Anmeldung erscheint ein Prompt für die Befehlseingabe. user@host:ordner Der Prompt zeigt den aktuellen Benutzer, den Rechnername und den aktuellen Ordner. Die Linux Befehle sind komplex aber leistungsfähig. Die Wartung des Betriebssystems ist über den Terminal einfacher und schneller als über die grafische Oberfläche. Ein weiterer Vorteil ist die einfache Fernwartung über die Shell. Im Folgenden werden die wichtigsten Linux-Shell-Befehle gezeugt. /# date ρ Mit date wird die aktuelle Systemzeit ausgegeben. Jede Eingabe muss auf der Shell mit Enter (Return) bestätigt werden. /# dmesg Dieser Befehl gibt die Kernelmeldung aus. Ist die Ausgabe zu lange, kann mit σ+[Bild rauf] oder σ+[Bild runter] gescrollt werden. Die meisten Programme werden mit χ+Χ abgebrochen.
  • 56. Der Linux – Schulwebserver 55 Mit χ+Λ wird der Bildschirm neu aufgebaut. Die Tasten beziehungsweise scrollen in der Befehls-History. Das Abmelden von der Konsole erfolgt mit exit. Alternativ kann + verwendet werden. Nach dem Abmelden wird wieder der Begrüßungs-Bildschirm gezeigt. /# exit Ist man als User im System angemeldet, kann man mit su Administratorrechte erhalten. Der Befehl verlangt das Passwort des Administrators. Viele Linux-Befehle kann nur der Administrator auszuführen. /# su Der Neustart wird mit reboot oder + + durchgeführt. /# reboot Beendet wird das System mit halt oder shutdown now. /# halt Die große Menge an Dateien wird in Linux durch ein Ordnersystem geregelt. Die Ordner sind streng hierarchisch. Das Hauptverzeichnis wird mit einem Slash / gekennzeichnet. Die Bezeichnungen der Unterordner werden mit Slash getrennt. Zum Beispiel: /srv/www/# Das aktuelle Verzeichnis wird mit pwd (print working directory) angezeigt. /srv/www/# pwd Der Inhalt eines Ordners mit ls (list directory content) wiedergegeben. /srv/www/# ls Mit dem Befehl cd (change direcotry) kann das Verzeichnis gewechselt werden. /# cd /etc /etc#
  • 57. Der Linux – Schulwebserver 56 Mit cd und dem Verzeichnisnamen wird in das entsprechende Verzeichnis gewechselt. Mit cd .. wird in ein höheres Verzeichnis gewechselt, cd / wechselt in das Wurzelverzeichnis und cd ~ in das Heimat-Verzeichnis des Users. /etc# cd .. /# cd /etc /etc# cd / /# cd ~ /~# Die Tabulatortaste aktiviert die automatische Vervollständigung von Befehlen. /# cd /e /# cd /etc Gibt es mehrer Möglichkeiten ertönt ein Piepton. Durch wiederholtes Drücken der - Taste werden alle Möglichkeiten angezeigt. 6.1 Verzeichnisse Die Verzeichnisstruktur in Linux ist vorgegeben. Es kann aber Abweichungen je nach Distribution geben. / Das Wurzelverzeichnis oder auch Rootverzeichnis genannt. In diesem Verzeichnis sollten nur Ordner vorhanden sein. /bin Im Ordner sind Binaries gespeichert. Binaries sind ausführbare Programme. Die oben genannten Befehle date, reboot sind zum Beispiel hier abgelegt. /boot Dieses Verzeichnis beinhaltet den Linux Bootmanager und den Linuxkern. /dev Die Abkürzung dev steht für Devices. Hier werden alle Schnittstellen der Peripherie gespeichert.
  • 58. Der Linux – Schulwebserver 57 /etc Dieser Ordner ist der Konfigurationsordner. Die Konfigurationsdateien sind unter Linux reine ASCII-Dateien58. Sie können mit jedem beliebigen Editor verändert werden. /home Jeder User erhält sein Homeverzeichnis. Dieses Verzeichnis wird mit dem Username im Ordner /home angelegt. Das Homeverzeichnis des Users tester heißt /home/tester. /lib Der Libraries-Ordner enthält alle Bibliotheken des Systems. /media In Linux gibt es keine Laufwerksbezeichnungen. Möchte man auf CD-Roms oder Disketten zugreifen, müssen diese zuerst in den Verzeichnisbaum eingebunden werden. Diesen Vorgang nennt man mounten. Nach dem Einhängen stehen diese Laufwerke im Ordner /media zur Verfügung. /mnt In diesem Laufwerk werden USB-Sticks eingebunden. /opt Der Ordner /opt enthält optionale Zusatzprogramme wie Mozilla, Gnome und KDE. /proc Hier werden vom Betriebssystem Informationen über Hardware und Prozesse abgelegt. /root Das ist das Homeverzeichnis des Administrators. /sbin Im Ordner /sbin befinden sich ausführbare Programme. Sie dienen zur Systempflege und sind nur für den Administrator verfügbar. /srv Dieser Ordner ist für Serveranwendungen reserviert. Ist auf den Linux-System ein Webserver installiert, so ist die Homepage in diesem Verzeichnis zu finden. /tmp Dieser Ordner entspricht dem temporären Ordner unter Windows. 58 American Standard Code for Information Interchange
  • 59. Der Linux – Schulwebserver 58 /usr Alle für den User wichtigen Programme liegen in diesem Ordner. /var Linux User haben im Ordner /var Schreibrechte. Wichtige Informationen wie zum Beispiel die Druckerwarteschlange oder die Usermails werden hier gespeichert. 6.2 Dateien In Linux wird alles in Verzeichnissen und Dateien abgebildet. Da das System ein Mehrbenutzer-System ist, gibt es ein einfaches, aber effektives Dateisystem. Alle User des Systems sind in der Datei passwd eingetragen. Die Passwörter stehen verschlüsselt in der Datei shadow. Beide Dateien finden sich im Verzeichnis /etc. Um den Inhalt einerDatei anzuzeigen, wird der Befehl cat Filename verwendet. /# cat /etc/passwd /# cat /etc/shadow Abbildung 57: passwd Die Datei ist zeilenweise aufgebaut. Die Einträge sind durch Doppelpunkt getrennt. Der erste Eintrag zeigt den Usernamen. Der zweite Eintrag bezieht sich auf das Passwort. Ein x
  • 60. Der Linux – Schulwebserver 59 kennzeichnet, dass das Passwort im File shadow liegt. Der dritte Wert ist ein numerischer. Dieser ist die UID59. Der nächste Wert ist der GID60. Im Kommentarfeld können zusätzliche Informationen wie Namen und Adresse eingetragen werden. Die letzten zwei Werte zeigen auf das Homeverzeichnis und auf das Startprogramm. Der Inhalt eines Verzeichnisses wird mit ls angezeigt. /# ls Mit dem Parameter -l wird das lange Format ausgegeben. /# ls –l Abbildung 58: Verzeichnis ausgeben In der ersten Spalte der Ausgabe werden die Dateirechte gesetzt. Der erste Buchstabe zeigt, ob es sich um einen Ordner oder um ein File handelt. d steht hier für Verzeichnis. Die nächsten neun Zeichen stehen für die Zugriffsrechte. Die erste Dreier Kombination beschreibt die Rechte des Besitzers. Die zweite Dreier Kombination beschreibt die Rechte 59 User Identifikation Deskriptor 60 Group Identifikation Deskriptor
  • 61. Der Linux – Schulwebserver 60 der Gruppe, die letzte, die der anderen Benutzer. Leserechte werden mit r, Schreibrechte mit w gekennzeichnet. Ob eine Datei ausführbar ist, zeigt ein gesetztes x. -rwxr-xr-x 1 root root 6825 Oct 2 03:05 zshrc Dieses Beispiel zeigt, dass es sich um ein File handelt (d steht für Verzeichnis, - steht für normale Datei, b oder c für Gerätedateien und l für Link (Verweis) auf eine andere Datei). Der Eigentümer root hat Leserechte, Schreibrechte. Zusätzlich ist die Datei für den Eigentümer ausführbar. Die Gruppe root und alle anderen haben Leserechte und Ausführungsrechte. Die 1 steht für die Anzahl der Links. Der nächste Eintrag zeigt den Eigentümer des Files, gefolgt von der Eigentümergruppe. Die nachfolgende Dateigröße wird in Bit angegeben. Das angegebene Datum zeigt die letzte Modifikation an. Abgeschlossen wird die Zeile mit dem Dateinamen. Mit dem Befehl touch Dateiname kann eine leere Datei angelegt werden. /home/tester # touch test /home/tester # ls –l Um die Filerechte zu ändern, wird chmod Attribut Filename verwendet. Als Attribute können u, g oder o (user, group, other) verwendet werden. Die Rechte werden mit r, w oder x gesetzt. /home/tester # chmod g+w test Diese Zeile setzt Schreibrechte für die Gruppe auf das File test. In Windows werden ausführbare Dateien mit der Dateinamenerweiterung gekennzeichnet. In Linux wird dies mit dem Attribut x gekennzeichnet. /home/tester # chmod u+g test Gelöscht werden Rechte mit einem Minus. /home/tester # chmod o-r test Sollen die Besitzrechte geändert werden, geschieht dies mit chown user:gruppe Filename. /home/tester # chown tester:users test Der Parameter -R bedeutet rekursiv. Verwendet wird diese Option, wenn ein Ordner mit allen Unterordner geändert werden soll. Dieses Attribut steht für chmod und chown zur Verfügung.
  • 62. Der Linux – Schulwebserver 61 Verzeichnisse werden mit mkdir (make directory) angelegt. Mit rmdir (remake directory) werden Ordner wieder gelöscht. Files werden mit dem Befehl rm Filename gelöscht. Im folgenden Beispiel werden die Befehle zusammengefasst. /home/tester # mkdir klassen /home/tester # cd klassen /home/tester/klassen # mkdir 1a /home/tester/klassen # mkdir 1b /home/tester/klassen # mkdir 2a /home/tester/klassen # mkdir 2b /home/tester/klassen # cd 2a /home/tester/klassen/2a # touch beispiele /home/tester/klassen/2a # cd ../.. /home/tester/ # rmdir klassen/1a /home/tester/ # rmdir klassen/1b klassen/2b /home/tester/ # rm –R klassen Hilfe zu jedem Befehl wird mit dem Parameter --help angezeigt. Für jeden Befehl gibt es auch ein Manual. Mit man Befehl wird es angezeigt. /home/tester/ # rmdir --help /home/tester/ # man rmdir Unter Unix gibt es keine Laufwerksbuchstaben wie bei DOS oder Windows. Unter Linux werden Laufwerke in die Verzeichnisstruktur eingebunden. Das Einbinden nennt man mounten. Der Befehl für das Einbinden nennt sich mount. /home/tester/ # mount /dev/cdrom /media/cdrom Die CD wird in den Ordner /media/cdrom eingehängt. Zum Lösen der Einbindung wird umount verwendet. /home/tester/ # umount /media/cdrom Der Befehl df (disk free) zeigt an, wie viel Platz auf einem Laufwerk zur Verfügung steht. /home/tester/ # df Das Kopieren von Dateien erfolgt mit dem Befehl cp (copy). /home/tester/ # cp /etc/passwd ./
  • 63. Der Linux – Schulwebserver 62 Die Datei passwd aus dem Ordner /etc wird in den aktuellen Ordner kopiert. Sollen zusätzlich Verzeichnise kopiert werden, muss der Parameter -r verwendet werden. /home/tester/ # cp –r /etc/apache2 ./apache_sicherung Zusätzlich zum Kopieren wird der Ornder apache2 in apache_sicherung umbenannt. Neben dem Kopieren können Dateien auch verschoben werden. /home/tester/ # mv apache_sicherung /root Der Ordner apache_sicherung wird mit dem Befehl mv (move) in den Ordner /root verschoben. Move kann auch zum Umbenennen von Dateinamen benützt werden. /home/tester/ # mv /root/apache_sicherung /root/apache2_sicherung Mit dem Befehl find und dem Parameter -name lassen sich im System Dateien finden. /home/tester/ # find / –name passwd Das Zeichen / steht für das Startverzeichnis der Suche. Zum Archivieren von Dateien wird der Befehl tar (tape archive) verwendet. Für das Erstellen eines Archivs wird der Parameter c (create) verwendet. /home/tester/ # tar –cf etc.tar /etc Soll das Archiv zusätzlich komprimiert werden, muss der Parameter z angegeben werden. Zusätzliche Information über den Vorgang erhält man mit dem Parameter v (verbose). /home/tester/ # tar –cvzf etc.tgz /etc Zum Extrahieren wird der Parameter x verwendet. /home/tester/ # tar –xvzf etc.tgz
  • 64. Der Linux – Schulwebserver 63 7 Konfiguration einfacher Serverdienste 7.1 Apache-Webserver Benötigte Pakete: apache2 Empfohlenen Pakete: Selektion Einfacher Webserver mit Apache2 Abbildung 59: Apache-Pakete Linux mit dem Webserver Apache61 ist einer der meist verbreiteten Systeme für Webserver. Der Apache-Webserver stellt den HTTP62-Dienst auf Port 80 zur Verfügung, über welches die Seitenbeschreibungssprache HTML63 versendet wird. Der Server beantwortet Anfragen der Form Dienst://host.domäne/ordner/seite und liefert diese dem Client aus. Durch zusätzliche Module kann seine Funktion erweitert werden. Wichtige Module wären mod_php 61 http://httpd.apache.org/ 62 Das Hypertext Transfer Protocol (HTTP) ist ein zustandsloses Datenaustausch-Protokoll zur Übertragung von Daten. 63 Hypertext Markup Language
  • 65. Der Linux – Schulwebserver 64 und mod_ssl. Mit mod_php kann die Skriptsprache php64 implementiert werden, mod_ssl65 sorgt für die Verschlüsselung. Alle Konfigurations-Skripts liegen im Ordner /etc/apache2. Teile der Konfiguration können auch mit YaST erledigt werden. Der Apache-Webserver kann über den YaST-Runlevel-Editor gestartet werden. In YaST muss System und dann Runlevel-Editor gewählt werden. Nach Auswahl von apache2 wird durch Aktivieren der Dienst gestartet. Gibt der folgende Dialog 0 zurück funktioniert nun der Apache-Webserver. Abbildung 60: Apache starten Über den Browser kann direkt der Test des Webservers erfolgen. Über den URL http://localhost meldet sich der Server. Sind keine Webseiten in der Dokument-Root des Webservers, zeigt der Webserver einen Error 40466. Da keine Webseite vorhanden ist, wird eine Error-Seite von Apache angezeigt. Diese Seiten können und sollten auch verändert werden. Alle Error-Seiten befinden sich im Verzeichnis /usr/share/apache2/error/. 64 http://www.php.net/ 65 http://www.openssl.org/ 66 404-Error: Dieser wird angezeigt, wenn eine Webseite nicht vorhanden oder nicht erreichbar ist.
  • 66. Der Linux – Schulwebserver 65 Abbildung 61: Error 403 7.2 vsftp-Server Benötigte Paket: vsftpd, xinetd „Das File Transfer Protocol (engl., "Dateiübertragungsverfahren", kurz FTP) ist ein in RFC 959 spezifiziertes Netzwerkprotokoll zur Dateiübertragung über TCP/IP- Netzwerke. FTP ist in der Anwendungsschicht des TCP/IP Protokollstapels angesiedelt. Es wird benutzt, um Dateien vom Server zum Client (Download), vom Client zum Server (Upload) oder clientgesteuert zwischen zwei Servern zu übertragen.“ (http://de.wikipedia.org/wiki/File_Transfer_Protocol, 07.02.2005) Das FTP-Protokoll verwendet mehrere Ports. Port 21 wird als Control Port bezeichnet. Auf diesem Port wird die Verbindung gesteuert. Die Datenübertragung erfolgt über Port 20 im Active Mode. Im Passive Mode baut der Client eine Verbindung jenseits von Port 1024 auf. Nach dem Einspielen der Pakete mit YaST ist der vsFTP-Server67 als Anonymous-FTP Server konfiguriert. Jeder hat Leserechte, keiner hat Schreibrechte. Soll auch der FTP- 67 http://vsftpd.beasts.org/
  • 67. Der Linux – Schulwebserver 66 Upload funktionieren, muss das File /etc/vsftpd.conf konfiguriert werden. Lokale User sollen Lese- und Schreibrechte haben. Anonymen Usern wird der Zugang verweigert. Das File /etc/vsftpd.conf muss dazu in einem Editor geöffnet werden. Das Konfigurations- Skript teilt sich in drei Bereiche. In der General Settings Sektion wird allgemeines konfiguriert. In der Sektion Anonymous FTP user Settings wird der anonyme Zugriff konfiguriert. Im Bereich Lokal FTP user Settings wird der Zugriff für die am System angelegten User eingestellt. In den General Settings muss in der Zeile #write_enable=YES das Zeichen # entfernt werden. Um eine Begrüßung beim Login zu senden, muss die Zeile #ftpd_banner=“Welcome to FOOBAR FTP service.“ editiert werden. Um den Banner zu aktiveren muss das Zeichen # entfernt werden. In den Lokal FTP user Settings muss die Zeile #local_enable=YES verändert werden. Das Zeichen # wird entfernt. Durch das Aktivieren von lokoal_unmask=022 werden die Userrechte für den FTP-Server gesetzt. Im Bereich Anonymous FTP user Settings muss vor die Zeile anonymous_enable=YES das Zeichen # gesetzt werden. Nach dem Speichern kann der vsFTP-Dämon gestartet werden. Dazu wird YaST geöffnet. Im Bereich Netzwerkdienste wird das Icon Netzwerkdienste gewählt.
  • 68. Der Linux – Schulwebserver 67 Abbildung 62: vsFTP-Dämon starten Der Netzwerkdienst xinetd muss akitviert werden. In der Zeile ftp stream tcp nowait root /usr/sbin/vsftp wird der Status auf An gesetzt. Nach dem Beenden von YaST läuft der FTP- Server. Getestet kann der Server mit Konqueror werden.
  • 69. Der Linux – Schulwebserver 68 Abbildung 63: Test des FTP-Servers Die URL für den Test lautet ftp://username@server, hier zum Beispiel ftp://tester@localhost. 7.3 MySQL-Datenbankserver Benötigte Pakete: MySQL, MySQL-client, MySQL-shared Empfohlenen Pakete: Selektion „Einfacher Webserver mit Apache2“, phpMyAdmin MySQL68 ist ein Datenbankserver der unter GPL zur Verfügung steht. Er gehört zu den verbreitesten SQL Open Source Datenbanken. Neben der Linux-Variante wird MySQL auch für Unix, Mac OS X und für Windows angeboten. Besonderer Beliebtheit erfreut sich MySQL im Bereich von Webservern, da es besonders auf diesem Gebiet gute Performance liefert. In Verbindung mit Linux, Apache und PHP spricht man von einem LAMP69 System. Der erste Schritt nach dem Einspielen der Pakete sollte das Setzen eines neuen Administrator-Passwortes sein. 68 http://www.MySQL.com/ 69 LAMP: Linux-Apache-MySQL-PHP; WAMP: Windows-Apache-MySQL-PHP
  • 70. Der Linux – Schulwebserver 69 Abbildung 64: MySQL Administrator-Passwort /usr/bin/MySQLadmin –u root password ’NEUES_PASSWORT’ Danach kann MySQL mit Hilfe von YaST gestartet werden. Im Runlevel-Editor muss dazu der Dienst MySQL aktiviert werden.
  • 71. Der Linux – Schulwebserver 70 Abbildung 65: MySQL starten Ist auf dem Server das Paket phpMyAdmin aufgespielt, kann der Datenbank-Server direkt über das Browserfenster verwaltet werden. Es ist dazu notwendig, das Administrator- Passwort in das File /srs/www/htdocs/phpMyAdmin/config.inc.php einzutragen.
  • 72. Der Linux – Schulwebserver 71 Abbildung 66: phpMyAdmin konfigurieren Dazu muss die Zeile $cfg[’Servers’][$i][’password’] editiert werden. Wird im Browser nun der URL http://localhost/phpMyAdmin aufgerufen, steht das Datenbank-Frontend phpMyAdmin zur Verfügung.
  • 73. Der Linux – Schulwebserver 72 Abbildung 67: phpMyAdmin Jeder der Zugang zum Webserver hat, kann nun auf die Datenbank zugreifen. Dies geschieht in diesem Fall mit Administrator-Rechten! Die Absicherung des Zugangs wird später gezeigt. 7.4 Webmin-Fernwartung Den kompletten Server über eine Browseroberfläche warten? Kein Problem, Webmin hilft. Der Zugang zu Webmin erfolgt über das Protokoll http und das Port 80. In der Download-Version von SuSE 9.2 ist das Paket Webmin nicht mehr enthalten. Das Paket kann auch direkt als RPM-Paket von der Site http://www.webmin.com geladen werden.
  • 74. Der Linux – Schulwebserver 73 Abbildung 68: Webmin Homepage Nach der Auswahl des Mirrors wird das RPM-Paket wird direkt im Ordner /root gespeichert.
  • 75. Der Linux – Schulwebserver 74 Abbildung 69: Webmin Installation starten Die Installation startet durch das Anklicken des Files in Konqueror.
  • 76. Der Linux – Schulwebserver 75 Abbildung 70: Webmin installieren Über Install package with YaST wird Webmin automatisch in das System integriert. Alternativ kann im Terminal Webmin mit rpm installiert werden. rpm –i /root/webmin* Über den URL http://localhost:10000 wird Webmin im Browser aufgerufen.
  • 77. Der Linux – Schulwebserver 76 Abbildung 71: Webmin-Fenster Weitere Informationen stehen im Webmin-Tutorial von Tutorials-Tanmar70 zur Verfügung. 70 http://tutorials.tanmar.de/linux-webmin.php
  • 78. Der Linux – Schulwebserver 77 8 Der Schulserver Webserver oder Intranetserver für Schulen sollten einige Besonderheiten haben. Linux erweist sich in vielen Bereichen als idealer Partner für die Schule. Ein Linux-Server ist kostengünstig, er benötigt wenig Wartung, die Hardware muss nicht die neueste sein. Es gibt eine große Anzahl von gratis Software für den Einsatz in der Schule. Diese erleichtert die Präsentation und Information über die Schule und organisiert den schulischen Alltag. 8.1 Die schnelle Schulhomepage Der Weg zur Schulhomepage ist ein steiniger. Viele haben Ideen, wenige helfen bei der Umsetzung und alle sind mit dem Ergebnis unzufrieden. Für die Schule ist eine statische nur mit großem Aufwand zu ändernde Homepage nicht zielführend. Es empfiehlt sich daher, ein vorgefertigtes Produkt nur mehr mit Inhalt zu füllen, oder besser noch, ein CMS71 zu wählen. Der Vorteil eines CMS ist, dass Design und Daten getrennt verwaltet werden. Die meisten CMS bieten zusätzlich eine einfache Administration. In den meisten Fällen geschieht dies direkt über den Browser und ist auch von unerfahrenen Usern schnell zu erlernen. Eine Übersicht über gängige CMS wird auf http://de.wikipedia.org/wiki/WCMS dargestellt. Ein einfaches und für die Schule gutes WCMS72 ist Mambo. Der Download von Mambo erfolgt von der Website http://www.mamboserver.com/. 71 Ein Content-Management-System (CMS) ist eine Software zur Verwaltung des Inhalts einer Website oder auch von anderen Informationsangeboten. 72 Ein Web Content Management System (WCMS) ist ein Content Management System, welches sich ausschließlich oder überwiegend mit der Publikation auf Webseiten beschäftigt.
  • 79. Der Linux – Schulwebserver 78 Abbildung 72: Download Mambo Gespeichert wird der Download temporär im Verzeichnis /root. Nun wird das Webserver- Dokument-Verzeichnis vorbereitet. Nach einem Wechsel in das Webserver-Dokument- Verzeichnis werden alle nicht benötigten Dateien gelöscht. Mambo wird direkt hier her ausgepackt. cd /srv/www/htdocs rm * tar –xvzf /root/Mambo*
  • 80. Der Linux – Schulwebserver 79 Abbildung 73: Mambo auspacken Damit der Webserver (User: wwwrun) die Seiten lesen darf, werden die Dateirechte auf 755 geändert. chmod –R 755 *
  • 81. Der Linux – Schulwebserver 80 Abbildung 74: Moodle Userrechte ändern Das WCMS Mambo benötigt zum Ablegen der Daten eine Datenbank und einen Zugang zu dieser. Beides wird über phpMyAdmin angelegt. PhpMyAdmin wird über den Browser mit dem URL http://localhost/phpMyAdmin gestartet.
  • 82. Der Linux – Schulwebserver 81 Abbildung 75: Datenbank Mambo anlegen
  • 83. Der Linux – Schulwebserver 82 Abbildung 76: Datenbankuser Mambo anlegen Mambo benötigt einen Datenbank-User, der auf die Datenbank mambo Zugriff hat. Aus Überlegungen der Sicherheit sollte dieser User aber auf keine anderen Datenbanken des Servers Zugriff haben. Nach der Wahl der Datenbank MySQL muss der Moodle-Datenbank- User zuerst in die Tabelle user eingetragen werden. Im Feld Host wird localhost eingetragen, im Feld User wird mambo eingetragen. Das Passwort wird in das Feld Password eingetragen, die Funktion auf PASSWORD gestellt. Alle anderen Werte werden nicht geändert. Zusätzlich werden die Rechte des Users für die Datenbank vergeben. Dies geschieht in der Tabelle db. Im Feld Host wird localhost eingetragen, im Feld Db wird mambo eingetragen, als User wird mambo eingetragen. Alle anderen Felder werden auf Y gesetzt. Der User mambo hat nun in der Datenbank mambo alle Rechte, kann aber keine anderen Datenbanken bearbeiten. Zusätzlich kann er sich nur vom lokalen Rechner aus verbinden. Abschließend muss die Datenbank neu gestartet werden. /etc/init.d/MySQL restart Der Webserver benötigt im Ordner /srv/www/httpd/ Schreibrechte.
  • 84. Der Linux – Schulwebserver 83 chown –R wwwrun /srv/www/httpd Nach den Vorbereitungen erfolgt die eigentliche Installation von Mambo direkt über den Browser-URL http://locahost/. Abbildung 77: Mambo pre-installation check
  • 85. Der Linux – Schulwebserver 84 Abbildung 78: Mambo Lizenzbedingungen
  • 86. Der Linux – Schulwebserver 85 Abbildung 79: Mambo MySQL Datenbank Konfiguration
  • 87. Der Linux – Schulwebserver 86 Abbildung 80: Mambo Site name
  • 88. Der Linux – Schulwebserver 87 Abbildung 81: Mambo URL, Pfad, Administrator E-Mail Adresse, Administrator Passwort
  • 89. Der Linux – Schulwebserver 88 Abbildung 82: Installations-Ordner löschen Nach dem Abschluss der Installation muss der Ordner installation gelöscht werden. rm –R /srv/www/htdocs/installation Die Mambo Test Seiten können nun im Browser mit URL http://localhost/ aufgerufen werden. Die Administration erfolgt über den URL http://localhost/administrator/.
  • 90. Der Linux – Schulwebserver 89 Abbildung 83: Mambo Administration
  • 91. Der Linux – Schulwebserver 90 Abbildung 84: Mambo Homepage 8.2 Das LMS Moodle Benötigte Pakete: apache, mod_php, MySQL Empfohlene Pakete: Selektion Einfacher Webserver mit Apache2 Moodle ist ein OpenSource LMS. Die Software ist kostenlos und bietet viele Möglichkeiten einer modernen Lernplattform. „Das Projekt versucht, aktuelle Erkenntnisse der konstruktivistischen Pädagogik (Konstruktivismus) im Rahmen von webbasiertem Lernen umzusetzen. Moodle eröffnet so Möglichkeiten, e-Learning in Kursform im Sinne kollaborativen Lernens umzusetzen.“ (http://de.wikipedia.org/wiki/Moodle, 06.02.2005) Im Evaluationsbericht73 des Österreichischen Bundesministeriums schneidet Moodle als hervorragend ab. Besonders hervorgehoben werden einfache Bedienbarkeit, Flexibilität und die deutschen Supportstrukturen. 73 http://www.bildung.at/statisch/bmbwk/lernplattformen_evaluation_und_ergebnisse_1_bis_3.pdf
  • 92. Der Linux – Schulwebserver 91 Es bietet sich an, für Moodle einen eigenen User anzulegen. Diese Aufgabe übernimmt YaST. Abbildung 85: User moodle anlegen Das LMS Moodle wird im Format .tgz von der Webseite http://www.moodle.org/ herunter geladen.
  • 93. Der Linux – Schulwebserver 92 Abbildung 86: Moodle Download Gespeichert wird das komprimierte File im Ordner /home/moodle/. Auspacken kann man das File direkt in diesem Ordner. Danach werden die Moodle-Files nach /home/moodle/public_html verschoben. cd /home/moodle/ tar –xvzf moodle* mv moodle/public_html/ Zusätzlich benötigt Moodle ein beschreibbares Verzeichnis moodledata. Dieses wird im Ordner /home/moodle/ angelegt. Der User wwwrun wird Besitzer dieses Verzeichnisses. Somit kann der Webserver Apache hier Files ablegen. mkdir /home/moodle/moodledata chown wwwrun –R moodledata Das Einrichten eines Moodle-Datenbank-Users und einer Datenbank erfolgt am einfachsten über phpMyAdmin. Dazu wird im Browser der URL http://localhost/phpMyAdmin/ geöffnet. Über die Eingabezeile Neue Datenbank anlegen wird die Datenbank erstellt.
  • 94. Der Linux – Schulwebserver 93 Abbildung 87: Datenbank moodle anlegen Moodle benötigt einen Datenbank-User der auf die Datenbank moodle Zugriff hat. Aus Überlegungen der Sicherheit sollte dieser User aber auf keine anderen Datenbanken des Servers Zugriff haben. Nach der Wahl der Datenbank MySQL muss der Moodle-Datenbank- User zuerst in die Tabelle user eingetragen werden.
  • 95. Der Linux – Schulwebserver 94 Abbildung 88: Datenbank-User „moodle“ anlegen. Im Feld Host wird localhost eingetragen, im Feld User wird moodle eingetragen. Das Passwort wird in das Feld Password eingetragen, die Funktion auf PASSWORD gestellt. Alle anderen Werte werden nicht geändert. Zusätzlich werden die Rechte des Users für die Datenbank vergeben. Dies geschieht in der Tabelle db.
  • 96. Der Linux – Schulwebserver 95 Abbildung 89: Moodle Datenbank-Rechte vergeben Im Feld Host wird localhost eingetragen, im Feld db wird moodle eingetragen, als User wird moodle eingetragen. Alle anderen Felder werden auf Y gesetzt. Der User moodle hat nun in der Datenbank moodle alle Rechte, kann aber keine anderen Datenbanken bearbeiten. Zusätzlich kann er sich nur vom lokalen Rechner aus verbinden. Abschließend muss die Datenbank neu gestartet werden. /etc/init.d/MySQL restart Nach den Vorbereitungen erfolgt die eigentliche Installation von Moodle direkt über den Browser-URL http://locahost/~moodle/.
  • 97. Der Linux – Schulwebserver 96 Abbildung 90: Sprachauswahl Der erste Schritt der Installation ist die Wahl der Sprache. Moodle unterstützt während der Installation Deutsch.
  • 98. Der Linux – Schulwebserver 97 Abbildung 91: Überprüfung der PHP-Einstellungen Im zweiten Schritt werden die PHP-Einstellungen überprüft.
  • 99. Der Linux – Schulwebserver 98 Abbildung 92: Überprüfung der Verzeichnisse Die URL Adresse, das Moodle Verzeichnis und das Datenverzeichnis wird im dritten Schritt überprüft. Im Datenverzeichnis muss der User wwwrun Schreibrechte haben. Entweder werden die Dateirechte auf 777 gesetzt, oder das Verzeichnis wird chmod dem User wwwrun übergeben (vgl. Seite 92 moodledata).
  • 100. Der Linux – Schulwebserver 99 Abbildung 93: Datenbank Zugang Im nächsten Schritt wird der Zugang zur Datenbank konfiguriert. Die oben erstellte Datenbank und der Moodle-Datenbank-User werden für den Zugang eingetragen.
  • 101. Der Linux – Schulwebserver 100 Abbildung 94: Konfigurations-Skript
  • 102. Der Linux – Schulwebserver 101 Abbildung 95: Konfigurations-Skript speichern
  • 103. Der Linux – Schulwebserver 102 Abbildung 96: GPL-Lizenz
  • 104. Der Linux – Schulwebserver 103 Abbildung 97: Datenbank einspielen
  • 105. Der Linux – Schulwebserver 104 Abbildung 98: Variablen konfigurieren Bei der Konfiguration der Variabeln sollte eine Sprache gewählt werden. Ein Land und eine existierende E-Mail Adresse müssen eingetragen werden.
  • 106. Der Linux – Schulwebserver 105 Abbildung 99: Moodle Release Notes
  • 107. Der Linux – Schulwebserver 106 Abbildung 100: Aktualisieren der Datenbank Bestätigen der nächsten Schritte mit Weiter am Ende der Seiten.
  • 108. Der Linux – Schulwebserver 107 Abbildung 101: Konfiguration der Startseite
  • 109. Der Linux – Schulwebserver 108 Abbildung 102: Administrator anlegen Die E-Mail Adresse des Administrators und die Stadt des Administrators muss eingetragen werden.
  • 110. Der Linux – Schulwebserver 109 Abbildung 103: Moodle Start
  • 111. Der Linux – Schulwebserver 110 9 Server Security Sicherheit ist bei Webservern immer ein Problem. Linux bietet einige Möglichkeiten das System zu schützen. 9.1 SuSE Firewall Die SuSE Firewall kann direkt über YaST konfiguriert werden. Die Konfiguration startet über Sicherheit und Benutzer und Firewall. Abbildung 104: Firewall neu konfigurieren Im ersten Schritt wird Firewall-Einstellungen neu konfigurieren gewählt.
  • 112. Der Linux – Schulwebserver 111 Abbildung 105: Schnittstellen zuweisen Die externe Schnittstelle wird vorgeschlagen. Die MAC-Adresse der Netzwerkkarte wird als Device-Name angezeigt.
  • 113. Der Linux – Schulwebserver 112 Abbildung 106: Firewall konfigurieren Je nach angebotenen Servierdiensten muss die entsprechende Checkbox aktiviert werden. Für den FTP-Server werden zusätzlich die TCP-Ports 20 und 21, sowie das UDP Port 21 benötigt (vgl. FTP, Seite 15). Zusätzlich kann das TCP-Port 10000 für Webmin freigegeben werden.
  • 114. Der Linux – Schulwebserver 113 Abbildung 107: Firewall Protokollierung In den Protokollierungsoptionen wird angegeben, was in das Logfile /var/log/messages eingetragen werden soll.
  • 115. Der Linux – Schulwebserver 114 Abbildung 108: Masquerading Sind in den Server zwei Netzwerkkarten eingebaut, kann das Masquerading aktiviert werden. Die Firewall routet dann auch Pakte weiter. 9.2 MySQL und phpMyAdmin Bei der Installation von MySQL und phpMyAdmin, wie im Kapitel 7.3 beschrieben, kann jeder User direkt über die Homepage auf MySQL zugreifen. Eine elegantere Variante wäre, einen User anzulegen, der nur Lesezugriff auf die Datenbank MySQL hat. Dies kann direkt in phpMyAdmin erfolgen. Dazu muss die Datenbank MySQL ausgewählt werden. Über den Register SQL kann der User pma mit dem Passwort pmapass hinzugefügt werden. GRANT USAGE ON MySQL.* TO 'pma'@'localhost' IDENTIFIED BY 'pmapass'; GRANT SELECT ( Host, User, Select_priv, Insert_priv, Update_priv, Delete_priv, Create_priv, Drop_priv, Reload_priv, Shutdown_priv, Process_priv,
  • 116. Der Linux – Schulwebserver 115 File_priv, Grant_priv, References_priv, Index_priv, Alter_priv, Show_db_priv, Super_priv, Create_tmp_table_priv, Lock_tables_priv, Execute_priv, Repl_slave_priv, Repl_client_priv ) ON MySQL.user TO 'pma'@'localhost'; GRANT SELECT ON MySQL.db TO 'pma'@'localhost'; GRANT SELECT ON MySQL.host TO 'pma'@'localhost'; GRANT SELECT (Host, Db, User, Table_name, Table_priv, Column_priv) ON MySQL.tables_priv TO 'pma'@'localhost'; Um die Userrechte zu aktiveren, wird zusätzlich die Datenbank neu geladen. /# /etc/init.d/MySQL reload Als Abschluss wird das File /srv/www/htdocs/phpMyAdmin/config.inc.php geändert. Abbildung 109: config.inc.php Als controluser wird pma gesetzt, als controlpass wird pmapass verwendet. Der auth_type wird auf http verändert. Das Administratorpasswort gelöscht.
  • 117. Der Linux – Schulwebserver 116 Wird nun phpMyAdmin aufgerufen, muss sich jeder User anmelden und er kann nur seinen Bereich bearbeiten. 9.3 Webmin Webmin ist das ideale Tool für die Fernwartung. Bei der Installation von Kapitel 7.4 wird das unsichere http Protokoll verwendet. Soll das https74 Protokoll verwendet werden, muss Webmin entsprechend eingerichtet werden. Zusätzlich wird das Paket perl-Net_SSLeay benötigt. Abbildung 110: pearl-Net_SSLeary In Webmin erfolgen die notwenigen Schritte unter Webmin Coniguration und SSL Encryption. SSL muss aktiviert werden. Mit Create Now werden diese Einstellungen abgeschlossen. 74 HTTPS steht für hypertext transfer protocol secure und ist ein Netzwerkprotokoll, das eine gesicherte HTTP-Verbindung zwischen Rechnern ermöglicht.
  • 118. Der Linux – Schulwebserver 117 Abbildung 111: Webmin SSL Encryption Mit Certificate Authority kann ein eigenes Zertifikat für Webmin erstellt werden. 9.4 Apache mit mod_ssl Auch die Administrations-Zugänge für Mambo und Moodle sollte über https gesichert werden. Der erste Schritt dafür ist die Erstellung des Zertifikates. /etc/apache2 # openssl req –new –x509 –nodes –days 365 –out ssl.crt/server.crt –keyout ssl.key/server.key Die Informationen für das Land, die Organisation usw. müssen eingetragen werden. Abschließend muss der Webserver neu gestartet werden. /etc/apache2 # rcapache2 stop /etc/apache2 # rcapache2 startssl
  • 119. Der Linux – Schulwebserver 118 Abbildung 112: APACHE_SERVER_FLAG=“SSL“ Soll Apache2 automatisch mit SSL gestartet werden, muss mit YaST das File /etc/sysconfig verändert werden. Der Wert Network/WWW/Apache2/APACHE_SERVER_FLAGS muss auf SSL gesetzt werden. Mambo und Moodle können somit auch über die gesicherte https Verbindung aufgerufen werden.
  • 120. Der Linux – Schulwebserver 119 10 Stichwortverzeichnis apache2 62, 63, 64, 90, 117 Kernel 3, 7, 8 ARP 16 Knoppix 8 Bash Konqueror 67, 74 LAMP 11, 68 Bourne Again Shell 4 LGPL 8 loopback 19 BGP 16 ls 55, 59, 60 Bibliothek MAC 111 Mambo 77, 78, 79, 80, 81, 82, 83, 84, 85, libraries 6 86, 87, 88, 89, 90, 117, 118 man 3, 10, 19, 20, 55, 57, 61, 62, 68, 92 mkdir 61, 92 bind 21 mod_php 63, 90 BOOTP 19 mod_ssl 64, 117 Broadcast 17, 19 Moodle 80, 82, 90, 91, 92, 93, 95, 96, 98, cat 58 99, 105, 109, 117, 118 cd 55, 56, 61, 78, 92 mounten 10, 57, 61 chmod 60, 79, 98 Mounten 61 chown 60, 83, 92 mv 62, 92 CMS 77 MySQL 2, 11, 68, 69, 70, 82, 85, 90, 93, cp 61, 62 95, 114, 115 DARPA 13 Netzmaske 16, 17, 20 date 54, 56 Netzwerk 4, 14, 15, 16, 17, 19, 20, 29 Debian 6 nslookup 21 df 61 NTP 50, 51, 52 DHCP 19, 29 Open Source 9, 68 Distribution 6, 22, 56 OpenOffice 8, 9 dmesg 54 OSPF 16 DNS 15, 21 passwd 58, 61, 62 DoD 13 perl-Net_SSLeay 116 Ethernet 15, 16 PHP 2, 11, 68, 97 exit 55 phpMyAdmin 68, 70, 71, 72, 80, 92, 114, find 62 115, 116 FTP 7, 14, 15, 22, 65, 66, 67, 68, 112 ping 40, 46, 47 Gateway 16, 46 POP3 14, 15 Gentoo 6 pwd 55 GID 59 RARP 16 GNOME 4, 8 reboot 55, 56 GNU-Software-Projekt 3, 7, 8, 9 RedHat 6 halt 55 Referenzmodell 13, 14, 15 Hops 14 ReiserFS 10 http 4, 5, 6, 7, 8, 9, 11, 19, 21, 25, 31, 63, RFC 13, 65 64, 65, 68, 71, 72, 75, 76, 77, 80, 83, RIP 15 88, 90, 91, 92, 95, 115, 116 rm 61, 78, 88 https 116, 117, 118 rmdir 61 ICMP 16 Router 12, 18 Ifconfig 17, 18 RPM 72, 73 IMAP 14, 15 Runlevel 35, 64, 69 IP 13, 14, 15, 16, 17, 18, 19, 20, 21, 44, Samba 8, 31 45, 65 SaX2 32 IPv4 13, 14, 16, 19 shadow 58, 59 IPv6 13, 14 Shell 4, 15, 53, 54 KDE 4, 5, 8, 9, 10, 35, 57 shutdown 55
  • 121. Der Linux – Schulwebserver 120 SMTP 15 traceroute 18, 19 SNMP 15 UDP 15, 112 SSH 15 UID 59 SSL 116, 117, 118 umount 61 su 29, 55 VMware 2 SuSE 2, 6, 22, 29, 35, 47, 72, 110 vsFTP 65, 66, 67 SuSEFirewall 11 WCMS 77, 80 tar 62, 78, 92 Webmin 11, 72, 73, 74, 75, 76, 112, 116, TCP 13, 14, 15, 16, 19, 65, 112 117 TCP/IP 13, 14, 15, 16, 19, 65 WLAN 16 Telnet 15 wwwrun 79, 83, 92, 98 Terminals 10 XFree86 7, 8 Token 15, 16 X-Server 4 Torvald, Linus 2, 7 YaST 24, 30, 43, 44, 47, 49, 50, 64, 65, touch 60, 61 66, 67, 69, 75, 91, 110, 118