Directivas de Autorización y Configuración en Apache: Optimización y Seguridad del Servidor Web

Enviado por Chuletator online y clasificado en Informática y Telecomunicaciones

Escrito el en español con un tamaño de 6,65 KB

Directivas de Autorización en Apache

Apache ofrece diversas directivas para controlar el acceso al servidor. A continuación, se describen algunas de las más importantes:

Directiva Require

  • Require ip 172.16.0.0/24: Especifica que solo se puede acceder al servidor virtual desde direcciones IP que pertenezcan a la red 172.16.0.0/24.
  • Require host nombre-dominio: El proveedor host limita el acceso a solo aquellos nombres de dominio especificados.
  • Require all granted | Require all denied: El proveedor all hace referencia a cualquier equipo.
    • Require all granted: Concede el acceso a cualquier equipo.
    • Require all denied: Deniega el acceso a cualquier equipo.
  • Require local: El proveedor local permite el acceso al servidor.

Directivas de Control de Acceso

  • RequireAll: Engloba un conjunto de directivas de autorización. Ninguna de estas directivas debe devolver FALSE y al menos una debe devolver TRUE.
  • RequireAny: Engloba un conjunto de directivas de autorización. Al menos una de estas directivas debe devolver TRUE. Las directivas Require not nunca pueden devolver TRUE.
  • RequireNone: Engloba un conjunto de directivas de autorización. Ninguna de estas directivas debe devolver TRUE. Si alguna lo hace, RequireNone devolverá FALSE. Si ninguna devuelve TRUE, entonces RequireNone devolverá NEUTRAL.

Instalación del Servidor Apache en Ubuntu

Para instalar Apache en Ubuntu, se deben ejecutar los siguientes comandos:

$ sudo apt-get update
$ sudo apt-get install apache2

Para verificar si el servidor está en marcha y escuchando en el puerto 80, se pueden usar los siguientes comandos:

$ ps –ef | grep apache
$ netstat –ltn | grep :80

Archivos de Configuración de Apache

  • El fichero de configuración principal es apache2.conf.
  • La carpeta mods-available contiene todos los módulos instalados, mientras que la carpeta mods-enabled contiene solo los módulos habilitados.
  • La carpeta sites-available contiene todos los servidores virtuales configurados, mientras que la carpeta sites-enabled contiene solo los servidores virtuales habilitados.
  • Al instalar Apache, se crea un servidor virtual por defecto, ubicado en /etc/apache2/sites-available/000-default.conf.

Archivos de Opciones .htaccess

Los archivos .htaccess permiten crear opciones específicas para un determinado directorio. Estas opciones se aplican a todos los archivos y subdirectorios de ese directorio.

Para recargar la configuración de Apache:

$ sudo service apache2 reload

Para activar un módulo:

$ sudo a2enmod modulo

Para desactivar un módulo:

$ sudo a2dismod modulo

Autenticación y Autorización BASIC y DIGEST

Apache permite la utilización de ficheros .htaccess, mediante los cuales un usuario puede indicar las directivas de sus propias carpetas. Una de las ventajas de utilizar ficheros .htaccess es que no es necesario reiniciar el servidor cada vez que se crean, modifican o borran.

Otro fichero de registro importante es el especificado por la directiva CustomLog, el cual permite registrar los accesos al sistema. Normalmente, está especificado dentro del fichero de configuración del servidor virtual por defecto.

Para habilitar un servidor virtual:

$ sudo a2ensite nombre_del_servidor_virtual

Preguntas Frecuentes sobre Servidores Web y Protocolo HTTP

1. ¿Qué se necesita para disponer del servicio HTTP en un entorno Ubuntu?

Para acceder a una página web proporcionada por los servidores, solo se necesita un navegador web como Mozilla Firefox. Para crear un servidor web propio, se necesita tener instalado Webmin y Apache2.

2. ¿Por qué el protocolo HTTP es un protocolo sin estado? ¿Cómo afecta esto a la existencia de las cookies? ¿Qué es una cookie?

El protocolo HTTP es sin estado porque no guarda información sobre las peticiones anteriores. Si un cliente solicita el nombre (IP) de un servidor y no lo encuentra, envía un mensaje de error. En la siguiente solicitud, se repite el proceso sin recordar la consulta anterior. Las cookies se utilizan para solucionar este problema, almacenando información de las búsquedas de los usuarios para mejorar el servicio y la eficiencia de las búsquedas.

3. ¿Qué son los tipos MIME? ¿Dónde y por qué se especifican?

Los tipos MIME son especificaciones que detallan el tipo de archivos que contiene una página web. Se especifican en la cabecera, pero solo son interpretados por el cliente o el servidor, no por el usuario. Se utilizan para determinar si se necesitan extensiones o no. Ejemplos: text/html, application/pdf.

4. ¿Para qué se utiliza el archivo .htaccess?

El archivo .htaccess sirve para modificar las directivas y configuraciones del servidor web Apache.

5. Ventajas de la utilización del fichero .htaccess

Una ventaja significativa es que no es necesario reiniciar el servidor cada vez que se crean, modifican o borran estos ficheros.

6. ¿Cómo se desactiva un host virtual por defecto?

Para activar un host virtual: sudo a2ensite nombre_del_servidor

Para desactivar el host virtual por defecto: sudo a2dissite 000-default

7. Cliente Web, Extensiones y URL

El cliente web es una aplicación (navegador) que permite al usuario visualizar páginas web. Las extensiones son aplicaciones que se descargan para visualizar ciertos servicios dentro de una página web.

Ejemplo de URL:

protocolo://dominio/carpeta/documento

Donde:

  • protocolo: http, https, ftp, etc.
  • dominio: Nombre del servidor.
  • carpeta: Directorio donde se encuentra el documento.
  • documento: Archivo solicitado.

Entradas relacionadas: