Network Services VU 2.0, Übungsbeschreibung Sommerübung184.163


SS 2005 - Johann Oberleitner - Letzte Änderung: Fri Mar 17 19:26:37 WEST 2006



Übungsablauf (Sommer)

Die Übung findet in Gruppen zu 4 Studierenden statt. Jede Gruppe hat Gruppenbeispiele zu lösen, und jeder Teilnehmer einer Gruppe hat Einzelbeispiele zu lösen. Für jedes dieser Beispiele (Gruppe und Einzel) gibt es Punkte, wobei zu einem positiven Abschluss mehr als die Hälfte aller Punkte zu erreichen sind. Für jedes Beispiel gibt es eine Frist bis zu der die richtige Lösung abzugeben ist.

Für die Übung werden insgesamt 25% der Gesamtpunkte vergeben. Mit der Prüfung können demnach die restlichen 75% erreicht werden. Die 20 Punkte, die bei der Übung erreicht werden können, werden demnach mit 1,25 multipliziert.

Die Beispiele werden direkt auf der Übungsumgebung getestet. Ergebnisse für die jeweiligen Beispiele werden Ihnen nach der Bewertung auch ins /root Verzeichnis gestellt.

Abgabegespräch

Die Anmeldeseite für das Abgabegespräch ist online. Beim Abgabegespräch (ca 10min je Gruppe) wird überprüft, ob Sie die Beispiele selbst gelöst haben, bzw. Sie mit der Übungsumgebung vertraut sind. Es gibt keine Punkte beim Abgabegespräch. Dennoch: sollte sich bei dem Gespräch herausstellen, dass Studierende zwar Beispiele richtig gelöst/abgegeben haben, aber auch nicht ansatzweise geringsten erklären können, wie Sie zur Lösung kommen (zum Beispiel weil Sie die Beispiele von jemanden anderen haben Lösen lassen), ist es nicht möglich die LVA positiv abzuschliessen.

Das Abgabegespräch findet jeweils am Institut in der Abteilungsbibliothek statt (Argentinierstrasse 8 / E1841, 3.Stock).

Anmeldung

Anmeldungen für die Sommer-Übung bitte an mich.

Die Anmeldung für Übungsgruppen war bis 8.7.2005 möglich.

Die Liste der Teilnehmerliste für die Sommerübung finden Sie hier. Die Ausgabe der Accounts folgt in den nächsten Tagen.

Inhalt

Ziel des Übungsteils ist es einige Vorlesungsinhalte in der Praxis auszuprobieren. Es gilt also Aufgabenstellungen zu lösen, wie sie auch ein System-Administrator in der Praxis zu lösen hat. Da es nicht möglich ist, alle Vorlesungsinhalte auszuprobieren gibt es im Übungsteil einige wenige Beispiele zu lösen. Insbesondere gilt es einen Nameserver (DNS) und ein EMail-Programm (Postfix) zu konfigurieren. Weitere Beispiele betreffen WWW-Server (Apache).

Die Übung soll in etwa Aufgabenstellungen anbieten, mit denen auch ein System Administrator und Web-Administrator in der Praxis konfrontiert ist. Da diese oft mit Leuten zu tun haben, die mit EDV wenig am Hut haben, wird auch in der Übung jeder Übungsteilnehmer für so einen "Kunden" verantwortlich sein, und DNS, EMail, Webseiten für diesen Kunden anbieten.

Account

Jede Übungsgruppe bekommt einen Account auf unserem Übungsrechner. Dieser Account beinhaltet Administratorrechte auf einem virtuellen Übungs-Host. Dieser Host bietet Linux als Betriebssystem (Debian 3.0). Die für die Übung notwendigen Tools sind bereits installiert, Sie brauchen also keine weiteren Tools installieren, oder dergleichen. Es sind keinerlei Tools installiert, die das Administrieren mittels Website vereinfachen. Dh. Sie müssen, Ihre Änderungen direkt an den Konfigurationsfiles vornehmen, die allesamt als Textfiles vorliegen. Als Texteditoren stehen zur Verfügung: vi, jove (emacs), und joe (ähnlich pico). Wer weder vi noch emacs bedienen kann, soll bitte den Texteditor joe verwenden (Aufruf mittels: joe myfile.txt), da dieser am einfachsten zu bedienen ist.

