|
|
Atención: 21 al 25 de mayo, Curso Global de Servidores con CentOS 6.
Atención: 23 al 27 de abril, Curso SUSE Linux Enterprise Desktop Administration. Atención: 21 y 28 de abril, 5 y 12 de mayo, Taller de programación de Python. Atención: Disponible ALDOS 1.4.3. Nuestro sistema operativo para escritorio. Cómo habilitar los archivos .htaccess en Apache 2.x
Autor: Joel Barrios Dueñas
Correo electrónico: darkshram en gmail punto com Sitio de Red: http://www.alcancelibre.org/ Jabber ID: darkshram@jabber.org Creative Commons Reconocimiento-NoComercial-CompartirIgual 2.1
Introducción.Apache® 2.x tiene mejores medidas de seguridad que las versiones anteriores, debido a que su configuración predeterminada viene de tal modo que deshabilita muchas cosas que podrán considerarse de cierto riesgo. Parte de esa seguridad incluye deshabilitar los SSI (Server Side Includes o Inclusiones del Lado del Servidor) y el uso de los archivos .htaccess. Estos últimos sirven para modificar o agregar funciones a directorios. Básicamente solo se necesita agregar las siguientes líneas a cualquier definición del directorio que se desee utilizar:
Procedimientos.Autenticación de directorios.La autenticación para un directorio, contra un archivo que incluye claves de acceso, se realiza a través de la siguiente sintaxis en cualquier archivo .htaccess.
Ejemplo.Se procede a crear un directorio que será visto desde cualquier navegador como http://127.0.0.1/privado/. Genere el archivo /etc/httpd/conf.d/ejemplo-autenticar.conf con el siguiente contenido:
Genere el directorio /var/www/privado/ realizando lo siguiente:
Genere el archivo /var/www/privado/.htaccess realizando lo siguiente:
Edite el archivo /var/www/privado/.htaccess y agregue el siguiente contenido:
Genere el archivo de claves de acceso como /var/www/claves, utilizando el siguiente procedimiento:
Con el fin de establecer la seguridad necesaria, cambie los atributos de lectura y escritura solo para el usuario apache:
Agregue algunos usuarios virtuales al archivo de claves, /var/www/claves, utilizando el siguiente procedimiento con el mandato htpasswd:
Reinicie el servicio httpd:
Acceda con cualquier navegador de red hacia http://127.0.0.1/privado/ y compruebe que funciona el acceso con autenticación en dicho subdirectorio utilizando cualquiera de los dos usuarios virtuales que generó con el mandato htpasswd, es decir fulano o mengano.
Asignación de directivas para PHP.Suelen darse los casos donde una aplicación, escrita en PHP, requiere algunas directivas de PHP en particular. En muchos casos se llegan a necesitar variables que pueden comprometer la seguridad de otras aplicaciones hospedadas en el servidor. Para tal fin es que se puede evitar modificar el archivo /etc/php.ini utilizando el parámetro php_flag en un archivo .htaccess. La siguiente sintaxis es la siguiente:
EjemploSe procederá a asignar las directivas register_globals, magic_quotes_runtime, magic_quotes_gpc, y upload_max_filesize al directorio en la ruta /var/www/aplicacion, mismo que será visualizado desde Apache como http://127.0.0.1/aplicacion/. El valor para register_globals será On, el valor para magic_quotes_runtime será On, el valor para magic_quotes_gpc será On y el valor para upload_max_filesize será 4M. Genere el archivo /etc/httpd/conf.d/ejemplo-directivas-php.conf con el siguiente contenido:
Genere el archivo /var/www/aplicacion/.htaccess realizando lo siguiente:
Edite el archivo /var/www/aplicacion/.htaccess y agregue el siguiente contenido:
Genere el archivo /var/www/aplicacion/info.php, una función que muestra toda la información acerca de PHP en el servidor, a fin de corroborar los valores de las directivas de PHP en relación al directorio, con el siguiente contenido:
Reinicie el servicio httpd:
Acceda con cualquier navegador de red hacia http://127.0.0.1/aplicacion/info.php y corrobore que los valores para las variables de PHP para el directorio involucrado realmente han sido asignadas. En la sub-sección PHP Core de la sección Configuration, hay tres columnas: Directive, el cual corresponde a la directivas PHP, Local Value, el cual corresponde a los valores de las directivas de PHP para el directorio actual, y Master Value, que corresponde a los valores de las directivas generales como están definidas en el archivo /etc/php.ini.
|
Comentarios Recientes