suExec neu compilieren

Bei der Installtion vom Webserver und Confixx wurde mal wieder nicht an suExec gedacht. suExec wurde mit einem falschem AP_DOC_ROOT compiliert, da Hilft kein linken des dort eingestellten compilieren AP_DOC_ROOT.

Einfach suExec neu compilieren. Schnell, sauber und ohne Probleme.

Die passende Source-Packete sind unter http://archive.apache.org/dist/httpd/ zu finden.

# Verzeichniswechsel
cd /usr/local/src/
# Download und auspacken vom Source-Packet:
wget http://archive.apache.org/dist/httpd/httpd-2.2.9.tar.gz
tar xzfz httpd-2.2.9.tar.gz
cd httpd-2.2.9
# Konfiguration starten, kann einige Minuten in Anspruch nehmen
./configure
# Verzeichniswechsel
cd support
# Die suexec.h bearbeiten und AP_DOC_ROOT anpassen
vi suexec.h
#define AP_DOC_ROOT "/home/www"
#define AP_HTTPD_USER "www-data"
#define AP_LOG_EXEC "/var/log/apache2/suexec.log"
#define AP_USERDIR_SUFFIX "html"

In der suexec.h bedeutden # am Satzanfang nicht, dass die Zeile auskommentiert wird.
Nach speichern und schließen von vi, muss nun suExec compiliert werden.

# suExec compilieren
make suexec
# suExec testen
./suexec -V
# Ausgabe
-D AP_DOC_ROOT="/home/www"
-D AP_GID_MIN=100
-D AP_HTTPD_USER="www"
-D AP_LOG_EXEC="/var/log/apache2/suexec.log"
-D AP_SAFE_PATH="/usr/local/bin:/usr/bin:/bin"
-D AP_UID_MIN=100
-D AP_USERDIR_SUFFIX="html"

Hier noch einmal AP_DOC_ROOT überprüfen ob dort der richtige Pfad angeben wurde.

# die alte suExec durch die neue suExec ersetzen
cp suexec /usr/lib/apache2/
# Rechte für suExec anpassen
chmod 4755 /usr/lib/apache2/suexec

Hunger???

www.schlecker.de