Sobald Sie sich als Gruppe (mit 4 Leuten) zusammengefunden haben, können Sie den Account beziehen, wobei sie auch ein Passwort bekommen. Anmelden können Sie sich dann mittels ssh Verbindung an diese Übungsmaschine. Wobei Sie sich auf einen bestimmten Port verbinden müssen: "ssh -p 1xx22 rootxx@nwsA.dslab.tuwien.ac.at". Wobei xx für Ihre Gruppennummer steht (also zB für Gruppe 05: ssh -p 10522 root05@nwsA.dslab.tuwien.ac.at). Das Passwort bekommen Sie via EMail. Unter Windows können Sie statt ssh auch putty.exe verwenden. Wenn sich die virtuelle Instanz Ihrer Gruppe auf nwsB befindet müssen Sie stattdessen nwsB.dslab.tuwien.ac.at verwenden.

Tools

Eine kurze Beschreibung der wichtigsten Tools, die Sie benötigen finden Sie unter Tools.

Beispiel 1

Das erste Beispiel beinhaltet den ersten Einstieg in das Übungssystem, das Anlegen von Benutzern für alle Teilnehmer einer Gruppe, sowie die Konfiguration des Nameservers.

Abgabefrist: 12.9 24:00

UnteraufgabeTypBeschreibung
Anlegen von BenutzernEinzelwertung (0 Pkt)Jedes Gruppenmitglied benötigt zusätzlich zum Administratoraccount der Gruppe einen Unixaccount auf der Zielmaschine. Legen Sie dazu einen Account an, wobei Ihr Benutzername bestehen soll aus nws und Ihrer Matrikelnummer (ohne führenden Buchstaben). Sorgen Sie dafür, dass der Account auch jeweils ein Homeverzeichnis beinhaltet. Der Account soll jedenfalls keine Administrator Privilegien haben. Tätigkeiten, die Sie als Administrator ausführen müssen erledigen Sie auch in Zukunft mit dem jeweiligen Account, den Ihre Gruppe bekommen hat. zB.: nws9325311, das Passwort können Sie frei wählen. Tipp: Benutzer legt man unter Unix als Administrator mit dem Command adduser an.
Anlegen eines Kunden-AccountEinzelwertung (0 Pkt) Für jeden Kunden, den Sie betreuen müssen, legen Sie einen Unixaccount auf der Zielmaschine an, der Name und das Passwort des Kunden wird Ihnen bei der Passwortvergabe zugeteilt (Name=Domainname ohne den Bindestrich, zB: Kunden-Domain: nws03-A, Kunden-Name ist dann: nws03A). Sorgen Sie ebenfalls dafür, dass der Account ein Homeverzeichnis hat und das der Account nicht Administrator Rechte hat.
Konfigurieren des Nameservers.Gruppenwertung (2 Pkt)Auf jeder Maschine muss der Nameserver entsprechend konfiguriert werden. Erstellen Sie dazu im Verzeichnis /etc/bind ein Textfile Namen nwsxx-zone, wobei xx für Ihre Gruppennummer steht. Die Domäne für Ihren Account soll die Bauart nwsxx.lab haben (lab ist eine Top-Level Domän, die nur am Übungsrechner funktioniert). Passen Sie den Start Of Authority Eintrag in diesem File so an, so dass dass ein Resolver (oder anderer Nameserver, der die Werte cached) alle 2 Stunden eine Aktualisierung durchführt, im Fehlerfalle die Daten jede Stunde abfrägt, die Expiration-Time 100 Stunden, und die Minimale Zeit genau einen Tag. Tragen Sie weiters Einträge für den Nameserver ein, der auf diesem Rechner läuft. Dieser soll öffentlich unter dem Namen ns erreichbar sein (zu überprüfen mit dig). Die IP-Addresse der (virtuellen) Netzwerkkarte Ihrer Maschine können Sie mit dem Commando ifconfig abfragen.

