Apache Configuration · 2 min read · Jan 29, 2026
Ejecutando Vhosts Bajo UIDs/GIDs Separados Con Apache2 mpm-itk En Debian Etch
Ejecutando Vhosts Bajo UIDs/GIDs Separados Con Apache2 mpm-itk En Debian Etch
Versión 1.0
Autor: Falko Timme
Este artículo explica cómo puedes instalar y configurar apache2-mpm-itk en un servidor Debian Etch. apache2-mpm-itk es un MPM (Módulo de Procesamiento Múltiple) para el servidor web Apache 2. mpm-itk te permite ejecutar cada uno de tus vhosts bajo un UID y GID separados; en resumen, los scripts y archivos de configuración para un vhost ya no tienen que ser legibles para todos los demás vhosts. mpm-itk funciona con mod_php porque mpm-itk se basa en el MPM prefork tradicional, lo que significa que no es multihilo. Esto significa que ya no necesitas usar suExec o suPHP para ejecutar los scripts PHP de un sitio web como un usuario separado.
¡Este documento se proporciona sin garantía de ningún tipo! No emito ninguna garantía de que esto funcione para ti!
1 Nota Preliminar
Asumo que tienes una instalación de Apache2 funcionando con mod_php en tu servidor Debian Etch.
Por consideraciones de velocidad, echa un vistazo a http://blog.stuartherbert.com/php/2008/04/19/using-mpm-itk-to-secure-a-shared-server/.
Por consideraciones de seguridad, visita http://mpm-itk.sesse.net/.
2 Instalando apache2-mpm-itk
apache2-mpm-itk está disponible como un paquete de Debian para Debian Etch, así que todo lo que tenemos que hacer es ejecutar
apt-get install apache2-mpm-itk
3 Configurando apache2-mpm-itk
apache2-mpm-itk se configura por vhost, es decir, no tenemos que establecer ninguna opción global, y solo hay una directiva que necesitamos establecer en un vhost, AssignUserId, que toma dos parámetros, el nombre de usuario y el grupo con el que se ejecutará el vhost.
En este ejemplo usaré el vhost predeterminado de Debian Apache (puedes encontrar su configuración en /etc/apache2/sites-available/default) con la raíz del documento /var/www (si tienes vhosts diferentes, ajusta esto a tu situación), y quiero que este vhost se ejecute como el usuario web1_admin y el grupo web1.
Si el usuario y el grupo no existen ya, podemos crearlos de la siguiente manera:
groupadd web1
useradd -s /bin/false -d /home/web1_admin -m -g web1 web1_admin
Luego abrimos nuestra configuración de vhost y agregamos las siguientes líneas:
| [...] |
Por ejemplo:
vi /etc/apache2/sites-available/default
| NameVirtualHost * |
Reinicia Apache después:
/etc/init.d/apache2 restart
¡Eso es todo!
4 Enlaces
- apache2-mpm-itk: http://mpm-itk.sesse.net
- Apache: http://httpd.apache.org
- Debian: http://www.debian.org
Recibe nuevas publicaciones en tu bandeja de entrada.
No spam. Cancela la suscripción en cualquier momento.