Vous êtes sur la page 1sur 6

30/04/13

Alcance Libre - Configuracin bsica de Apache.

s e r v i c es h o r e w a l lr e s t a r t

Procedimientos.
Archivos de configuracin.
Cualquier ajuste que se requiera realizar, ya sea para configurar anfitriones virtuales, u otra funcionalidad adicional, se puede realizar sin tocar el archivo principal de configuracin (/etc/httpd/conf/httpd.conf), utilizando cualquier archivo con extensin *.conf dentro del directorio /etc/httpd/conf.d/.

UTF-8 y codificacin de documentos.


UTF-8 UTF-8 es un mtodo de codificacin de ASCII para Unicode (ISO-10646), el Conjunto de Caracteres Universal o UCS. ste codifica la mayora de los sistemas de escritura del mundo en un nico conjunto de caracteres, permitiendo la mezcla de lenguajes y guiones en un mismo documento sin la necesidad de ajustes para realizar los cambios de conjuntos de caracteres. Debido a su conveniencia actualmente se est adoptando UTF-8 como codificacin para todo, sin embargo an hay mucho material codificado en, por ejemplo, ISO-8859-1. Lo correcto es cambiar a en UTF-8 la codificacin de los documentos que estn en ISO8859-1, u otras tablas de caracteres, utilizando mtodos similares el siguiente:
c d/ v a r / w w w / h t m l / f o rfi n* . h t m l d o v ic" : w q !+ + e n c = u t f 8 "$ f d o n e

Lo anterior slo tendra sentido si dentro del directorio /var/www/html hubiera documentos HTML codificados en ISO8859-1. Si desea continuar viviendo en el pasado y no aceptar el nuevo estndar, tambin puede desactivar la funcin en Apache que establece UTF-8 como codificacin predefinida. Edite el archivo /etc/httpd/conf/httpd.conf:
v i m/ e t c / h t t p d / c o n f / h t t p d . c o n f

www.alcancelibre.org/staticpages/index.php/como-apache/print

7/18

30/04/13

Alcance Libre - Configuracin bsica de Apache.

Localice lo siguiente:
A d d D e f a u l t C h a r s e tU T F 8

Cambie UTF-8 por Off:


A d d D e f a u l t C h a r s e tO f f

Directorios virtuales.
Si, por ejemplo, se quisiera aadir el alias para un directorio localizado en /var/contenidos/ejemplo/ y el cual queremos visualizar como el directorio /ejemplo/ en Apache, lo primero ser crear el directorio:
m k d i rp/ v a r / c o n t e n i d o s / e j e m p l o

Cambie los contextos de SELinux de este directorio, con la finalidad de que tenga rol de objeto (object_r), creado por usuario de sistema (system_u) y tipo httpd_sys_content_t:
c h c o nus y s t e m _ u/ v a r / c o n t e n i d o s / e j e m p l o c h c o nro b j e c t _ r/ v a r / c o n t e n i d o s / e j e m p l o c h c o nth t t p d _ s y s _ c o n t e n t _ t/ v a r / c o n t e n i d o s / e j e m p l o

Genere el archivo /etc/httpd/conf.d/ejemplos.conf:


v i m/ e t c / h t t p d / c o n f . d / e j e m p l o s . c o n f

Aada el siguiente contenido:


A l i a s / e j e m p l o / v a r / c o n t e n i d o s / e j e m p l o

Guarde y cierre el archivo. Recargue el servicio httpd.


s e r v i c eh t t p dr e l o a d

Asumiendo que realizar la prueba desde el mismo anfitrin local, visualice este nuevo directorio
www.alcancelibre.org/staticpages/index.php/como-apache/print 8/18

30/04/13

Alcance Libre - Configuracin bsica de Apache.

virtual, con cualquier navegador, a travs de http://127.0.0.1/ejemplo/. Se mostrar que el directorio existe, pero el acceso a ste est denegado. Si desea realizar las comprobaciones desde el mismo anfitrin, puede utilizar el navegador Lynx.
l y n xh t t p : / / 1 2 7 . 0 . 0 . 1 / e j e m p l o /