Eine nicht vollständige Vorlage für das Zonenfile finden Sie hier.

Sie müssen das named.conf File erweitern um das Zonenfile einzubinden, dass sie modifiziert haben. Die Zone wird analog zu localhost eingebunden.

Verwenden Sie auf jeden Fall einen Address (=A) Eintrag für den Nameserver und tragen Sie nicht nwsxx.lab selbst als Host ein.

Den Nameserver können Sie neu starten mit "/etc/init.d/bind9 restart". Sie können Ihre Einstellungen mit dem dig Command testen, dass wir in der VO behandelt haben.

Hinweise für den Aufbau des Zonenfiles finden Sie zum Beispiel in RFC 1035. Eine genaue Doku und Beispiele zu bind9 finden Sie zum Beispiel unter BIND 9 Manual Pages. Inbesondere das Kapitel 6.3. über Zone-Files dürfte für das Beispiel hilfreich sein. Zahlreiche Beispiele zu Zone-Files finden Sie mit beliebigen Suchmaschinenen (zB mit Zone and DNS and Sample).
Konfigurieren der Kundeneinträge des Nameservers.EinzelwertungFür Ihren Kunden tragen Sie bitte einen zusätzlichen Hostnamen im Nameserver ein (unterhalb Ihrer Domain nwsxx.lab), mit dem Domain-Namen, den Sie bei der Passwortvergabe bekommen haben. Da die Übung nur auf einer einzelnen Maschine läuft, verwenden Sie dieselbe IP-Adresse, die Sie bereits bei der vorigen Unteraufgabe für den Nameserver verwendet haben. Sie können sowohl einen DNS aliase als auch Address Einträge verwenden, aber Sie müssen beim Abgabegespräch dann erklären können warum Sie den Eintrag, den Sie verwendet haben, verwendet haben.
Eintrag eines TXT EintragsGruppenwertung (1 Pkt)Tragen Sie bitte einen TXT Resource Record in Ihren DNS Server ein. Tragen Sie hier als String Ihre Gruppennummer ein. Sorgen Sie dafür, das der Eintrag dem Nameserver zugeordnet ist.

Beispiel 2

Das zweite Beispiel beinhaltet das Konfigurieren eines SMTP-Severs (Postfix) und die Verarbeitung von eingehenden EMail-Nachrichten mittels procmail

Abgabefrist: 12.9.2005 24:00

Sie brauchen keine Mail der geänderten Files schicken

UnteraufgabeTyp & PunkteBeschreibung
Konfigurieren des Mail Exchange im DNSGruppenwertung (1 Pkt)Ändern Sie Ihr Zonenfile dahingehend, dass der Host als Mail Exchange fungieren kann. Beachten Sie, dass eine etwaige Änderung des Zonenfiles eine gewisse Zeit braucht bis Sie von anderen Hosts erkannt wird.
Konfigurieren des Postfix Mail Servers.Gruppenwertung (1 Pkt)Konfigurieren Sie den Postfix Server dahingehend, dass Sie damit mails verschicken können. Das soll innerhalb der Laborumgebung möglich sein. Dh. zwischen verschiedenen Gruppen. Um das zu Testen gibt es die Möglichkeit für Gruppen auf nwsB an den Account joe@nws00.lab eine Mail zu schicken, die im Subject den String autoreply enthält. Möglicherweise müssen Sie Ihren lokalen nameserver dazu neustarten!

Sie bekommen dann eine Antwort-Mail wenn es funktioniert (keine Antwort wenns nicht geht, aber eine Fehlermeldung in einem der Log-Files in /var/log/). Selbstverständlich sollte das Verschicken von emails auch auf Ihrer virtuellen Instanz alleine möglich sein.

