Utilización de máquinas virtuales

AvisoAdvertencia
 

Si desea usar la Herramienta de configuración Apache, una utilidad GUI que incluye el paquete de Red Hat Linux, no cambie el fichero de configuración httpd.conf de su servidor Apache. Por el contrario, si lo desea hacer a mano, no utilice dicha herramienta.

Si desea más información sobre la Herramienta de configuración Apache, consulte la versión española de la Official Red Hat Linux Customization Guide.

Se puede utilizar la capacidad de las máquinas virtuales de Apache para ejecutar servidores en distintas direcciones IP, diferentes nombres o diferentes puertos en la misma máquina. Si está interesado en utilizar máquinas virtuales,puede encontrar toda la información en la documentación de Apache en el sitio http://www.apache.org/docs/vhosts/.

NotaNota
 

El secure Web server no admite usar máquinas virtuales que estén basadas en el nombre porque el acuerdo SSL (cuando el cliente acepta el certificado SSL del servidor) ocurre antes de la petición HTTP que identifica por el nombre a la máquina virtual apropiada. Si se quieren utilizar este tipo de máquinas virtuales, lo podrá hacer sólo con servidores no seguros.

Las máquinas virtuales se configuran en httpd.conf, según se describe en la sección de nombre Directivas de configuración en el fichero httpd.conf. Por favor, lea esta sección antes de empezar a cambiar la configuración de las máquinas virtuales del servidor.

Máquina virtual de secure Web server

La configuración predeterminada de secure Web server se ejecuta en servidores seguros y no seguros. Ambos servidores usan la misma dirección IP y nombre, pero diferentes puertos, y el servidor seguro es una máquina virtual. Esta configuración permite entregar documentos seguros y no seguros de la manera más eficiente posible. Como ya sabrá las transferencias seguras HTTP llevan más tiempo que las no seguras, ya que se pasa mucha información extra durante las transacciones seguras. Así que utilizar el servidor seguro para tráfico no seguro no es una buena idea.

Las directivas de configuración del servidor seguro están en las etiquetas de la máquina virtual en httpd.conf. Si se necesita cambiar la configuración del servidor seguro, habrá que cambiar las directivas que se encuentran en las etiquetas de la máquina virtual en httpd.conf. Si se quiere activar ciertas características (por ejemplo, inclusión en el servidor) para el servidor seguro, habrá que activarlas en las etiquetas de la máquina virtual que definen el servidor seguro.

El servidor no seguro está configurado como la máquina "no virtual" en httpd.conf. En otras palabras, las opciones de configuración del servidor no seguro están fuera de las etiquetas de la máquina virtual. Si se quiere cambiar la configuración del servidor no seguro, habrá que cambiar las directivas de configuración en httpd.conf.

Por defecto, los servidores seguros y no seguros comparten el mismo DocumentRoot, directiva de configuración especificada en httpd.conf. En otras palabras, los servidores buscan en el mismo sitio los ficheros que proporcionan como respuesta a las peticiones. El valor predeterminado de DocumentRoot es /var/www/html.

Para cambiar DocumentRoot, de tal forma que no lo compartan el servidor seguro y el no seguro, cambie una de las directivas DocumentRoot en httpd.conf. La directiva DocumentRoot fuera de las etiquetas de la máquina virtual define la directiva DocumentRoot para el servidor no seguro. Así mismo la directiva DocumentRoot dentro de las etiquetas de la máquina virtual la define para el servidor seguro.

Si por alguna razón se quiere desactivar el servidor no seguro, puede hacerlo. El servidor seguro usa el puerto 443, puerto por defecto para comunicaciones web seguras, mientras que el servidor no seguro usa el puerto 80, el puerto predeterminado para las comunicaciones web. Para evitar que el servidor no seguro acepte conexiones, busque la línea siguiente en httpd.conf:

Port 80

Cambie la línea:

Port 443

Anule el comentario de la línea Listen 80, para que en vez de:

Listen 80

diga:

#Listen 80

Tras estos dos pasos, secure Web server aceptará las conexiones en el puerto 443, el puerto predeterminado para las comunicaciones seguras y no en el puerto 80, que es para comunicaciones no seguras, de tal forma que el servidor no seguro estará desactivado.

Configuración de las máquinas virtuales

La mayoría de los usuarios utilizará secure Web server tal y como viene configurado. Por ello, usarán la capacidad intrínseca de las máquinas virtuales, pero no tocarán las directivas de las máquinas virtuales que se encuentran en el fichero de configuración httpd.conf. Sin embargo, si quiere usar la capacidad de las máquinas virtuales por alguna otra razón, lo puede hacer.

Para crear una máquina virtual, habrá que alterar las líneas de la máquina virtual dadas como ejemplo en httpd.conf, o crear una sección de máquinas virtuales. (Recuérdese que las máquinas virtuales basadas en el nombre no funcionan con el servidor seguro — habrá que utilizar máquinas virtuales basadas en la dirección IP si se quieren obtener máquinas virtuales con SSL activo. El servidor no seguro, sin embargo, soporta máquinas virtuales basadas en el nombre y en la dirección IP.)

Las líneas wue sirven de ejemplo de una máquina virtual son las siguientes:

#<VirtualHost ip.address.of.host.some_domain.com>
#    ServerAdmin webmaster@host.some_domain.com
#    DocumentRoot /www/docs/host.some_domain.com
#    ServerName host.some_domain.com
#    ErrorLog logs/host.some_domain.com-error_log
#    CustomLog logs/host.some_domain.com-access_log common
#</VirtualHost>

Anule el comentario de las líneas (elimínese # al comienzo de cada línea). Añada entonces la información correcta para la máquina y/o máquina virtual a cada línea.

En la primera línea, cambie ip.address.of.host.some_domain.com por la dirección IP del servidor. Cambie ServerName por un nombre DNS válido para la máquina virtual. (En otras palabras, no basta con inventar algo. Pregunte al administrador de red si no sabe cómo conseguir un nombre de dominio válido.)

También habrá que anular el comentario de las líneas NameVirtualHost en httpd.conf:

#NameVirtualHost 12.34.56.78:80
#NameVirtualHost 12.34.56.78

Anule el comentario de una de las líneas y cambie la dirección IP por la dirección (y puerto si es necesario) para esa máquina virtual.

Se pueden poner en las etiquetas otras directivas de configuración para la máquina virtual, según cómo se configure ésta.

Si se configura una máquina virtual para escuchar en un puerto no habitual (80 es el valor predeterminado para comunicaciones no seguras y 443 es el defecto para comunicaciones seguras), habrá que configurar una máquina virtual para el puerto y añadir la directiva Listen httpd.conf, correspondiente a ese puerto.

Para tener una máquina virtual específica para ese puerto, añada el puerto a la primera línea de la configuración de la máquina virtual. La primera línea debería parecerse a lo siguiente:

<VirtualHost ip_address_of_your_server:12331>

Esta línea crearía una máquina virtual en el puerto 12331. Sustituya 12331 por el puerto que desea usar en el ejemplo anterior.

En las líneas Listen de httpd.conf, añada lo siguiente para que el servidor escuche en el puerto 12331:

Listen 12331

Hay que rearrancar el servidor para iniciar una nueva máquina virtual.

Podrá encontrar información mucho más completa sobre cómo crear y configurar máquinas virtuales según el nombre y la dirección IP en la página web en http://www.apache.org/docs/vhosts/index.html. Vea la página del Grupo Apache sobre máquinas virtuales para más detalles sobre el uso de máquinas virtuales.