Persönliche Homepages am FB3

Alle Benutzer mit einem Account im FB3-Netz können sich eine eigene Homepage (persönliche Webpräsenz) im WWW einrichten. Dabei ist zu beachten, daß der Inhalt der Webpräsenz natürlich nicht gegen die Nutzungsbedingungen verstoßen darf.

Einrichten einer Homepage

Alle Dateien, die zur persönlichen Webpräsenz eines Benutzers gehören, müssen im WWW-Verzeichnis

/home/wwwuser/USER

abgelegt werden. USER steht hier für den jeweiligen Login-Namen (Benutzernamen). Die Homepage ist dann im WWW über die URLs

http://www.informatik.uni-bremen.de/~USER/
http://www.math.uni-bremen.de/~USER/

erreichbar. Falls im WWW-Verzeichnis eine Datei home.html oder index.html existiert, wird diese beim Anwählen des genannten URL angezeigt, sonst wird stattdessen der Inhalt des Verzeichnisses aufgelistet.

Im WWW-Verzeichnis sollten keine symbolischen Links angelegt werden, die aus dem Verzeichnis herauszeigen (z.B. in das Heimverzeichnis), da dadurch die Stabilitität des Webservers beeinträchtigt werden kann.

Protokollieren von Zugriffen auf die persönlichen WWW-Seiten

Allen Benutzern steht ein Auszug aus der Logdatei (Zugriffsprotokoll) des Webservers zur Verfügung, in dem die Zugriffe auf die Webpräsenz des jeweiligen Benutzers aufgeführt sind. Die Logdatei-Auszüge stehen in

/home/wwwadmin/userlog/USER

Mehr Informationen dazu in einem separaten Artikel zu diesem Thema.

Zugriffsrechte setzen (mit ZFS-ACLs)

Die Dateien im WWW-Verzeichnis, die im Web sichtbar sein sollen, müssen für den Nutzer wwwuser lesbar sein, und alle Verzeichnisse auf dem Weg zu den betreffenden Dateien müssen zudem für wwwuser ausführbar sein.

In den meisten Fällen ist es sinnvoll, den Zugriff auf die Dateien im WWW-Verzeichnis entsprechend einzuschränken, um interne unerlaubte Nutzerzugriffe zu verhindern. Hierfür bieten sich ZFS-ACLs an. ZFS-ACLs, da die Home- und WWW-Verzeichnisse auf einem ZFS-Filesystem abgelegt sind.

Die folgenden Beispiele zeigen wie einem Benutzer wwwuser Rechte auf ein Verzeichnis zugewiesen werden können:

> ls -ld test-dir
drwx------   2 testuser      stud           2 Nov  7 11:52 test-dir

Ausführungsrecht (--x)

chmod A+user:wwwuser:execute:allow test-dir

> ls -ldv test-dir
drwx------+   2 testuser      stud           2 Nov  7 11:52 test-dir
     0:user:wwwuser:execute:allow
     1:owner@....

Das +-Zeichen zeigt an, dass ZFS-ACLs benutzt werden.

Lese- und Ausführungsrecht (r-x) setzen:

chmod A+user:wwwuser:list_directory/read_data/execute:allow test-dir

Lese-, Schreib- und Ausführungsrecht (rwx) setzen:

chmod A+user:wwwuser:list_directory/read_data/add_file/write_data/add_subdirectory/append_data/execute:allow test-dir

Die folgenden Beispiele zeigen, wie einem Benutzer wwwuser Rechte auf eine Datei zugewiesen werden können:

> ls -l test-dir/test-file
-rw------   2 testuser      stud           2 Nov  7 11:52 test-file

Leserecht (r--)

chmod A+user:wwwuser:read_data:allow test-dir/test-file

Lese- und Ausführungsrecht (r-x)

chmod A+user:wwwuser:read_data/execute:allow test-dir/test-file

Lese- Schreib- und Ausführungsrecht (rwx)

chmod A+user:wwwuser:read_data/write_data/append_data/execute:allow test-dir/test-file

Plattenplatz-Verbrauch

Da sich die WWW-Verzeichnisse aller Benutzer den verfügbaren Plattenplatz teilen müssen, sollte darauf geachtet werden, daß die persönliche Webpräsenz nicht zuviel Platz belegt. Insbesondere sollten hier keine Daten abgelegt werden, die nicht Bestandteil der Webpräsenz sind (z.B. um das Heimverzeichnis zu entlasten). Benutzer, deren Platzverbrauch ein Maximum überschreitet, werden per E-Mail benachrichtigt und gebeten, den Platzverbrauch zu reduzieren. Das aktuelle Maximum ist 200 MB für studentische Nutzer und mehrere GB für Mitarbeiter (Stand: 22.6.2009, vorher 50/200 MB)

Erstellen von HTML-Seiten

Hilfestellung beim Erstellen von HTML-Seiten findet sich z.B. im Online-Angebot von SELFHTML oder in den HTML-Help-Seiten der Web Design Group.

Erstellen von CGI-Skripten

Die CGI-Skripte der Benutzer werden auf dem FB3-Webserver über einen sogenannten CGI-Wrapper ausgeführt. Dieser erlaubt den Benutzern, eigene CGI-Skripte (und damit HTML-Formulare) bereitzustellen, ohne die Sicherheit des Webservers zu beeinträchtigen. Die Skripte laufen mit den Rechten der Benutzer, denen die jeweiligen Skripte gehören. Sie werden nur ausgeführt, wenn sie zuvor einige Sicherheitschecks bestehen. Zum Bereitstellen eines eigenen CGI-Skripts muß zunächst ein Verzeichnis cgi-bin im WWW-Verzeichnis angelegt werden:

mkdir /home/wwwuser/USER/cgi-bin

Dann kann das gewünschte Skript (hier myscript.pl) in dem Verzeichnis abgelegt und ausführbar gemacht werden:

cp myscript.pl /home/wwwuser/USER/cgi-bin
chmod 755 /home/wwwuser/USER/cgi-bin/myscript.pl

Das Skript kann nun über den folgenden URL gestartet werden:

http://www.informatik.uni-bremen.de/cgiwrap/USER/myscript.pl

Aus Quellcode nach Maschinencode übersetzte CGI-Skripte (also z.B. C-Programme) müssen unter Solaris 10 für 64 Bit übersetzt werden, sinnvollerweise direkt auf dem Host www.informatik.uni-bremen.de.

Benutzung einer Datenbank

Auf dem Webserver des FB3 läuft ein MySQL-Datenbank-System. Jeder Nutzer kann sich dort für die Verwendung in der WWW-Homepage (oder für andere Zwecke) eine Datenbank einrichten lassen. In diesem Fall bitte eine Mail an den Web-Admin schicken und darin den gewünschten Datenbanknamen, das initiale Passwort und den FB3-Benutzernamen nennen.

homepage-howto (zuletzt geändert am 2010-02-09 12:44:22 durch net)