
<?php echo `whoami`; ?>
Entonces esto está devolviendo 'root' y no sé cómo evitarlo. Estoy usando WebHost Manager/CPanel, que se supone que crea múltiples usuarios/vhosts y hace que Apache genere su proceso como ese usuario/grupo. Esto no está sucediendo.
Si inicio sesión en WHM y abro la sección Configuración de PHP y SuExec, mis configuraciones son:
Default PHP Version (.php files) 5
PHP 5 Handler cgi
PHP 4 Handler none
Apache suEXEC on
¿Qué ocurre? ¿Cómo puedo hacer que Apache se ejecute como el usuario correcto en lugar de como root?
Respuesta1
Si desea que cada sitio se ejecute como su propio usuario, la configuración correcta del controlador PHP 5 es 'suPHP' en lugar de 'CGI'. Una vez que cambie esto, debería ver que sus whoami
informes son de usuarios individuales.
Tenga en cuenta que es posible que deba ejecutar EasyApache y seleccionar "Mod SuPHP" durante ese proceso para recompilar Apache/PHP para que esta opción esté disponible primero. Esto se hace bajo:
Principal >> Software >> EasyApache (Actualización de Apache) o en la línea de comando/scripts/easyapache
Respuesta2
Lo más probable es que Apache se esté ejecutando como usuario de Apache, pero gracias a SuExec, los scripts PHP que son propiedad de root se ejecutarán como root. Es por eso que su whoami
comando devuelve el usuario root.
Si cambia el propietario de los archivos en la raíz de su documento para que sea "apache" o "www-data" (el que utilice su servidor), ese mismo comando devolverá el nuevo propietario del archivo.
Probablemente también valga la pena asegurarse de que todos sus scripts PHP chmod 555
y directorios no sean propiedad del mismo usuario que los archivos. Esto permitirá que CGI ejecute los scripts, pero significará que si alguna vez se encuentra una falla en uno de los scripts PHP, no podrá modificarse a sí mismo ni a ninguno de los otros scripts y no podrá crear uno nuevo. script en cualquiera de los directorios. Todavía hay muchas cosas que un atacante podría hacer si encontrara una falla en un script PHP, pero cualquier cosa que pueda hacer para ponérselo más difícil vale la pena.