Mail verschicken können Sie zum Beispiel mit dem Programm mutt (Funktionsweise: mutt recipient bzw. man-pages man mutt). Sie können auch das Programm mail verwenden. Für das Lesen von emails müssen Sie bei beiden mit dem Parameter -f den Pfad des Spool-Verzeichnisses angeben (wo Ihre Mails abgelegt werden, siehe /var/spool/mail). Sie können (müssen aber nicht, dafür gibt es keine Bonuspunkte) postfix auch dahingehend konfigurieren, dass es ein anderes Verzeichnis verwendet, um die Mails abzulegen (zB verwendet mail ein Standardverzeichnis).

Achten Sie darauf, dass der Absender in der Datei /etc/mailname verwendet wird.

Achten Sie beim Konfigurieren von Postfix darauf, dass die Addressen, die in der email stehen, richtig sind. Dokus zu postfix, finden Sie im Internet (via Suchmaschine, "postfix"). Sie sollten keinerlei postfix Konfigurationsdateien ändern müssen ausser main.cf. Neustarten können Sie postfix wie auch schon beim nameserver mit dem für den Nameserver entsprechenden Commando in /etc/init.d .

Selbstverständlich können Sie zum Testen auch telnet verwenden. Das ist manchmal einfacher als die Verwendung von Nicht-Konfigurierten mail clients.

Hilfreich dürften die Log-Files sein, die Sie in /var/log/ finden. Für emails sind natürlich die mail.* Files interessant.
Konfigurieren von EMail-Eingänge.Einzelwertung (1 Pkt)Sorgen (ausprobieren) Sie dafür, dass Sie sowohl Mails auf Ihrem Benutzeraccount wie auch auf Ihrem Kundenaccount empfangen können. Legen Sie zusätzlich Mail-Aliases an, dass Sie Mails der Form "Vorname.Nachname@nwsNN.lab" und "V.Nachname@nwsNN.lab" verschicken können und diese Mails an Ihren Benutzeraccount versendet werden. Legen Sie auch einen Alias an, der es Ihnen erlaubt an mehrere Benutzer (also Ihrem Account und dem Kundenaccount) gleichzeitig Mails zu verschicken (primitive Form von Mailingliste).

Das Schreiben von Aliases entnehmen Sie den Man-Pages zu "aliases" (man aliases)

Hinweis: vergessen Sie nach dem Ändern des Aliases Files nicht postfix darüber in Kenntnis zu setzen (zB. mittels postalias)
Konfigurieren von Procmail-RegelnGruppenwertung (2 Pkt)Konfigurieren Sie procmail und schreiben Sie systemweit gültige Regeln um EMails auszufiltern (=nicht an die Benutzer auszuliefern). Legen Sie für die Verwendung von procmail ein lokales mail-Directory an, dass im Home Verzeichnis des Benutzers liegt. Dieses Verzeichnis soll mail heissen. Speichern Sie Ihre Mails woanders ab, bekommen Sie keine Punkte! Diese EMails sollen in einem eigenen Spam-Ordner namens spam gespeichert werden (also beispielsweise im Verzeichnis /home/e999999/mail/spam). Wobei dieser Ordner für jeden einzelnen Benutzer eingerichtet werden soll (Kunde+Benutzer-Account). Folgende EMail-Typen sollen gefiltert werden (und im Ordner spam ablegen):
  • Header enthält Viagra, wobei das i und das erste a auch mehrmals vorkommen können (ohne Unterbrechung), vorkommen dürfen. Das gilt nicht für das g und das r Das abschliessende a kann auch mehrfach vorkommen, damit Viagra als Spam gilt. Wird das gesamte Wort mit einem anderen Buchstaben als a beendet, dann soll das entsprechende Wort nicht als Indikator für Spam gelten.
  • Body der email enthält einen Text der Bauart "to remove your XXX address". Wobei XXX für einen String von beliebige Buchstaben und Ziffern steht, der aber auf jeden Fall mit einem Buchstaben anfängt. Dieser String kann auch beliebig lang.
  • Der Sender ist badguyXXX@spammers.org wobei XXX für eine Zahl zwischen 2 und 4554 steht.

Andere EMails (die von den Regeln nicht gefunden werden) lassen Sie entweder im Spool Verzeichnis, oder legen sie in einem eigenen Ordner (aber dann unterhalb von /home/user/mail). Es dürfen diese mails aber nicht verloren gehen!

Unterlagen zu Procmail entnehmen Sie den Man-Pages zu procmail, procmailrc und procmailex. Ein gutes Tutorial für Procmail finden Sie bei Tutorial. Unterlagen zu den Regular Expressions, die in Procmail verwendet werden, entnehmen Sie bitte den bereits erwähnten man-pages, der man-page zu egrep oder dem Internet (Suche nach regular expression). Wenn Sie sich an das Tutorial halten, achten Sie darauf, dass das Spool-Directory in dem Ihre Mails liegen, nicht notwendigerweise übereinstimmt, mit dem Directory, das in dem Tutorial verwendet wird!

Es gibt für procmail ebenfalls ein log-File, dessen Ort sie mittels procmailrc konfigurieren können. Wenn Sie verbose=on setzen, wird dort ausführlichst protokolliert, was bei der Abarbeitung von procmail passiert.

Es soll nicht zwischen Gross- und Kleinschreibung unterschieden werden. Das heisst bei der Überprüfung soll sowohl viagra als auch Viagra als Spam behandelt werdne.
Konfigurieren Sie lokale Procmail-RegelnEinzelwertung (2 Pkt)Konfigurieren Sie eine lokale Procmail Regel, die es Ihnen erlaubt bei Einlangen einer EMail mit dem Subject "Automatisches Sortieren" (ohne die Anführungszeichen), die EMail in einer Datei abzulegen, diese Datei mit dem Unix-Command sort zu sortieren und doppelte Einträge aus dieser Datei mit uniq zu entfernen. Die Datei soll bei jeder eingehenden Mail neu erstellt werden (nicht anhängen!). Hierzu müssen Sie die entsprechenden Commandos mit dem Unix-Pipe-Symbol aneinanderhängen. Die jeweils ersten, zweiten, dritten, ... Gruppenmitglieder (siehe Gruppeneinteilungsliste) sollen nach dem jeweils zweiten, dritten, vierten, ... Feld des Files sortieren. Sie können davon ausgehen, dass die Files die Sie sortieren in etwa so aussehen werden: sort-liste.txt. Sie brauchen nicht berücksichtigen, dass die Felder in speziellen Datenformaten vorliegen und speziell sortiert werden müssen (beispielsweise nach dem Datum oder numerisch). Es genügt einfache alphabetische Sortierung. Die Datei soll dann in einem File mit dem fixen Namen sortierliste.txt gespeichert werden, und zwar direkt in Ihrem home-Verzeichnis (zB. /home/nwsXYZ/sortierliste.txt).

Legen Sie weiters eine Procmail-Regel an, die es Ihnen erlaubt mails von Ihrem Kunden an Ihren Benutzeraccount in einen eigenen Ordner zu verschieben. Der Name des ordners soll bestehen aus dem String mailvon und dem Namen des Kunden entsprechen. Beispielsweise mailvonNwsA. Dieses Verzeichnis soll wiederum unterhalb von Ihrem mail Verzeichnis liegen.

Hinweise und Beispiele für sort bekommt man mittels man sort und info sort. Analog für uniq. Bevor Sie das Sortieren und Ausfiltern in Procmail implementieren, probieren Sie diese Beispiele vorher auf der Commandozeile mit Textdaten und dem direkten Aufruf von uniq bzw. sort aus. Das Entfernen des Headers von der EMailvon procmail, können Sie entweder über mit Hilfe von procmail direkt lösen, oder Sie verwenden einen Unix Stream Editor wie sed oder awk.

Beispiel 3

Das dritte Beispiel beinhaltet das Konfigurieren eines HTTP-Severs (Apache), das Einrichten simpler Websites, und das Erzeugen von Web-Content mittels XSLT.

Abgabefrist: 19.9 24:00

Sie brauchen keine Mail der geänderten Files schicken

