PHP Sicherheit · 3 min read · Oct 25, 2025
Wie man PHP5 mit Suhosin auf Mandriva 2007 Spring absichert
Wie man PHP5 mit Suhosin auf Mandriva 2007 Spring absichert
Version 1.0
Autor: Falko Timme
Dieses Tutorial zeigt, wie man PHP5 mit Suhosin auf einem Mandriva 2007 Spring-Server absichert. Von der Suhosin-Projektseite: “Suhosin ist ein fortgeschrittenes Schutzsystem für PHP-Installationen, das entwickelt wurde, um Server und Benutzer vor bekannten und unbekannten Schwächen in PHP-Anwendungen und dem PHP-Kern zu schützen. Suhosin besteht aus zwei unabhängigen Teilen, die separat oder in Kombination verwendet werden können. Der erste Teil ist ein kleiner Patch für den PHP-Kern, der einige grundlegende Schutzmaßnahmen gegen Pufferüberläufe oder Format-String-Schwachstellen implementiert, und der zweite Teil ist eine leistungsstarke PHP-Erweiterung, die alle anderen Schutzmaßnahmen implementiert.”
Dieses Dokument kommt ohne jegliche Gewährleistung! Ich gebe keine Garantie, dass dies bei Ihnen funktioniert!
1 Vorbemerkung
Ich habe dies auf einem Mandriva 2007 Spring-Server mit der IP-Adresse 192.168.0.100 getestet.
Dieses Tutorial ist ein wenig untypisch, da Sie nichts tun müssen, um Suhosin auf Mandriva 2007 Spring zu installieren, wenn Sie PHP5 installiert haben, da Mandrivas PHP5 bereits standardmäßig mit Suhosin geliefert wird. Trotzdem denke ich, dass es sich lohnt, dieses Tutorial zu schreiben, da es die Frage beantwortet: “Was muss ich tun, um Suhosin zu installieren?” - nichts, wenn PHP5 bereits installiert ist.
2 Apache2 und PHP5 installieren (Optional)
(Dieses Kapitel ist optional, wenn Sie bereits Apache2 und PHP5 installiert haben - um zu überprüfen, ob Suhosin in Ihrem PHP5 aktiviert ist, überspringen Sie bitte das nächste Kapitel.)
Zuerst, wenn Sie Mandrivas Online-Repository (und nicht die Mandriva DVD) verwenden, um Pakete zu installieren, sollten Sie Ihre Paketdatenbank aktualisieren:
urpmi.update -aWenn Sie Apache2 und PHP5 nicht auf Ihrem Server installiert haben, installieren Sie es jetzt:
urpmi apache-mod_php libphp5_common5Eine Menge anderer Pakete wird als Abhängigkeiten zusammen mit diesen beiden Paketen installiert, wie Sie in der Ausgabe sehen können:
[root@server1 ~]# urpmi apache-mod_php libphp5_common5
Um Abhängigkeiten zu erfüllen, werden die folgenden Pakete installiert:
apache-base-2.2.4-6.2mdv2007.1.i586
apache-conf-2.2.4-4mdv2007.1.i586
apache-mod_php-5.2.1-4mdv2007.1.i586
apache-modules-2.2.4-6.2mdv2007.1.i586
apache-mpm-prefork-2.2.4-6.2mdv2007.1.i586
ccp-0.4.1-1mdk.noarch
libmm14-1.4.2-1mdv2007.1.i586
libphp5_common5-5.2.1-4.2mdv2007.1.i586
php-ctype-5.2.1-1mdv2007.1.i586
php-filter-5.2.1-0.1mdv2007.1.i586
php-ftp-5.2.1-1.1mdv2007.1.i586
php-gettext-5.2.1-1mdv2007.1.i586
php-hash-5.2.1-1mdv2007.1.i586
php-ini-5.2.1-2mdv2007.1.i586
php-json-1.2.1-3mdv2007.1.i586
php-openssl-5.2.1-4.2mdv2007.1.i586
php-posix-5.2.1-1mdv2007.1.i586
php-session-5.2.1-1mdv2007.1.i586
php-simplexml-5.2.1-1mdv2007.1.i586
php-suhosin-0.9.18-4mdv2007.1.i586
php-sysvsem-5.2.1-1mdv2007.1.i586
php-sysvshm-5.2.1-1mdv2007.1.i586
php-timezonedb-2007.3-1mdv2007.1.i586
php-tokenizer-5.2.1-1mdv2007.1.i586
php-xmlreader-5.2.1-1mdv2007.1.i586
php-xmlwriter-5.2.1-1mdv2007.1.i586
php-zlib-5.2.1-4.2mdv2007.1.i586
Möchten Sie die Installation der 27 Pakete fortsetzen? (6 MB) (Y/n)
[…]
Wie Sie sehen, wird das Paket php-suhosin automatisch installiert, sodass Ihr PHP5 standardmäßig durch Suhosin abgesichert wird.
Dann starten Sie Apache2:
/etc/init.d/httpd restartSie haben jetzt ein PHP5 mit grundlegender Funktionalität auf Ihrem Server; wenn Sie spezielle PHP5-Module benötigen, können Sie danach suchen:
urpmi --fuzzy phpWählen Sie aus der Ausgabe die Module aus, die Sie benötigen, installieren Sie sie so und starten Sie Apache2 neu:
urpmi php-bz2 php-calendar php-ctype php-curl php-dio php-dom php-eaccelerator php-enchant php-esmtp php-event php-exif php-fam php-ffmpeg php-fileinfo php-filepro php-ftp php-gd php-gettext php-gmp php-iconv php-id3 php-idn php-imap php-imlib2 php-mailparse php-mbstring php-mcache php-mcrypt php-mhash php-ming php-mysql php-mysqli php-ncurses php-newt php-odbc php-oggvorbis php-pam_auth php-pcntl php-pcre php-pear-Net_IDNA php-posix php-pspell php-readline php-recode php-session php-shmop php-simplexml php-snmp php-soap php-sockets php-sqlite php-ssh2 php-sysvmsg php-sysvsem php-sysvshm php-tclink php-tcpwrap php-tidy php-xml php-xmlrpc php-zip php5-ini/etc/init.d/httpd restart3 Details zu Ihrer PHP5-Installation abrufen
Sofern Sie nicht bereits virtuelle Hosts in Ihrer Apache-Installation erstellt haben, ist das Dokumentenstammverzeichnis der Standard-Website /var/www/html. Wir werden jetzt eine kleine PHP-Datei (info.php) in diesem Verzeichnis erstellen (wenn Sie virtuelle Hosts erstellt haben, platzieren Sie sie in einem der virtuellen Hosts, die PHP aktiviert haben) und sie in einem Browser aufrufen. Die Datei zeigt viele nützliche Details über unsere PHP-Installation an, wie die installierte PHP-Version.
vi /var/www/html/info.php| |
Jetzt rufen wir diese Datei in einem Browser auf (z.B. http://192.168.0.100/info.php):

Wie Sie sehen, ist unsere PHP-Version 5.2.1.
Wenn alles gut gegangen ist, sollten Sie jetzt Suhosin an zwei Stellen auf der Seite sehen:


Das war’s. Wenn Sie möchten, können Sie Suhosin konfigurieren (siehe http://www.hardened-php.net/suhosin/configuration.html), obwohl Suhosin mit seiner Standardkonfiguration sofort funktioniert, also stellen Sie sicher, dass Sie wissen, was Sie tun.
4 Links
Erhalte neue Beiträge in deinem Posteingang.
Kein Spam. Jederzeit abmelden.