PHP Seguridad · 2 min read · Oct 24, 2025

Cómo Duro PHP5 Con Suhosin En OpenSuSE 10.2

Cómo Duro PHP5 Con Suhosin En OpenSuSE 10.2

Versión 1.0
Autor: Falko Timme

Este tutorial muestra cómo endurecer PHP5 con Suhosin en un servidor OpenSuSE 10.2. 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 viene sin garantía de ningún tipo! No emito ninguna garantía de que esto funcione para usted.

1 Nota Preliminar

He probado esto en un servidor OpenSuSE 10.2 con la dirección IP 192.168.0.100.

Este tutorial es un poco atípico porque no hay nada que necesite hacer para instalar Suhosin en OpenSuSE 10.2 si ya tiene PHP5 instalado, porque el PHP5 de OpenSuSE ya viene con Suhosin por defecto. De todos modos, creo que todavía vale la pena escribir este tutorial porque responde a la pregunta “¿Qué tengo que hacer para instalar Suhosin?” - nada, si PHP5 ya está instalado.

2 Instalando Apache2 Y PHP5 (Opcional)

(Este capítulo es opcional si ya tiene Apache2 y PHP5 instalados - para verificar si Suhosin está habilitado en su PHP5, por favor salte al siguiente capítulo.)

Si no tiene Apache2 y PHP5 instalados en su servidor, instálelo ahora:

yast2 -i apache2 apache2-devel apache2-mod_perl apache2-mod_php5 apache2-prefork perl-HTML-Parser perl-HTML-Tagset perl-Tie-IxHash perl-URI perl-libwww-perl php5 php5-devel zlib zlib-devel

Ahora configure su sistema para iniciar Apache al arrancar:

chkconfig --add apache2

Luego inicie Apache2:

/etc/init.d/apache2 start

Ahora tiene un PHP5 con funcionalidad básica en su servidor; si necesita módulos PHP5 especiales, puede iniciar YaST y buscar paquetes PHP5:

yast2

Vaya a Software > Gestión de Software:

Luego use la función de búsqueda y busque php5:

Después, puede marcar los paquetes deseados para instalación:

Alternativamente, puede instalar los paquetes en la línea de comandos así:

yast2 -i php5-bcmath php5-bz2 php5-calendar php5-ctype php5-curl php5-dbase php5-dom php5-ftp php5-gd php5-gettext php5-gmp php5-iconv php5-imap php5-ldap php5-mbstring php5-mcrypt php5-mhash php5-mysql php5-ncurses php5-odbc php5-openssl php5-pcntl php5-pgsql php5-posix php5-shmop php5-snmp php5-soap php5-sockets php5-sqlite php5-sysvsem php5-tokenizer php5-wddx php5-xmlrpc php5-xsl php5-zlib php5-exif php5-fastcgi php5-pear php5-sysvmsg php5-sysvshm

Luego reinicie Apache:

/etc/init.d/apache2 restart

3 Obteniendo Detalles Sobre Su Instalación PHP5

A menos que ya haya creado hosts virtuales en su instalación de Apache, la raíz del documento del sitio web predeterminado es /srv/www/htdocs. Ahora crearemos un pequeño archivo PHP (info.php) en ese directorio (si ha creado hosts virtuales, colóquelo 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 /srv/www/htdocs/info.php

| |

Ahora llamamos a ese archivo en un navegador (por ejemplo, http://192.168.0.100/info.php):

Como puede ver, nuestra versión de PHP es 5.2.0.

Si todo salió bien, ahora debería ver a Suhosin mencionado en dos lugares en la página:

Eso es todo. Si lo desea, puede configurar Suhosin (ver http://www.hardened-php.net/suhosin/configuration.html), aunque Suhosin funcionará directamente con su configuración predeterminada, así que asegúrese de saber lo que está haciendo.

4 Enlaces

Share: X/Twitter LinkedIn

Recibe nuevas publicaciones en tu bandeja de entrada.

No spam. Cancela la suscripción en cualquier momento.