Unterschiede zwischen den Revisionen 2 und 3
Revision 2 vom 2016-10-06 12:44:07
Größe: 6020
Autor: cyu
Kommentar:
Revision 3 vom 2016-10-06 14:43:49
Größe: 4072
Autor: cyu
Kommentar:
Gelöschter Text ist auf diese Art markiert. Hinzugefügter Text ist auf diese Art markiert.
Zeile 2: Zeile 2:
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. Persönliche Webpräsenzen werden nur auf Anfrage und nach Akzeptieren der gültigen Nutzungsbedingungen freigeschaltet.
Zeile 4: Zeile 4:
== Einrichten einer Homepage == == Einrichten einer Homepage nach erfolgreicher Freischaltung ==
Zeile 8: Zeile 8:
/home/wwwu/USER /home/wwwu/username/public
Zeile 10: Zeile 10:
abgelegt werden. {{{USER}}} steht hier für den jeweiligen Login-Namen (Benutzernamen). Die Homepage ist dann im WWW über die URLs abgelegt werden. {{{username}}} steht hier für den jeweiligen Login-Namen (Benutzernamen). Die Homepage ist dann im WWW über die URLs
Zeile 13: Zeile 13:
http://wwwu.informatik.uni-bremen.de/USER/
http://wwwu.math.uni-bremen.de/USER/
http://wwwu.fb3.uni-bremen.de/USER?
http://wwwu.informatik.uni-bremen.de/username/
http://wwwu.math.uni-bremen.de/username/
http://wwwu.fb3.uni-bremen.de/username/
Zeile 26: Zeile 26:
/home/wwwadmin/userlog/USER /home/userlog/username
Zeile 30: Zeile 30:
== Zugriffsrechte setzen (mit ZFS-ACLs) == == Erweiterte Zugriffsrechte setzen (POSIX-ACL) ==
Zeile 32: Zeile 32:
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. Das WWW-Verzeichnis eines Benutzers hat bei der Erstellung eingeschränkte Rechte. Der Benutzer selbst besitzt alle Rechte und die Gruppe '''wwwuser''', die Gruppen-ID unter der der Webserver läuft, das Lese- und Ausführungsrecht. Alle Anderen verfügen über keine Rechte. Die Gruppenrechte sollten nicht verändert werden, da dann die Webseiten nicht erreichbar wären.
Zeile 34: Zeile 34:
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.
In den einzelnen Fällen kann es vorkommen, den Zugriff auf die Dateien im WWW-Verzeichnis für bestimmte Benutzer zu erlauben.
Hierfür bietet sich das Unix-Kommando '''setfacl''' an, mit dem erweiterte Rechte als nicht privilegierter Nutzer vergeben werden können. Hilfe zur Verwendung von {{{setfacl}}} und {{{getfacl}}} gibt es über den Befehl '''man setfacl''' und '''man getfacl'''.
Zeile 38: Zeile 38:
Die folgenden Beispiele zeigen wie einem Benutzer `wwwuser` Rechte auf ein Verzeichnis zugewiesen werden können:
== Plattenplatz-Verbrauch ==
Das aktuelle Quota für die Webpräsenz pro Benutzer ist für Studenten '''500 MB''' und kann bei plausibler Begründung angehoben werden.

