1. ¡OFERTA! con cupón "DIRVPS": hosting por $0,01 y también VPS Linux y Windows por $0,01 el primer mes por Interserver ← publi
    Descartar aviso
Descartar aviso
Al usar este sitio web, aceptas que nosotros y nuestros socios podamos establecer cookies para fines tales como personalizar el contenido y la publicidad. Más información.

[ Cómo instalar Suhosin | Seguridad extra para PHP ]

Tema en 'Asuntos Técnicos' iniciado por WebTech, 26 Abr 2008.

  1. WebTech

    WebTech Súper Moderador Miembro del Staff Moderador CH

    Suhosin, es un sistema de protección avanzado para PHP. Fue diseñado para proteger los servidores y a usuarios contra defectos conocidos y desconocidos en PHP y su base. Suhosin se puede usar de dos diferentes formas, por separado o en la combinación. La primera forma, es un parche contra la base de PHP, que impone algunas protecciones de bajo nivel contra bufferoverflows y otros. La segunda forma, es una poderosa extensión de PHP que agrega muchísimas otras protecciones. Lo mejor de todo, Suhosin es compatible 100% con otras extensiones, como lo pueden ser ZendOptimizer y/o Eaccelerator. Más información detallada sobre porque deberías usar esta extensión: http://www.hardened-php.net/suhosin/why.html


    • Los paths usados aquí (sobre todo de php.ini) pueden variar dependiendo del servidor que uses, si es tu caso, busca el archivo php.ini en su ruta correcta.
    • Hagan esto bajo su propio riesgo, no me hago responsable si algo deja de funcionar en sus scripts a raíz de la instalación de esta extensión.

    Este es un ejemplo de un servidor con PHP 5.2.5 + ZendOptimizer 3.3.3 + eAccelerator 0.9.5.2 + Suhosin 0.9.23

    CODE, HTML o PHP Insertado:
    [root@mat22.vostrohost.db:~][B]php -v[/B]
    PHP 5.2.5
    Copyright (c) 1997-2007 The PHP Group
    Zend Engine v2.2.0, Copyright (c) 1998-2007 Zend Technologies
        with eAccelerator v0.9.5.2, Copyright (c) 2004-2006 eAccelerator, by eAccelerator
        with Zend Extension Manager v1.2.2, Copyright (c) 2003-2007, by Zend Technologies
        with Suhosin v0.9.23, Copyright (c) 2007, by SektionEins GmbH
        with Zend Optimizer v3.3.3, Copyright (c) 1998-2007, by Zend Technologies
    [root@mat22.vostrohost.db:~]
    Detallaré el proceso para instalar la extensión en particular (y no el parche), porque brinda mayores beneficios en cuanto a seguridad.

    # Descargamos la versión
    CODE, HTML o PHP Insertado:
    	wget http://download.suhosin.org/suhosin-0.9.23.tgz
    # Descomprimimos
    CODE, HTML o PHP Insertado:
    	tar -xvpzf suhosin-0.9.23.tgz
    # Preparamos la extensión a compilar
    CODE, HTML o PHP Insertado:
    	cd suhosin-0.9.23
    	phpize

    # Luego corremos los siguientes tres comandos, para configurar e instalar la extensión.

    CODE, HTML o PHP Insertado:
        	./configure
            make
            make install
    
    Ahora solo falta que agreguemos la extensión al php.ini

    # Editamos el archivo
    CODE, HTML o PHP Insertado:
        pico /usr/local/lib/php.ini
    # Al final del archivo, agregamos extension= con el lugar de la extensión, puede ser algo parecido a esto:

    CODE, HTML o PHP Insertado:
    extension=/usr/local/lib/php/extensions/no-debug-non-zts-20020429/suhosin.so
    # Reiniciamos el servidor web:

    CODE, HTML o PHP Insertado:
    /etc/init.d/httpd restart
    ¿Cómo averiguo si esta instalado correctamente?

    Como root sobre el shell corremos el comando "php -i | grep suhosin", de esta manera:
    CODE, HTML o PHP Insertado:
    [root@mat22.vostrohost.db:~][B]php -i | grep suhosin[/B]
    suhosin
    suhosin.apc_bug_workaround => Off => Off
    suhosin.cookie.checkraddr => 0 => 0
    suhosin.cookie.cryptdocroot => On => On
    suhosin.cookie.cryptkey => [ protected ] => [ protected ]
    suhosin.cookie.cryptlist => no value => no value
    suhosin.cookie.cryptraddr => 0 => 0
    suhosin.cookie.cryptua => On => On
    suhosin.cookie.disallow_nul => 1 => 1
    .......
    .......
    .......
    
    Te mostrará más líneas, si ves eso, es que está compilado correctamente.

    That's all! ;)
     
  2.  
  3. chiapashosting

    chiapashosting Usuario activo

    Excelente recurso.

    Estoy seguro que será util para todos.

    Gracias por compartirlo.

    Saludos!
     
  4. Apolo

    Apolo Administrador Miembro del Staff Administrador CH

    Excelente tutorial, muchas gracias. :aprueba:

    Saludos. :aprueba:
     
  5. josepan

    josepan Nuevo usuario

    He intentado instalar el suhosin y al correr la verificacion me tiro lo siguiente, que significa? No se ha instalado bien?

    [root@Server /]# php -i | grep suhosin
    OLDPWD => /root/suhosin-0.9.27
    _SERVER["OLDPWD"] => /root/suhosin-0.9.27
    _ENV["OLDPWD"] => /root/suhosin-0.9.27

    Desde ya gracias por la respuesta.
     
  6. WebTech

    WebTech Súper Moderador Miembro del Staff Moderador CH

    Al parecer no quedó como debe.. ¿seguiste todos los pasos?, ¿no dió error en ningún momento la compilación? ¿Qué sistema operativo, versión de PHP y suhosin estás usando?

    Saludos,
     
  7. josepan

    josepan Nuevo usuario

    Gracias webtech por tu interes. Lo solucione compilando apache desde 0. Ahora quedo funcionando barbaro.

    Gracias y saludos.
     
  8. WebTech

    WebTech Súper Moderador Miembro del Staff Moderador CH

    Excelente!, me alegra oir eso :aprueba:

    Saludos,
     
  9. 29a

    29a Nuevo usuario

    saludos al correr el comando php -v me regresa lo siguiente
    CODE, HTML o PHP Insertado:
    -bash-3.1# php -v
    PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/modules//usr/lib/php/modules/suhosin.so' - /usr/lib/php/modules//usr/lib/php/modules/suhosin.so: cannot open shared object file: No such file or directory in Unknown on line 0
    PHP 5.2.6 (cli) (built: Feb  8 2009 20:05:00)
    Copyright (c) 1997-2008 The PHP Group
    Zend Engine v2.2.0, Copyright (c) 1998-2008 Zend Technologies
        with Zend Extension Manager v1.2.2, Copyright (c) 2003-2007, by Zend Technologies
        with Zend Optimizer v3.3.3, Copyright (c) 1998-2007, by Zend Technologies
    -bash-3.1#
    
    y al correr php -i | grep suhosin
    CODE, HTML o PHP Insertado:
    PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/modules//usr/lib/php/modules/suhosin.so' - /usr/lib/php/modules//usr/lib/php/modules/suhosin.so: cannot open shared object file: No such file or directory in Unknown on line 0
    
     
  10. 29a

    29a Nuevo usuario

    jejeje olvidenlo ya di cual era el error :rolleyes::golpe:
     
  11. JorgeDaniel

    JorgeDaniel Usuario activo

    Una preguntilla, se tiene el mismo resultado instalando desde WHM al momento de compilar el apache? pues hay aparece la opcion suhosin
     
  12. WebTech

    WebTech Súper Moderador Miembro del Staff Moderador CH

    Seguramente EasyApache (el script que usa WHM para compilar apache y php) lo haga con otros valores, se me ocurre, igual con otras utilidades, pueden variar un poco, pero al final el producto resultante será el mismo, lo instales a mano o con algún automatizmo.

    Saludos,
     
  13. JorgeDaniel

    JorgeDaniel Usuario activo

    Ok, muchas gracias por sacarme de la duda... es pq en la pagina de easy apache no dice cual de los dos formas de uso que se indican en el post será el que utilizará la instalacion cito:

     


Alojamiento web, Hosting Reseller, Servidores Dedicados - All in Hosting


    
    
    
    
Blog · Sitios amigos: GuiaHosting · Unidominios · Interalta ·