WWW-Server Apache

Erstellen einer eigenen Homepage

Einstellen der notwendigen File-Rechte

Verwendung von CGI´s (Perl-Skripts) und SHTML

Notwendige Schritte für die Wartung der Web-Seiten via FTP

Seitenende

1.)    Erstellen einer eigenen Homepage

Standardmäßig läuft auf der Musterinstallion bereits der WWW-Server Apache. Sie können auf diese Seiten über das Internet unter http://IP_LINUX zugreifen, wobei IP_LINUX eine gültige Netzwerkadresse ihres Linuxrechners ist
(z.B.: schuleigene Basisadresse+5 )

Sie sehen damit eine Dokumentation im HTML-Format, in der viele weitere Möglichkeiten von Apache beschrieben werden wie etwa Verwendung von Shtml, Privaten Bereichen (d.h. Zugriff auf bestimmte Seiten ist nur nach gültiger Authentifizierung möglich,....)

Falls sie eigene Seiten plazieren wollen, müssen sie diese Seiten unter /usr/local/httpd/htdocs speichern. (Dieser Pfad ist standardmäßig eingestellt). Beachten sie, daß Linux zwischen Klein- und Großbuchstaben unterscheidet (d.h. wenn sie eine Datei "Seite1.html" nennen und in einer anderen Seite einen Link mit dem Ziel "seite1.html" definieren führt dies zu einem Fehler)

=> TIP: Verwenden Sie grundsätzlich nur Kleinbuchstaben in den Dateinamen und halten sie sich auch bei der Definition ihrer Links daran.

Wenn sie ihre Seiten unter dem oben angegebenen Pfad ablegen und die Startseite index.html nennen, haben sie ihre Homepage. Zuvor sollten sie jedoch die bereits vorhandene Datei "index.html" in z.B: apache.html umbenennen um den Zugriff auf die Serverdokumentation nicht zu verlieren. Mit http://IP_LINUX/apache.html können sie dann noch immer die Dokumentation lesen.

2.)    Einstellen der notwendigen File-Rechte

Wenn sie die Dateien nun auf ihren Linuxrechner übertragen haben und danach einen Webzugriff auf diesen Server versuchen, werden sie eine Fehlermeldung bekommen, die sinngemäß lautet:
                           Sie haben keine Zugriffsberechtigung für diese Datei
Der Grund liegt in den fehlenden Dateirechten ihrer HTML-Seiten. Linux unterscheidet 3 Arten von Benutzern beim Dateizugriff:

a.)    Der Besitzer (owner)
b.)    Die Besitzergruppe (group)
c.)    alle Anderen (other)

wobei jeder Gruppe

zugewiesen werden können. Der Befehl um Filerechte zu verändern lautet: chmod

Der Befehl chmod 764 Datei.test bewirkt, daß der Besitzer dieser Datei sie lesen, schreiben und ausführen darf, die Besitzergruppe darf sie nicht ausführen und alle anderen dürfen sie nur lesen. Da Internetzugriffe anonym sind (ohne Anmeldung am Rechner) sind für diese Dateien die Rechte für die Gruppe "other" wichtig, die auf read eingestellt werden müssen.

=> Richtiger Modus für alle Webdateien: 644 (Besitzer darf auch schreiben, alle dürfen lesen)

Wenn ihre Homepage (und das ist wahscheinlich bald der Fall) aus mehreren Verzeichnissen besteht, müssen die Verzeichnisse selbst das execute - Bit tragen. Damit müssen diese Einträge mit dem Modus 755 (jeder darf lesen und ausführen) versehen werden.

Die dafür notwendigen Schritte können in einem File gespeichert werden.
z.B: pico /usr/local/httpd/rechte_sichern
im Editor geben sie dann folgende Zeilen ein:

    #! /bin/bash
    cd /usr/local/httpd/htdocs
    find -type d -exec chmod 755  \{}  \;
    find -type f -exec chmod 644  \{}  \;

Speichern sie danach diese Datei und versehen sie sie mit chmod 700 /usr/local/httpd/rechte_sichern mit dem Execute-Bit.
Wenn sie nun neue Seiten für den Apache überspielen, müssen sie nur noch mit cd /usr/local/httpd ins Verzeichnis wechseln. Rufen sie danach mit ./rechte_sichern diese "Batchdatei" auf, die alle Dateien mit dem Modus 644 (Lesen für alle) und alle Verzeichnisse mit dem notwendigen Modus 755 versieht.

3.)    Verwendung von CGI´s (Perl-Skripts) und SHTML

Die Konfigurationsdateien für den Web-Server Apache liegen in /etc/httpd. In diesen Dateien (access.conf, mime.conf und httpd.conf ) werden Einstellungen wie ServerRoot (Standard=/usr/local/httpd/htdocs) und CGI-Verzeichnis (Standard=/usr/local/httpd/cgi-bin) vorgenommen. Der WebServer ist mit den Voreinstellungen der Standardinstallation bereits voll funktionsfähig.

Wie man ServerSideIncludes (SSI) und CGI verwendt, können Sie auf dieser Seite nachlesen.

4.)    Notwendige Schritte für die Wartung der Web-Seiten via FTP

Wenn man die Web-Seiten via FTP warten will sind folgende Schritte notwendig:

a.)    Starten des FTP-Servers:

Einloggen als root-Benutzer -> yast aufrufen -> Administration des Systems -> Netzwerk konfigurieren -> Netzwerkdienste konfigurieren -> inetd starten - JA -> portmap starten - NEIN -> News From .... - WEITER -> yast verlassen (ESC-TASTE)

Damit wird der Dienst inetd gestartet, der u.a. FTP- und TELNET Zugriffe auf den Rechner ermöglicht. (Die dadurch gestarteten Dienste werden durch das File /etc/inetd.conf eingestellt). Es ist auch möglich die Dienste so einzuschränken, daß nur aus dem lokalen Netzwerk aber nicht aus dem Internet zugegriffen werden kann. (über die Datei /etc/hosts.allow)

b.)    Anlegen eines Benutzers für die Wartung (Nicht notwendig, aber empfohlen)

Einloggen als root-Benutzer -> yast aufrufen -> Administration des Systems -> Benutzerverwaltung

z.B:

Benutzername web
.....  
Home-Verzeichnis   /usr/local/httpd/htdocs
Paßwort: *****

Benutzer mit F4 anlegen, mit F10 Maske verlassen und mit ESC yast verlassen

c.)   Die bereits existierenden Dateien unter /usr/local/httpd/htdocs müssen nun dem neuen Benutzer zugewiesen werden, damit dieser sie bearbeiten kann:

chown -R web /usr/local/httpd/htdocs

Mit diesem Befehl (change owner) werden alle Dateien im Verzeichnis htdocs und darunter (-R: rekursiv) dem Benutzer web zugewiesen.

d.)    Nun kann man via FTP-Client (z.B: WS_FTP oder Windows Commander) von z.B. einer Win95-WS HTML-Seiten übertragen. Beim Übertragen kann man bei WS_FTP unter Options->Session einstellen, daß nur Kleinbuchstaben in den Dateinamen verwendet werden.

e.)    Telnet auf den Linux-Rechner als Web-Benutzer und die FileRechte passend einstellen. (siehe Punkt 2)
(Beim Programm Windows Commander lassen sich die Attribute bereits während der FTP-Verbindung mit dem Menüpunkt "Dateien | Dateiattribute verändern" richtig einstellen.)

Für eventuelle Rückfragen zu dieser Dokumentation: mailto: Gerald Stachl
Homepage des BRG Wr. Neustadt


1. Seite Linuxrechner als Internetserver mod_ssl für Apache-Server

Letzte Änderung am 13. April 2002.