Inhaltsverzeichnis:


Support

Bitte kontaktieren Sie uns per SmartDesk, E-Mail servicedesk@id.ethz.ch oder telefonisch unter +41 44 632 77 77

Service Information


Alle Studierende und Mitarbeiter der ETH mit einem n.ethz Konto haben gleichzeitig Zugriff auf einen Speicherort für ihre persönliche Homepage. Die Homepage kann unter http://n.ethz.ch/~ginname>/ abgerufen werden (Sie ist ebenfalls über https erreichbar).


Zugriff


Die Dateien für die persönliche Homepage befinden sich im persönlichen "Nas Home" welcher durch die ETH bereitgestellt wird (dieser kann sich von demjenigen Ihres Institutes unterscheide). Der Name des Ordners ist "homepage"


Details  zur Verbindung finden sich hier


Dateien im Ordner "homepage" werden auf https://n.ethz.ch/~<username> abrufbar.

Bitte ändern Sie nicht den Namen der index.html. Diese Datei wird standardmässig angezeigt, wenn https://n.ethz.ch/~<loginname> geladen wird. Die index.html kann zum Beispiel mit einem Standard Texteditor verändert werden. Veränderungen an dieser Datei werden sofort online angezeigt, möglicherweise müssen Sie ihr Browserfenster erneuern.


Zusätzliche Informationen


Sie können Ihre Homepage mittels PHP und CGI erweitern, eine Datenbank oder Nutzer-Authen-tifizierung hinzufügen.


Ordner schützen

Authentifizierung mit einer .htaccess.n Datei

Wenn nur bestimmte Personen auf Ihre Ordner zugreifen sollen, können Sie diese mit einer Au-thentifizierung versehen und ihre eigene User-Verwaltung (Datei-basiert) oder die zentrale User-Verwaltung (AAI basiert) benutzen.

Erstellen Sie eine Datei namens .htaccess.n im gesicherten Verzeichnis /nas/<user>/<safedir>. Ersetzen Sie <user> mit Ihrem Usernamen und <safedir> mit dem Namen des Verzeichnisses welches Sie schützen wollen. Bitte beachten: Der Name lautet .htaccess.n und nicht .htaccess.

Konfigurieren Sie nun eine der beiden folgenden Methoden.

Datei-basierte Authentifikation

Erstellen Sie eine .htpasswd Datei mit Ihren Usern und speichern Sie es unter:  /nas/<user>/<safedir> directory.

Fügen Sie folgende Zeilen

SSLRequireSSL
AuthType Basic
AuthBasicProvider file
AuthName "File basierte Authentisierung"
AuthUserFile /nas/<user>/<safedir>/.htpasswd
require valid-user

in die Konfigurationsdatei /nas/<user>/<safedir>/.htaccess.n hinzu. Dies erlaubt allen Usern in Ihrer .htpasswd Datei den Zugriff auf das Verzeichnis.

Wenn Sie für einige User einen eingeschränkten Zugriff erteilen wollen, ersetzen Sie

require valid-user

mit

require user <user1> <user2> ... etc.

in Ihrer .htpasswd Datei.

AAI-basierte Authentifizierung

Beispiel: Beschränkung auf gültige AAI-Benutzer

Fügen Sie folgende Zeilen

AuthType shibboleth
ShibRequireSession On
ShibRedirectToSSL 443
require valid-user

in die Konfigurationsdatei /nas/<user>/<safedir>/.htaccess.n hinzu. Dies erlaubt allen Users mit einem AAI User-Account den Zugriff auf das Verzeichnis.

Wenn Sie für einige User mit einer gesonderten AAI-ID (<unique id user1>, <unique id user2>, ...) einen eingeschränkten Zugriff erteilen wollen, ersetzen Sie

require valid-user

mit

require uniqueID <unique id user1> <unique id user2> etc.

AAI-Benutzer müssen Ihnen ihre ID mitteilen. Sie finden diese unter
http://n.ethz.ch/shibboleth-test/show.

Beispiel: Einschränkung auf AAI-Benutzer mit eMail

AuthType shibboleth
ShibRequireSession On
ShibRedirectToSSL 443
require mail johndoe@student.ethz.ch

Benutzer müssen Ihnen ihre registrierte eMail mitteilen. Externe Mailprovider wie gmail, yahoomail, hotmail,... werden nicht funktionieren. AAI-Anwender finden ihre Attribute unter: http://n.ethz.ch/shibboleth-test/show.

Erzwungende Verschlüsselung

Laut der ETH BOT, dürfen nur verschlüsselte Passwörter (Bspw. Mittels der Nutzung von HTTPS) über das Netz übertragen werden. Um http-Zugriff in der Datei-basierten Authentifizierung zu un-terbinden, fügen Sie

SSLRequireSSL

zu Ihrer .htaccess.n Datei.

Jeder Zugriff auf http:// führt zur Anzeige einer Fehlerseite mit dem Fehlercode 403 (Forbidden).

Dynamische Web Sites, Scripting

Um heutzutage eine dynamische Webseite zu designen gibt es mehre Möglichkeiten. Sie können Ihre eigenen Programme schrieben oder bereits bestehende (z.B. ein Forum) hinzufügen.

PHP

PHP Scripts werden mittels suPHP ausgeführt, das bedeutet die Skripte laufen unter Ihrer User-ID