Lo anterior deber mostrar un error 403 (acceso denegado), pues el directorio carece de un archivo ndice. Para poder acceder deber haber un documento ndice en el interior (index.html, index.php, etc) o bien que dicho directorio sea configurado para mostrar el contenido. Edite de nuevo el archivo /etc/httpd/conf.d/ejemplos.conf:
v i m/ e t c / h t t p d / c o n f . d / e j e m p l o s . c o n f

Modifique el contenido para que quede del siguiente modo:


A l i a s/ e j e m p l o/ v a r / c o n t e n i d o s / e j e m p l o < D i r e c t o r y" / v a r / c o n t e n i d o s / e j e m p l o " > O p t i o n sI n d e x e s < / D i r e c t o r y >

La opcin Indexes indica que se deber mostrar el ndice de contenido del directorio. Recargue el servicio httpd para aplicar la configuracin:
s e r v i c eh t t p dr e l o a d

Asumiendo que realizar la prueba desde el mismo anfitrin local, acceda hacia http://127.0.0.1/ejemplo/ con cualquier navegador y visualice el resultado. Si se requiere que este directorio tenga an mayor funcionalidad, se pueden aadir ms opciones, como por ejemplo AllowOverride, Includes y FollowSymLinks, como se muestra en el siguiente ejemplo:
A l i a s/ e j e m p l o/ v a r / c o n t e n i d o s / e j e m p l o < D i r e c t o r y" / v a r / c o n t e n i d o s / e j e m p l o " > O p t i o n sI n d e x e sI n c l u d e sF o l l o w S y m L i n k s A l l o w O v e r r i d ea l l < / D i r e c t o r y >

En el ejemplo anterior:
www.alcancelibre.org/staticpages/index.php/como-apache/print 9/18

30/04/13

Alcance Libre - Configuracin bsica de Apache.

La opcin FollowSymLinks habilita el uso de enlaces simblicos dentro del directorio. Slo utilice sta si necesita acceder a contenidos fuera del directorio a utilizar. La opcin Includes especifica que se permite la utilizacin de los SSI (Server Side I ncludes). Slo utilice sta si as lo requiere la aplicacin o programa utilizado dentro este directorio. La opcin AllowOverride, con el valor all posibilita utilizar archivos .htaccess, los cuales a su vez permiten aplicar opciones de directorio al vuelo, sin necesidad de modificar otros archivos de configuracin. Para que surtan efecto los cambios hechos a la configuracin, recargue el servicio httpd:
s e r v i c eh t t p dr e l o a d

Asumiendo que realizar la prueba desde el mismo anfitrin local, acceda hacia http://127.0.0.1/ejemplo/ con cualquier navegador y visualice el resultado. Si desea realizar las comprobaciones desde el mismo anfitrin, puede utilizar el navegador Lynx.
l y n xh t t p : / / 1 2 7 . 0 . 0 . 1 / e j e m p l o /

Limitar el acceso a directorios por direccin IP.


Si se requiere limitar el acceso de un directorio en particular, para que ste est disponible slo hacia ciertas direcciones IP o bloques de red, defina algo como lo mostrado en el siguiente ejemplo:
A l i a s/ e j e m p l o/ v a r / c o n t e n i d o s / e j e m p l o < D i r e c t o r y" / v a r / c o n t e n i d o s / e j e m p l o " > O r d e rd e n y , a l l o w D e n yf r o ma l l A l l o wf r o m1 2 7 . 0 . 0 . 0 / 81 9 2 . 1 6 8 . 7 0 . 0 / 2 5 O p t i o n sI n d e x e s

A l l o w O v e r r i d ea l l < / D i r e c t o r y >

El ejemplo anterior establece que el orden de acceso, donde primero se aplicarn las reglas de denegacin y luego las que permitirn el acceso y que se denegar el acceso a todo el mundo, permitiendo el acceso slo desde 127.0.0.0/8 y 192.168.70.0/25. Para que surtan efecto los cambios hechos a la configuracin, recargue el servicio httpd:

www.alcancelibre.org/staticpages/index.php/como-apache/print

10/18

30/04/13

Alcance Libre - Configuracin bsica de Apache.

s e r v i c eh t t p dr e l o a d

sumiendo que realizar la prueba desde el mismo anfitrin local, acceda hacia http://127.0.0.1/ejemplo/ con cualquier navegador y visualice el resultado. Si desea realizar las comprobaciones desde el mismo anfitrin, puede utilizar el navegador Lynx.
l y n xh t t p : / / 1 2 7 . 0 . 0 . 1 / e j e m p l o /

Limitar el acceso por usuario y contrasea.


La autenticacin para directorios, contra un archivo que incluya nombres de usuario y claves de acceso, que tambin puede combinarse con el acceso por direccin IP, se realiza a travs de la siguiente sintaxis:
A u t h N a m e" A c c e s os l op a r au s u a r i o sa u t o r i z a d o s " A u t h T y p eB a s i c R e q u i r ev a l i d u s e r A u t h U s e r F i l e/ c u a l q u i e r / r u t a / h a c i a / a r c h i v o / d e / c l a v e s

Lo anterior puede ser incluido en la configuracin existente para cualquier directorio o bien en archivo .htaccess. Genere el directorio /var/www/privado/ ejecutando lo siguiente:
m k d i rp/ v a r / w w w / p r i v a d o

Genere un archivo denominado arbitrariamente /etc/httpd/conf.d/ejemplo-autenticar.conf:


v i m/ e t c / h t t p d / c o n f . d / e j e m p l o a u t e n t i c a r . c o n f

Aada con el siguiente contenido:


A l i a s/ p r i v a d o/ v a r / w w w / p r i v a d o < D i r e c t o r y" / v a r / w w w / p r i v a d o " > O p t i o n sI n d e x e s A l l o w O v e r r i d eA l l O r d e ra l l o w , d e n y A l l o wf r o ma l l < / D i r e c t o r y >

www.alcancelibre.org/staticpages/index.php/como-apache/print

11/18

30/04/13

Alcance Libre - Configuracin bsica de Apache.

Para que surtan efecto los cambios hechos a la configuracin, recargue el servicio httpd:
s e r v i c eh t t p dr e l o a d

Genere el archivo /var/www/privado/.htaccess.


v i m/ v a r / w w w / p r i v a d o / . h t a c c e s s

Agregue el siguiente contenido:


A u t h N a m e" S l ou s u a r i o sa u t o r i z a d o s " A u t h T y p eB a s i c R e q u i r ev a l i d u s e r A u t h U s e r F i l e/ v a r / w w w / c l a v e s

Genere el archivo de claves de acceso como /var/www/claves, ejecutando el siguiente procedimiento:


t o u c h/ v a r / w w w / c l a v e s

Cambie los permisos de slo lectura y escritura para usuario y cambie la propiedad al usuario y grupo apache:
c h m o d6 0 0/ v a r / w w w / c l a v e s c h o w na p a c h e : a p a c h e/ v a r / w w w / c l a v e s

Agregue algunos usuarios virtuales al archivo de claves, /var/www/claves, ejecutando el mandato htpasswd, usando como argumentos la ruta del archivo de claves de acceso y nombre del usuario a aadir o modificar:
h t p a s s w d/ v a r / w w w / c l a v e sf u l a n o h t p a s s w d/ v a r / w w w / c l a v e sm e n g a n o h t p a s s w d/ v a r / w w w / c l a v e sp e r e n g a n o h t p a s s w d/ v a r / w w w / c l a v e sz u t a n o

Asumiendo que realizar la prueba desde el mismo anfitrin local, acceda con cualquier navegador hacia http://127.0.0.1/privado/ y compruebe que funciona el acceso con autenticacin, utilizando cualquiera de los dos usuarios virtuales que gener con el mandato htpasswd, es decir fulano o mengano. Si desea realizar las comprobaciones desde el mismo anfitrin, puede utilizar el navegador Lynx.
www.alcancelibre.org/staticpages/index.php/como-apache/print 12/18

Vous aimerez peut-être aussi