Instalar Apache MySQL - PHP
27 de Enero de 2005
PHP, Programación web, Servidores web, Apache
Editaremos el Archivo php.ini
; Resource Limits ;
max_execution_time = 30 --> máximo tiempo de ejecución de un script php. Si en 30 segunos no obtiene respuesta el script se para y sale un "timeout" como errror.
memory_limit = 8M --> tamaño maximo que puede consumir un script php.
; File Uploads ;
Si queremos enviar ficheros al servidor, aqui lo podemos permitir:
file_uploads = On --> si queremos o no queremos
upload_tmp_dir = F:\webs\public --> el directorio donde se copiarán los archivos que nos suban.
upload_max_filesize = 1M --> el tamaño máximo que queremos que nos envien.
Una caracteristica muy importante, especialmente para hostings, es la posibilidad de no permitir algunas de las funciones de PHP. La razon es muy sencilla: algunas funciones de PHP como system, proc, etc hacen y permiten ejecutar comandos del sistema, lo que puede provocar problemas de seguridad. Por ejemplo, un usuario quizas quiera ejecutar un comando "no peligroso" como uptime, pero otro usuario mal intencionado puede utilizar otros comandos del sistema para extraer informacion comprometida de la maquina: como id, who, cat, etc.
Hosting gratuitos como Lycos, iespana tienen capadas estas funciones por lo comentado arriba, es potencialmente peligroso.
Para no permitir la ejecucion concreta de algunas funciones en PHP (no confundir con comandos) es con:
disable_functions =exec,system,shell_exec,readfile
Aunque las funciones en PHP son exec(), debemos ponerlo sin ().
Por ejemplo en Mi Arroba:------Warning: fsockopen, pfsockpen, show_source, php_uname, ini_alter, ini_restore, ini_set, getrusage, get_current_user, set_time_limit, getmyuid, getmypid, dl, leak, listen, chown, chmod, chgrp, realpath, tmpfile, link() has been disabled for security reasons.
Otra manera es hacer funcionar el php en safe_mode. Esto se indica en el php.ini y se activa con la opción:
Safe_mode = ON
o sea modo seguro. Muchos hostings gratuitos lo tienen activado por defecto. De esta manera varias funciones están desactivadas y muchas otras comprueban los permisos a la hora de leer ficheros, etc.
http://www.zend.com/manual/features.safe-mode.functions.php------Otra∞ manera intersante de progeter el php es con el magic_quotes_gpc:
Copy/paste de http://vulnfact.com/papers/VF-php_secure.txt------ ∞- Buscamos la directiva magic_quotes_gpc, que quizá este en Off, pues la activamos con
On. Esto hace la adición automática del caracter de escape "\" en variables tomadas
de GET, POST y Cookies.
magic_quotes_gpc = On ; magic quotes for incoming GET/POST/Cookie data
- Para evitar que en lugar de enviar cadenas mal intencionadas, sean almacenadas en
bases de datos o archivos de texto. Debemos activar magic_quotes_runtime.
magic_quotes_runtime = Off ; magic quotes for runtime-generated data.
Se podría decir que hasta ahí tenemos mas o menos asegurado PHP. ¿Fácil, no?.
; Resource Limits ;
max_execution_time = 30 --> máximo tiempo de ejecución de un script php. Si en 30 segunos no obtiene respuesta el script se para y sale un "timeout" como errror.
memory_limit = 8M --> tamaño maximo que puede consumir un script php.
; File Uploads ;
Si queremos enviar ficheros al servidor, aqui lo podemos permitir:
file_uploads = On --> si queremos o no queremos
upload_tmp_dir = F:\webs\public --> el directorio donde se copiarán los archivos que nos suban.
upload_max_filesize = 1M --> el tamaño máximo que queremos que nos envien.
Una caracteristica muy importante, especialmente para hostings, es la posibilidad de no permitir algunas de las funciones de PHP. La razon es muy sencilla: algunas funciones de PHP como system, proc, etc hacen y permiten ejecutar comandos del sistema, lo que puede provocar problemas de seguridad. Por ejemplo, un usuario quizas quiera ejecutar un comando "no peligroso" como uptime, pero otro usuario mal intencionado puede utilizar otros comandos del sistema para extraer informacion comprometida de la maquina: como id, who, cat, etc.
Hosting gratuitos como Lycos, iespana tienen capadas estas funciones por lo comentado arriba, es potencialmente peligroso.
Para no permitir la ejecucion concreta de algunas funciones en PHP (no confundir con comandos) es con:
disable_functions =exec,system,shell_exec,readfile
Aunque las funciones en PHP son exec(), debemos ponerlo sin ().
Por ejemplo en Mi Arroba:------Warning: fsockopen, pfsockpen, show_source, php_uname, ini_alter, ini_restore, ini_set, getrusage, get_current_user, set_time_limit, getmyuid, getmypid, dl, leak, listen, chown, chmod, chgrp, realpath, tmpfile, link() has been disabled for security reasons.
Otra manera es hacer funcionar el php en safe_mode. Esto se indica en el php.ini y se activa con la opción:
Safe_mode = ON
o sea modo seguro. Muchos hostings gratuitos lo tienen activado por defecto. De esta manera varias funciones están desactivadas y muchas otras comprueban los permisos a la hora de leer ficheros, etc.
http://www.zend.com/manual/features.safe-mode.functions.php------Otra∞ manera intersante de progeter el php es con el magic_quotes_gpc:
Copy/paste de http://vulnfact.com/papers/VF-php_secure.txt------ ∞- Buscamos la directiva magic_quotes_gpc, que quizá este en Off, pues la activamos con
On. Esto hace la adición automática del caracter de escape "\" en variables tomadas
de GET, POST y Cookies.
magic_quotes_gpc = On ; magic quotes for incoming GET/POST/Cookie data
- Para evitar que en lugar de enviar cadenas mal intencionadas, sean almacenadas en
bases de datos o archivos de texto. Debemos activar magic_quotes_runtime.
magic_quotes_runtime = Off ; magic quotes for runtime-generated data.
Se podría decir que hasta ahí tenemos mas o menos asegurado PHP. ¿Fácil, no?.
Valora este capítulo:
Autor y licencia de 'Instalar Apache MySQL - PHP'
|
Opiniona sobre 'Instalar Apache MySQL - PHP' (4)
Tu nombre debe tener tres caracteres como mínimo.
Es necesario que te des de alta con una cuenta de correo válida.
Es necesario que te des de alta con una cuenta de correo válida.
El contenido del título de tu opinión debe tener tres caracteres como mínimo.
Es obligatorio que selecciones una valoración del recurso.
El contenido del comentario de tu opinión debe tener tres caracteres como mínimo.
Opina sobre este tutorial |
Wikis relacionados con 'Instalar Apache MySQL - PHP'
Cuando quise montar mi primer servidor linux estuve buscando informacion para poder configurar linux ,...
Más »
La instalación de estos programas es muy fácil, PHP y MySQL vienen comprimidos en formato...
Más »
En este artículo explicamos paso a paso como realizar una instalación a partir de los...
Más »
PHP se ha convertido en el lenguaje de facto de Internet y no es difícil...
Más »
Si nunca se te ha pasado por la imaginación que podrías llegar a programar, con...
Más »