== Erstellen von HTML-Seiten ==
Hilfestellung beim Erstellen von HTML-Seiten findet sich z.B. im [[https://wiki.selfhtml.org/|Online-Angebot von SELFHTML]]. Für Nutzer, die gern PHP-Seiten erstellen, ist dieses [[http://php.net/manual/en/|PHP-Manual]] zu empfehlen.

== Erstellen von CGI-Skripten ==
Die CGI-Skripte der Benutzer werden auf dem FB3-Webserver über einen sogenannten ''SuExec-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. Zum Bereitstellen eines eigenen CGI-Skripts muß das gewünschte Skript in das bereits bestehende cgi-bin Verzeichnis kopiert und ausführbar gemacht werden:
Zeile 41: Zeile 49:
> 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 [[http://selfhtml.org/|Online-Angebot von SELFHTML]] oder in den [[http://www.htmlhelp.com/|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
cp myscript.pl /home/wwwu/username/public/cgi-bin
chmod 755 /home/wwwu/username/public/cgi-bin/myscript.pl
Zeile 113: Zeile 55:
http://www.informatik.uni-bremen.de/cgiwrap/USER/myscript.pl http://wwwu.informatik.uni-bremen.de/username/cgi-bin/myscript.pl
Zeile 115: Zeile 57:
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.
Zeile 118: Zeile 60:
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 [[mailto:www@informatik.uni-bremen.de|den Web-Admin]] schicken und darin den gewünschten Datenbanknamen, das initiale Passwort und den FB3-Benutzernamen nennen. Auf dem Webserver des FB3 läuft ein MySQL-Datenbank-System. Jeder Nutzer kann für die Verwendung in der WWW-Homepage eine Datenbank beantragen. In diesem Fall bitte eine Mail an [[mailto:www@informatik.uni-bremen.de|den Web-Admin]] schicken und darin den gewünschten Datenbanknamen und den FB3-Benutzernamen nennen. Das Mysql-Passwort wird vom Admin generiert.

Persönliche Homepages am FB3

Persönliche Webpräsenzen werden nur auf Anfrage und nach Akzeptieren der gültigen Nutzungsbedingungen freigeschaltet.

Einrichten einer Homepage nach erfolgreicher Freischaltung

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

/home/wwwu/username/public

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

http://wwwu.informatik.uni-bremen.de/username/
http://wwwu.math.uni-bremen.de/username/
http://wwwu.fb3.uni-bremen.de/username/

erreichbar. Falls im WWW-Verzeichnis eine Datei index.html oder index.php 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/userlog/username

Mehr Informationen dazu in einem separaten Artikel zu diesem Thema.

Erweiterte Zugriffsrechte setzen (POSIX-ACL)

Das WWW-Verzeichnis eines Benutzers hat bei der Erstellung eingeschränkte Rechte. Der Benutzer selbst besitzt alle Rechte und die Gruppe wwwuser, die Gruppen-ID unter der der Webserver läuft, das Lese- und Ausführungsrecht. Alle Anderen verfügen über keine Rechte. Die Gruppenrechte sollten nicht verändert werden, da dann die Webseiten nicht erreichbar wären.

In den einzelnen Fällen kann es vorkommen, den Zugriff auf die Dateien im WWW-Verzeichnis für bestimmte Benutzer zu erlauben. Hierfür bietet sich das Unix-Kommando setfacl an, mit dem erweiterte Rechte als nicht privilegierter Nutzer vergeben werden können. Hilfe zur Verwendung von setfacl und getfacl gibt es über den Befehl man setfacl und man getfacl. ZFS-ACLs, da die Home- und WWW-Verzeichnisse auf einem ZFS-Filesystem abgelegt sind.

Plattenplatz-Verbrauch

Das aktuelle Quota für die Webpräsenz pro Benutzer ist für Studenten 500 MB und kann bei plausibler Begründung angehoben werden.

Erstellen von HTML-Seiten

Hilfestellung beim Erstellen von HTML-Seiten findet sich z.B. im Online-Angebot von SELFHTML. Für Nutzer, die gern PHP-Seiten erstellen, ist dieses PHP-Manual zu empfehlen.

Erstellen von CGI-Skripten

Die CGI-Skripte der Benutzer werden auf dem FB3-Webserver über einen sogenannten SuExec-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. Zum Bereitstellen eines eigenen CGI-Skripts muß das gewünschte Skript in das bereits bestehende cgi-bin Verzeichnis kopiert und ausführbar gemacht werden:

cp myscript.pl /home/wwwu/username/public/cgi-bin
chmod 755 /home/wwwu/username/public/cgi-bin/myscript.pl

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

http://wwwu.informatik.uni-bremen.de/username/cgi-bin/myscript.pl

Benutzung einer Datenbank

Auf dem Webserver des FB3 läuft ein MySQL-Datenbank-System. Jeder Nutzer kann für die Verwendung in der WWW-Homepage eine Datenbank beantragen. In diesem Fall bitte eine Mail an den Web-Admin schicken und darin den gewünschten Datenbanknamen und den FB3-Benutzernamen nennen. Das Mysql-Passwort wird vom Admin generiert.

Homepages (zuletzt geändert am 2023-05-17 11:52:31 durch manal)