Unterschiede zwischen den Revisionen 1 und 16 (über 15 Versionen hinweg)
Revision 1 vom 2016-09-26 09:19:20
Größe: 5986
Autor: cyu
Kommentar:
Revision 16 vom 2023-05-17 11:52:31
Größe: 4400
Autor: manal
Kommentar:
Gelöschter Text ist auf diese Art markiert. Hinzugefügter Text ist auf diese Art markiert.
Zeile 1: Zeile 1:
## page was renamed from homepage-new
Zeile 2: Zeile 3:
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. Alle Benutzer mit einem Account im FB3-Netz können sich ihre eigene Homepage (persönliche Webpräsenz) im WWW selbst [[https://usertools.informatik.uni-bremen.de/website|aktivieren.]]
Zeile 4: Zeile 5:
== Einrichten einer Homepage == == Einrichten einer Homepage nach erfolgreicher Freischaltung ==
Zeile 8: Zeile 9:
/home/wwwuser/USER /home/wwwu/username/public
Zeile 10: Zeile 11:
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 14:
http://www.informatik.uni-bremen.de/~USER/
http://www.math.uni-bremen.de/~USER/
http(s)://user.informatik.uni-bremen.de/username/
http(s)://user.math.uni-bremen.de/username/
http(s)://user.fb3.uni-bremen.de/username/
Zeile 16: Zeile 18:
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. 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.
Zeile 22: Zeile 24:
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 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 für erfolgreiche Zugriffe in
Zeile 25: Zeile 27:
/home/wwwadmin/userlog/USER /home/userlog/username
Zeile 27: Zeile 29:
Mehr Informationen dazu in einem separaten Artikel zu diesem Thema. und für Fehlermeldungen in
{{{
/home/userlog/username_err
}}}
Die Logdateien werden stündlich aktualisiert und alle 4 Wochen als username<date>.gz bzw. username_err<date>.gz archiviert.
Zeile 29: Zeile 35:
== Zugriffsrechte setzen (mit ZFS-ACLs) ==
Zeile 31: Zeile 36:
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. --(== Erweiterte Zugriffsrechte setzen (POSIX-ACL) == )--
Zeile 33: Zeile 38:
In den meisten F&auml;llen ist es sinnvoll, den Zugriff auf die Dateien im WWW-Verzeichnis entsprechend einzuschr&auml;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.
--(Das WWW-Verzeichnis eines Benutzers hat bei der Erstellung eingeschränkte Rechte. Der Benutzer selbst besitzt alle Rechte und die Gruppe '''www''', 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 37: Zeile 40:
Die folgenden Beispiele zeigen wie einem Benutzer `wwwuser` Rechte auf ein Verzeichnis zugewiesen werden können: --(In den einzelnen F&auml;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'''.)--


== 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 40: Zeile 54:
> ls -ld test-dir
drwx------ 2 testuser stud 2 Nov 7 11:52 test-dir
cp myscript.pl /home/wwwu/username/public/cgi-bin
chmod 755 /home/wwwu/username/public/cgi-bin/myscript.pl
Zeile 43: Zeile 57:
Ausführungsrecht (`--x`) Das Skript kann nun über die folgenden URLs gestartet werden:
Zeile 46: Zeile 60:
chmod A+user:wwwuser:execute:allow test-dir http(s)://user.informatik.uni-bremen.de/username/cgi-bin/myscript.pl
http(s)://user.math.uni-bremen.de/username/cgi-bin/myscript.pl
http(s)://user.fb3.uni-bremen.de/username/cgi-bin/myscript.pl
Zeile 49: Zeile 65:
{{{
> 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
}}}
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.
Zeile 117: Zeile 66:
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:service@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

Alle Benutzer mit einem Account im FB3-Netz können sich ihre eigene Homepage (persönliche Webpräsenz) im WWW selbst aktivieren.

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(s)://user.informatik.uni-bremen.de/username/
http(s)://user.math.uni-bremen.de/username/
http(s)://user.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 für erfolgreiche Zugriffe in

/home/userlog/username

und für Fehlermeldungen in

/home/userlog/username_err

Die Logdateien werden stündlich aktualisiert und alle 4 Wochen als username<date>.gz bzw. username_err<date>.gz archiviert.

== 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 www, 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.

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 die folgenden URLs gestartet werden:

http(s)://user.informatik.uni-bremen.de/username/cgi-bin/myscript.pl
http(s)://user.math.uni-bremen.de/username/cgi-bin/myscript.pl
http(s)://user.fb3.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)