Stellen Sie das xslt Stylesheet bitte in das Homeverzeichnis Ihres Kundenaccounts mit dem Namen trafo-sample.xslt
UnteraufgabeTyp & PunkteBeschreibung
Konfigurieren des Web-ServersGruppenwertung (1 Pkt)Konfigurieren Sie den Apache Web-Server so, dass für alle Benutzer auf Ihrem Host (nwsXXX und Kunden-Account) Webpages via ~user erreichbar sind (beispielsweise http://nws00.lab/~nws8177777/, alternativ ist auch http://www.nws00.lab/~nws81777777/ für die Lösung der Aufgabe ). Im jeweiligen home-Verzeichnis des Unix-Benutzers soll die Web-Page im Verzeichnis public_html liegen. Weiters sollen Sie eine Startseite für Ihren Host entwerfen, auf der die Seiten aller anderen Benutzer verlinked sind (mittels anchor-Tag: a href ...). Die Seite soll ausserdem das aktuelle Datum des Servers enthalten. Dies sollten Sie mit Server-Side-Includes (SSI) machen. Beachten Sie, dass die Uhrzeit nicht notwendigerweise korrekt ist, weil die virtuellen Hosts ander getimed sind.

Von ausserhalb des Übungsnetzes können Sie die Webpages aufrufen mit http://nwsB.dslab.tuwien.ac.at.:1xx80 je nachdem wo Ihr Host liegt. Vom Host selbst mit lynx bzw. telnet.

Das Konfigurationsfile httpd.conf des Apache Web Server liegt im Verzeichnis /etc/apache. Neustarten bzw neuladen der Konfiguration können Sie mittels /etc/init.d/apache.

Die Dokumentation zum Apache Web-Server 1.3 inklusive Tutorials finden Sie unter http://httpd.apache.org/docs/. Für dieses Beispiel (inklusive nächste Unteraufgabe) wesentlich sind die Punkte URL Mapping, CGI: Dynamic Content with CGI, und Server Side Includes.
Aufsetzen von Web-PagesEinzelwertung (2 Pkt)Schreiben Sie für die beiden von Ihnen als User vrwalteten Seiten je eine Web-Page (HTML). Sie soll eine HTML-Tabelle enthalten (Table), aus der Hervorgeht, wie der jeweilige Benutzer heisst, und einen Link auf die jeweils andere Seite. Verwenden Sie für die Formatierung der beiden Pages dasselbe CSS Stylesheet bei dem die Tabellenköpfe und Tabelleninhalte anders formatiert werden. Inkludieren Sie weiters einen Hit-Counter und das Datum an dem die Seite das letzte mal erstellt worden ist. Den Counter können Sie mit CGI-Script via perl schreiben, das Datum kann zB. via Apache Server-Side-Includes eingebaut werden. Entsprechenden Beispiele finden Sie bei den Apache-Docs weiter oben.

Da ich nicht erwarte, dass Sie perl für die Übung lernen, finden Sie hier ein Sample wie manin Perl aus einem File einen Wert liest und diesen wieder zurückschreibt. Das Hier angegebene File ist aber nicht vollständig, um als CGI-Script verwendet zu werden! Sie können das File aber auch über die Command-Line mittels perl sample.pl testen.

Es ist bei diesem Beispiel möglich ein globales CGI-Script zu schreiben, dass für alle anderen Benutzer zur Verfügung steht, als auch ein lokales CGI-Script zu verwenden, dass Sie dann innerhalb Ihres public_html Verzeichnis ablegen.

Möglicherweise müssen Sie an den Executable Permissions für CGI-Scripts im httpd.conf dann etwas ändern.
Erzeugen eines XSLT StylesheetsEinzelwertung (2 Pkt) Schreiben Sie ein XSLT Stylesheet, mit dem Sie XML Dateien der Bauart sample-customers.xml File in eine HTML Tabelle umwandeln (inklusive Kopfzeile). Wenn ein oder mehrere Elemente include-only-relations-with existieren sollen nur jene Kunden tabellarisch ausgegeben werden, die ein Kind-Element relations-to-customer existiert und dessen Attribute number dem Inhalt eines include-only-relations-with Element entspricht. Existiert kein solches Feld include-only-relations-with, sollen alle Customer Elemente als Zeilen der Tabelle ausgegeben werden. Die relations-to-customer Felder sollen Sie nicht ausgeben. Verlinken Sie das erzeugte HTML File auch von Ihrem Kundenseite.

Das Übersetzen des XML Files können Sie mit dem Commando xsltproc durchführen.

Hinweis: Versuchen Sie zuerst, die Tabelle für alle Kunden zu erstellen. Das dürfte wesentlich einfacher sein und gibt einen der beiden Punkte.

Beispiel 4

Das vierte Beispiel beinhaltet das Konfigurieren von WebDAV und des HTTP-Severs (Apache).

Abgabefrist: 19.9.2005 24:00 Sie brauchen keine Mail der geänderten Files schicken

UnteraufgabeTyp & PunkteBeschreibung
Konfigurieren eines WebDAV FoldersGruppenwertung (1 Pkt) Konfigurieren Sie innerhalb des Apache einen WebDAV Folder, mit dem relativen Pfad /images (zum Document-Root / der Homepage Ihres Servers). Es soll sowohl das Lesen, als auch das Schreiben auf den Folder möglich sein! Es soll keinerlei Passworteingabe notwendig zu sein, um lesend, oder schreibend zuzugreifen.

Ausprobieren können Sie den Folder innerhalb der Umgebung mit dem Tool cadaver (klingt komisch, heisst aber so). Dieses funktioniert ähnlich einem FTP Client. Hilfe bekommen Sie nach dem Starten von cadaver mit ?.

Docu und Beispiele zu dieser und den folgenden Unteraufgaben finden Sie auf der Apache Homepage, sowie im Internet via Suchmaschinen.

Automatisches Auflisten der Bilder im WebDAV FolderGruppenwertung (1 Pkt)

Ermöglichen Sie weiters die automatisierte Erstellung einer Seite /myimages.html (oder /myimages.shtml) via SSI oder CGI-Script, die Grafikbilder, die im /images Pfad liegen darstellt (via HTML). Unter dem Bild soll der Name des Files stehen. Um die Einträge zu generieren soll über alle Verzeichnis-Einträge von /images iteriert werden. Diese automatisch erstellte Seite soll von Ihrer Startseite via HTML link erreichbar sein.

Wer SSI benutzt für den wird die Directive #exec cmd="myscript" von nutzen sein. Ein Beispiel für ein Shell-Script, dass Files in einem Verzeichnis auflistet finden Sie unter list-files-with-bash.
Konfigurieren von HTTP AuthenticationGruppenwertung (1 Pkt) Erstellen Sie ein Verzeichnis /private, dass via HTTP nur von Benutzern einer realm nwsXX (XX ist dabei Ihre Gruppennummer) erreichbar sind. Dazu soll Digest HTTP authentication verwendet werden. In dieser realm sollen alle Studierenden Ihrer Gruppe eingetragen sein, sowie die Kunden. In dieses Verzeichnis kopieren Sie bitte Ihr /etc/aliases File. Die Passwörter der Kunden sollen denen entsprechend, die Sie bei der Account-Vergabe bekommen haben.
Konfigurieren von Redirection RulesGruppenwertung (1 Pkt) Schreiben Sie 4 HTML Files, die von Ihrem Document-Root Folder erreichbar sind. Die Namen der Files sollen lauten: permanent-file.html, temp-file.html, seeother-file.html, und gone-file.html Legen Sie relativ zum Document-Root ein Verzeichnis /redirected-files an. Kopieren Sie diese Daten in das Verzeichnis redirected und benennen Sie die Original-Dateien um, indem Sie jeweils das Wort file durch oldfile ersetzen. Schreiben Sie Redirection Rules um die Files jeweils an Ihrem neuen Bestimmungsort zu matchen (welche Redirection Typ für welches File verwendet werden soll ist hoffentlich selbst-erklärend). Bei gone brauchen Sie das File nicht in redirected-files zu kopieren. Kontrollieren Sie auch via telnet (oder anderen Tools) die Statusline des HTTP Response.