PHP Security · 3 min read · Oct 25, 2025
Come indurire PHP5 con Suhosin su Mandriva 2007 Spring
Come indurire PHP5 con Suhosin su Mandriva 2007 Spring
Versione 1.0
Autore: Falko Timme
Questo tutorial mostra come indurire PHP5 con Suhosin su un server Mandriva 2007 Spring. Dalla pagina del progetto Suhosin: “Suhosin è un sistema di protezione avanzato per le installazioni PHP progettato per proteggere server e utenti da difetti noti e sconosciuti nelle applicazioni PHP e nel core di PHP. Suhosin è composto da due parti indipendenti, che possono essere utilizzate separatamente o in combinazione. La prima parte è una piccola patch contro il core di PHP, che implementa alcune protezioni a basso livello contro buffer overflow o vulnerabilità di formato stringa e la seconda parte è una potente estensione PHP che implementa tutte le altre protezioni.”
Questo documento viene fornito senza alcuna garanzia! Non rilascio alcuna garanzia che questo funzionerà per te!
1 Nota Preliminare
Ho testato questo su un server Mandriva 2007 Spring con l’indirizzo IP 192.168.0.100.
Questo tutorial è un po’ atipico perché non c’è nulla che devi fare per installare Suhosin su Mandriva 2007 Spring se hai PHP5 installato, perché PHP5 di Mandriva già include Suhosin per impostazione predefinita. Comunque, penso che valga la pena scrivere questo tutorial perché risponde alla domanda “Cosa devo fare per installare Suhosin?” - nulla, se PHP5 è già installato.
2 Installazione di Apache2 e PHP5 (Opzionale)
(Questo capitolo è opzionale se hai già installato Apache2 e PHP5 - per controllare se Suhosin è abilitato nel tuo PHP5, per favore salta al capitolo successivo.)
Prima di tutto, se utilizzi il repository online di Mandriva (e non il DVD di Mandriva) per installare pacchetti, dovresti aggiornare il tuo database di pacchetti:
urpmi.update -aSe non hai Apache2 e PHP5 installati sul tuo server, installali ora:
urpmi apache-mod_php libphp5_common5Molti altri pacchetti verranno installati come dipendenze insieme a questi due pacchetti, come puoi vedere nell’output:
[root@server1 ~]# urpmi apache-mod_php libphp5_common5
Per soddisfare le dipendenze, i seguenti pacchetti verranno installati:
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
Procedere con l’installazione dei 27 pacchetti? (6 MB) (Y/n)
[…]
Come vedi, il pacchetto php-suhosin viene installato automaticamente, quindi il tuo PHP5 sarà indurito da Suhosin per impostazione predefinita.
Poi avvia Apache2:
/etc/init.d/httpd restartOra hai un PHP5 con funzionalità di base sul tuo server; se hai bisogno di moduli PHP5 speciali, puoi cercarli in questo modo:
urpmi --fuzzy phpDall’output, scegli i moduli di cui hai bisogno, installali in questo modo e riavvia Apache2:
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 Ottenere Dettagli sulla Tua Installazione di PHP5
A meno che tu non abbia già creato host virtuali nella tua installazione di Apache, la root del documento del sito web predefinito è /var/www/html. Ora creeremo un piccolo file PHP (info.php) in quella directory (se hai creato host virtuali, posizionalo in uno degli host virtuali che ha PHP abilitato) e lo chiameremo in un browser. Il file mostrerà molti dettagli utili sulla nostra installazione di PHP, come la versione di PHP installata.
vi /var/www/html/info.php| |
Ora chiamiamo quel file in un browser (ad es. http://192.168.0.100/info.php):

Come vedi, la nostra versione di PHP è 5.2.1.
Se tutto è andato bene, dovresti ora vedere Suhosin menzionato in due posti nella pagina:


Questo è tutto. Se vuoi, puoi configurare Suhosin (vedi http://www.hardened-php.net/suhosin/configuration.html), anche se Suhosin funzionerà subito con la sua configurazione predefinita, quindi assicurati di sapere cosa stai facendo.
4 Link
Ricevi i nuovi post nella tua casella di posta.
Nessuno spam. Disiscriviti in qualsiasi momento.