PHP Seguridad · 3 min read · Oct 25, 2025
Cómo Asegurar PHP5 Con Suhosin En Mandriva 2007 Spring
Cómo Asegurar PHP5 Con Suhosin En Mandriva 2007 Spring
Versión 1.0
Autor: Falko Timme
Este tutorial muestra cómo asegurar PHP5 con Suhosin en un servidor Mandriva 2007 Spring. Desde la página del proyecto Suhosin: “Suhosin es un sistema de protección avanzado para instalaciones de PHP que fue diseñado para proteger servidores y usuarios de fallos conocidos y desconocidos en aplicaciones PHP y el núcleo de PHP. Suhosin viene en dos partes independientes, que pueden usarse por separado o en combinación. La primera parte es un pequeño parche contra el núcleo de PHP, que implementa algunas protecciones de bajo nivel contra desbordamientos de búfer o vulnerabilidades de cadenas de formato y la segunda parte es una poderosa extensión de PHP que implementa todas las demás protecciones.”
Este documento se presenta sin garantía de ningún tipo. ¡No emito ninguna garantía de que esto funcione para ti!
1 Nota Preliminar
He probado esto en un servidor Mandriva 2007 Spring con la dirección IP 192.168.0.100.
Este tutorial es un poco atípico porque no hay nada que necesites hacer para instalar Suhosin en Mandriva 2007 Spring si ya tienes PHP5 instalado, porque el PHP5 de Mandriva ya viene con Suhosin por defecto. De todos modos, creo que aún vale la pena escribir este tutorial porque responde a la pregunta “¿Qué debo hacer para instalar Suhosin?” - nada, si PHP5 ya está instalado.
2 Instalando Apache2 Y PHP5 (Opcional)
(Este capítulo es opcional si ya tienes Apache2 y PHP5 instalados - para verificar si Suhosin está habilitado en tu PHP5, por favor salta al siguiente capítulo.)
Primero, si usas el repositorio en línea de Mandriva (y no el DVD de Mandriva) para instalar paquetes, deberías actualizar tu base de datos de paquetes:
urpmi.update -aSi no tienes Apache2 y PHP5 instalados en tu servidor, instálalo ahora:
urpmi apache-mod_php libphp5_common5Muchos otros paquetes se instalarán como dependencias junto con estos dos paquetes, como puedes ver en la salida:
[root@server1 ~]# urpmi apache-mod_php libphp5_common5
Para satisfacer las dependencias, se van a instalar los siguientes paquetes:
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
¿Proceder con la instalación de los 27 paquetes? (6 MB) (Y/n)
[…]
Como ves, el paquete php-suhosin se instala automáticamente, por lo que tu PHP5 estará asegurado por Suhosin por defecto.
Luego inicia Apache2:
/etc/init.d/httpd restartAhora tienes un PHP5 con funcionalidad básica en tu servidor; si necesitas módulos PHP5 especiales, puedes buscarlos así:
urpmi --fuzzy phpDe la salida, selecciona los módulos que necesitas, instálalos así y reinicia 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 Obteniendo Detalles Sobre Tu Instalación de PHP5
A menos que ya hayas creado hosts virtuales en tu instalación de Apache, la raíz del documento del sitio web por defecto es /var/www/html. Ahora crearemos un pequeño archivo PHP (info.php) en ese directorio (si has creado hosts virtuales, colócalo en cualquiera de los hosts virtuales que tenga PHP habilitado) y lo llamaremos en un navegador. El archivo mostrará muchos detalles útiles sobre nuestra instalación de PHP, como la versión de PHP instalada.
vi /var/www/html/info.php| |
Ahora llamamos a ese archivo en un navegador (por ejemplo, http://192.168.0.100/info.php):

Como ves, nuestra versión de PHP es 5.2.1.
Si todo salió bien, ahora deberías ver a Suhosin mencionado en dos lugares en la página:


Eso es todo. Si lo deseas, puedes configurar Suhosin (ver http://www.hardened-php.net/suhosin/configuration.html), aunque Suhosin funcionará directamente con su configuración predeterminada, así que asegúrate de saber lo que estás haciendo.
4 Enlaces
Recibe nuevas publicaciones en tu bandeja de entrada.
No spam. Cancela la suscripción en cualquier momento.