Skripte müssen die Endung .php. aufweisen

Configured options:

allow_url_fopen   off
display_errors    off
register_globals off
safe_mode         off

FAQ

Wie erhalte ich zusätzliche Informationen über das verfügbare PHP?

Erstellen Sie ein Skript (z. B. info.php) mit dem folgenden Inhalt:

<?php
phpinfo();
?>

Mein neu erstelltes oder kopiertes Skript funktioniert nicht.

Bitte beachten Sie, dass auch PHP-Skripte ausführbar sein müssen. Folgen Sie den Anweisungen auf der CGI-Dokumentationsseite und machen Sie das Skript ausführbar.

CGI

Das Common Gateway Interface (CGI) ist eine Apache-Erweiterung welche dem User erlaubt, Skripte mit persönlichen Rechten zu erstellen. Hierzu ist der Skript-Inhalt mit der Hilfe eines Wrap-pers (suexec) transformiert.

Falls Sie damit nicht vertraut sind, lesen Sie bitte die offizielle Apache Dokumentation oder den Wikipedia-Eintrag.

cgi-bin Directory

Aus Sicherheitsgründen sind Skripte nur innerhalb des cgi-bin Verzeichnisses erlaubt. Zusätzlich müssen sie die Endung .cgi aufweisen.

Creating executable scripts

Zur Zeit kann DFS keine Dateien als ausführbar kennzeichen. Daher müssen neu-erstelle Skripte mittels eines smclient-Kommandos angepasst werden. Dies kann unter Unix an einem slab-Rech-ner in den Computerräumen geschehen oder per Rempote-Zugriff:

$ smbclient //n.ethz.ch/user -Ud\\user
Password:
Domain=[D] OS=[Unix] Server=[Samba 3.0.26a-SerNet-RedHat]
smb: \> cd cgi-bin
smb: \cgi-bin\> chmod 755 test.cgi

Sie können die "Pushing string of 'unlimited' length into non-SMB buffer!" Nachricht ignorieren.


Environmental variables

Um die Umgebungsvariablen anzuzeigen, erstellen Sie ein Beispiel-Skript mit folgendem Inhalt:

#!/usr/bin/perl
##
##  printenv -- demo CGI program which just prints its environment
##

print "Content-type: text/plain\n\n";
foreach $var (sort(keys(%ENV))) {
    $val = $ENV{$var};
    $val =~ s|\n|\\n|g;
    $val =~ s|"|\\"|g;
    print "${var}=\"${val}\"\n";
}

Nun kopieren Sie dies als printenv.cgi in Ihr cgi-bin Verzeichnis, machen Sie es ausführbar und rufen es über URL http://n.ethz.ch/student/user/cgi-bin/printenv.cgi auf.

Interpreter

Der Webserver läuft unter Linux. Sie können daher den Standard-Interpreter nutzen. Beispiele:

  • /usr/bin/perl
  • /bin/bash
  • /usr/bin/python

 

Security

Bitte seien Sie bei der Nutzung von Scripts vorsichtig. Da die Skripte in Ihrem Home-Verzeich-nis ausgeführt werden kann es im schlimmsten Falle zu Daten-Verlust kommen (dies gilt ebenfalls für PHP.

Debugging

Um die Suche und Behebung von Fehlern zu unterstützen, existiert ein Webserver Error-Log, welches „live“ aktualisiert wird:

https://n.ethz.ch/cgi-bin/error_log.cgi

Nach dem erneutem Laden der Seite ist die Ausgabe auf dem neuesten Stand (tail -f 50 error_log).



MySQL Datenbank


Dynamische Websiten benötigen oftmals eine Datenbank. Sie haben die Möglichkeit, eine Daten-bank unter (aktuell) MySQL 4.1.18 mit 50MB Speicherplatz zu bekommen. Das webbasierte Ad-min Tool, phpMyAdmin wird zentral von den Informatikdiensten unter folgendem Link bereitgestellt: http://www.phpmyadmin.ethz.ch

Aktivieren/Löschen Sie ihre Datenbank im IT-Shop: https://itshop.ethz.ch/.


Vorschriften


Eine persönliche Webseite (Homepage) steht allen ETH Angestellten und Studenten kostenlos zur Verfügung. Es ist keine Anmeldung erforderlich, der Dienst wird im Verzeichnis homepage im zentralen persönlichen Home-Verzeichnis bereitgestellt

Die Nutzung unterliegt den Benutzungsordnung für Telematik an der ETH Zürich

Besonders zu beachten ist Abschnitt 3 in Artikel 8ff.

Mit gesundem Menschenverstand sollte jedem ersichtlich sein, welcher Inhalt auf ETH-Seiten ver-boten ist: Webseiten mit pornographischem, sexistischen oder politisch unkorrektem Inhalt sowie kommerzielle Werbung sind nicht erlaubt. Die Verbreitung von urheberrechtlich ge-schütztem Material ist verboten!

Jegliche Zuwiderhandlung wird rechtliche Konsequenzen nach sich ziehen Bitte beachten Sie weiter die Benutzungsordnung für Telematik an der ETH Zürich (BOT):

https://rechtssammlung.sp.ethz.ch/Dokumente/203.21en.pdf


  • No labels