Category Archives: Tutoriales

Enjaulando Bind

Introducción

Buenas a todos. Hoy vamos a ver cómo enjaular Bind en Ubuntu. Bind es un servidor DNS muy usado en internet, concretamene en máquinas cuyos sistemas operativos están basados en Unix. Fue creado por cuatro estudiantes en la University of California. Actualmente se encuentra en su versión 9.

¿Enjaular?

El proceso de enjaular un servicio o usuario en Linux se realiza para evitar intrusiones no deseadas en un sistema, de modo que si alquien consiguiera burlar la seguridad de nuestro sistema y entrar, sólo se vería afectada la zona de enjaulamiento.

Instalando Bind

Lo primero que hay que hacer es instalar Bind en nuestra máquina, así que en un terminal escribimos:

sudo aptitude install bind9 dnsutils

Cuando ya tenemos Bind instalado, detenemos el servicio:

sudo /etc/init.d/bind9 stop

Configurando Bind y creando directorios de enjaulamiento

Ahora vamos a indicarle a Bind de dónde debe coger los archivos de configuración, desde el terminal:

sudo gedit /etc/default/bind9

Una vez con el archivo abierto, esto será lo que veamos:

Añadimos lo siguiente a la línea indicada:

- t /var/lib/named

Guardamos los cambios y vamos a crear ahora los directorios que almacenarán los archivos de configuración de Bind, desde el terminal:

sudo mkdir /var/lib/named

Creamos también los siguientes directorios:

sudo mkdir /var/lib/named/dev
sudo mkdir /var/lib/named/etc
sudo mkdir /var/lib/named/var/cache/bind
sudo mkdir /var/lib/named/var/run/bind/run

Ahora movemos los archivos de configuración de Bind a los directorios que hemos creado:

sudo mv /etc/bind /var/lib/named/etc

Ahora creamos un enlace simbólico que vaya desde /etc/bind a /var/lib/named/etc

sudo ln -s /var/lib/named/etc /etc/bind

Una vez creado el enlace simbólico, vamos a crear los dispositivos null y random con el comando mknod. Desde el terminal:

sudo mknod /var/lib/named/dev/null c 1 3

sudo mknod /var/lib/named/dev/random c 1 8

Asignando los permisos

Ahora tenemos que configurar los permidos de ejecución y hacer a Bind propietario de los directorios /var/lib/named/etc y /var/lib/named/var/*.

Empezamos con los permisos, desde el terminal escribimos:

sudo chmod 666 /var/lib/named/dev/null /var/lib/named/dev/random

Y ahora hacemos a Bind propietario de los directorios:

sudo chown -R bind:bind /var/lib/named/var/*

sudo chown -R bind:bind /var/lib/named/etc/bind

Editando el fichero resolv.conf

Vamos ahora a editar el fichero /etc/resolv.conf para añadir nuestra máquina cómo servidor DNS encargado de resolver las direcciones. En un terminal escribimos:

sudo gedit /etc/resolv.conf

Una vez con el archivo abierto, comentamos las direcciones que aparezcan y añadimos la dirección IP de nuestra máquina, de forma que quede más o menos así:

En mi caso, tenía para resolver las direcciones la propia dirección del router bajo el que me encuentro.

Ahora reiniciamos la red para que los cambios surtan efecto, desde el terminal escribimos:

sudo /etc/init.d/networking restart

Ahora mismo, si hacemos un ping a Google nos responderá esto:

Esto se debe a que el servicio de Bind está parado, y sólo está nuesta máquina para resolver las direcciones. Iniciamos Bind:

sudo /etc/init.d/bind9 start

Esto se debe a que el servicio apparmor no nos permite iniciar Bind ya que este no tiene permiso para acceder a /var/lib/named

Configurando los permisos de apparmor

Vamos a configurar los permisos de apparmor, para que Bind pueda tener acceso a /var/lib/named. En primer lugar paramos el servicio de apparmor, desde el terminal tecleamos:

sudo /etc/init.d/apparmor stop

Ahora vamos a editar la configuración de apparmor, escribimos en un terminal lo siguiente:

sudo gedit /etc/apparmor.d/usr.sbin.named

Una vez con el archivo abierto, comentamos las siguientes líneas:

#/var/run/named/named.pid w,
# support for resolvconf
#/var/run/named/named.options r,

Ahora nos vamos hacia el final del archivo, y añadimos las siguientes líneas:

/var/lib/named/etc/bind/* rw,
/var/lib/named/etc/bind/zones/* rw,
/var/cache/bind/* rw,
/var/lib/named/var/run/bind/run/named.pid w,
/var/lib/named/var/run/bind/named/options r,
/var/lib/named/dev/null rw,
/var/lib/named/dev/random rw,

Iniciando apparmor y Bind

Ya está todo configurado, ya sólo queda iniciar apparmor y Bind, desde el terminar escribimos:

sudo /etc/init.d/apparmor start

sudo /etc/init.d/bind9 start

Ya sólo queda hacer un ping a Google para comprobar si obtenemos respuesta o no, desde el terminal escribimos:

ping google.es

Bibliografía

Configurar SSL en Apache

Introducción

Hola a los muy pocos que leen, en este tutorial vamos a aprender a configurar nuestro servidor Apache para que soporte SSL.

Vamos a configurar Apache bajo Ubuntu, aunque ya sabéis, podéis usar cualquier otra distro GNU/Linux. De paso digo que en este tutorial no voy a explicar cómo instalar Apache ni cómo crear host virtuales basados en nombre. Si queréis saber cómo se hace echadle un ojo a mi otro tutorial.

¿Qué es SSL?

SSL (Secure Socket Layer) es un protocolo criptográfico que proporciona una comunicación segura en internet. El protocolo SSL intercambia registros y cada registro puede ser comprimido, cifrado y empaquetado, se ejecuta en una capa entre los protocolos HTTP, SMTP, NNTP y sobre el protocolo de transporte TCP.

Comenzó a usarse en 1996 por Netscape y actualmente es aprobado por la mayoría de entidades financieras para el comercio por internet.

Habilitando el módulo SSL y creando el certificado

Para habilitar el módulo SSL, tecleamos en un terminal lo siguiente:

sudo a2enmod ssl

Y después habilitamos este módulo también:

sudo a2enmod rewrite

Una vez habilitados los módulos anteriormente mencionados, reiniciamos Apache:

sudo apache2ctl restart

Bien, ahora pasamos a la creación del certificado SSL. Antes de empezar, necesitamos instalar unos paquetes necesarios, en un terminal tecleamos lo siguiente:

sudo aptitude install openssl openssl-blacklist openssl-blacklist-extra

Una vez instalado el paquete, en el terminal tecleamos lo siguiente para crear el certificado SSL:

sudo openssl req $@ -new -x509 -days 365 -nodes -out /etc/apache2/apache.pem -keyout /etc/apache2/apache.pem

Ahora nos hará una serie de preguntas, las respondemos y ya tendremos nuestro certificado creado.

Configurando SSL

Ya tenemos el certificado creado e instalado en /etc/apache2/apache.pem. Ahora vamos a modificar el fichero /etc/apache2/sites-available/websegura. Nos vamos a un terminal y escribimos:

sudo gedit /etc/apache2/sites-available/websegura

Una vez con el archivo abierto, lo dejamos de esta forma:

<VirtualHost *:443>
    ServerName www.websegura.com
    LogLevel warn
    ErrorLog /var/log/apache2/www.websegura.com.error.log
    CustomLog /var/log/apache2/www.websegura.com.access.log combined

    DocumentRoot /var/www/www.websegura.com

    <Directory /var/www/www.websegura.com>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all
    </Directory>

    SSLEngine On
    SSLCertificateFile    /etc/apache2/apache.pem
    SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown
</VirtualHost>

Vamos ahora configurar Apache para que escuche también por el puerto 443. En un terminal tecleamos:

sudo gedit /etc/apache2/ports.conf

Borramos todo el contenido del archivo, y lo dejamos de la siguiente forma:

NameVirtualHost *:80
Listen 80
NameVirtualHost *:443
Listen 443

Ahora toca modificar el archivo /etc/apache2/sites-available/default. En un terminal escribimos:

sudo gedit /etc/apache2/sites-available/default

Y ahora comenzamos a introducir estos fragmentos de código al archivo, en las zonas especificadas.

Al principio:


NameVirtualHost   *:80
NameVirtualHost   *:443

Después de DocumentRoot  /var/www:

DocumentRoot /var/www
RewriteEngine On
RewriteLog /var/log/apache2/https_rewrite.log
RewriteLogLevel 1
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^/(.*) https://%{SERVER_NAME}/$1 [L,R]

<Directory />

Al final del fichero:

</VirtualHost>
<VirtualHost *:443>
    DocumentRoot /var/www/websegura
    ErrorLog /var/log/apache2/error.log
    SSLEngine on
    SSLCertificateFile /etc/apache2/apache.pem
</VirtualHost>

NOTA: No olvides modificar el fichero /etc/hosts. En el tutorial Apache: Configuración de hosts basados en nombres explico qué hay que hacer.

Ahora sólo queda reiniciar Apache para que la configuración se aplique. Desde el terminal:

sudo apache2ctl restart

Verificando el funcionamiento

Para comprobar que todo el proceso está correcto, debemos abrir el navegador y visitar www.websegura.com, si todo está correcto, veremos algo así:

Ahora debemos dar la excepción de seguridad al navegador, para poder acceder al sitio web. Pulsamos en Entiendo los riesgos.

Ahora hacemos click en Añadir excepción.

Se nos abre una ventana nueva, esta vez pulsamos en Confirmar excepción de seguridad.

Una vez hecho eso, sorpresa. Nuestra web con SSL.

Un candado en la esquina inferior derecha, nos proporciona información acerca la entidad que ha firmado el certificado, en este caso, nosotros mismos.

Bibliografía

Estadísticas con Webalizer en Ubuntu

Introducción

Webalizer es una aplicación con licencia GPL escrita en C, su principal función es generar análisis de sitios webs, referente a las visitas, a las búsquedas de los usuarios y a los archivos más descargados de un sitio web. Webalizer es uno de los software de análisis de sitios webs más usado en Internet. Nos muestra las estadísticas en forma de gráfica, y las ordena por meses, días u horas.

Instalando Webalizer

Para instalar Webalizer, abrimos una terminal y tecleamos:

sudo aptitude install webalizer

Si nos pide alguna dependencia, le indicamos que sí, que las instale para que no tengamos ningún tipo de problema a la hora de ejecutar Webalizer.

Configurando Webalizer

Cuando ya tenemos instalado Webalizer, pasamos a configurarlo, así que nos vamos a un terminal y tecleamos lo siguiente:

sudo gedit /etc/webalizer/webalizer.conf

Borramos todo el contenido del arhivo y lo dejamos así:

LogFile       /var/log/apache2/access.log
OutputDir     /var/www/pagina1/webalizer
Incremental   yes
ReportTitle   Estadísticas de Página 1
Hostname      www.pagina1.com
IgnoreSite    localhost
HideURL        *.gif
HideURL        *.GIF
HideURL        *.jpg
HideURL        *.JPG
HideURL        *.png
HideURL        *.PNG
HideURL        *.ra

Como es lógico, donde yo he puesto www.pagina1.com, vosotros debéis de poner la URL de vuestra web. Una vez modificado, guardamos los cambios.

Generando el primer reporte

Para generar el primer reporte, sólo tenemos que teclear en un terminal:

sudo webalizer

Ya tenemos generado el primer reporte, para visualizarlo entramos en  la siguiente dirección: www.pagina1.com/webalizer

Si todo está correcto, algo como esto será lo que veamos:

Si ahora alguien nos hiciera una visita, pues el contador de visitas subiría como podemos apreciar en la imagen:

Bibliografía

Autenticación en servidor Apache

Introducción

Hoy vamos a aprender a establecer un nivel de seguridad en nuestro servidor Apache, corriendo bajo Ubuntu, aunque como siempre digo podemos usar cualquier distribución para seguir el tutorial. Constará de una autenticación mediante un usuario y contraseña. Para este tutorial voy a crear un nuevo Host basado en IP. Dicho esto, vamos a ello.

Creando el nuevo Host

Como ya he comentado antes, voy a crear un nuevo Host basado en IP, para ello abrimos el terminal y tecleamos lo siguiente:

sudo mkdir /var/www/passwordhost

Una vez creado el directorio que alojará el nuevo Host, vamos a crear el index.html, por lo que tecleamos en el terminal:

sudo gedit /var/www/passwordhost/index.html

Una vez con gedit abierto, escribimos un código HTML básico, como el siguiente:

<html>
     <head>
          <title>Ejemplo de host con password</title>
     </head>
     <body bgcolor="#008080">
          <h1>Ejemplo de host con seguridad básica</h1>
     </body>
</html>

Genial, ya tenemos creado el Host con su index. Como lo estamos haciendo mediante IP, ahora debemos crear una interfaz virtual. Si mal no recuerdo, nuestra interfaz se llamaba eth2, para comprobarlo tecleamos en el terminal:

ifconfig

Ahora ya sabemos que estaba en lo cierto, nuestra interfaz se llama eth2 (en amarillo ), eth2:1 y eth2:2 (en azul) son las interfaces virtuales que creamos en el anterior tutorial, dicho esto, vamos a crear la interfaz nueva a partir de eth2, nos vamos al terminal y escribimos:

sudo ifconfig eth2:3 172.16.100.30 netmask 255.255.0.0

En la imagen he marcado en rojo la nueva intrfaz, eth2:3.

Ahora vamos a crear el archivo propio del Host dentro del directorio de configuración de Apache. Nos vamos a un terminal y escribimos:

sudo gedit /etc/apache2/sites-available/passwordhost

Y dentro de este archivo escribimos lo siguiente:

<VirtualHost 172.16.100.30>
     ServerName www.passwordhost.com
     DocumentRoot /var/www/passwordhost
</VirtualHost>

Una vez creado el Host, con su archivo de configuración y demás, vamos a darlo de alta, para ello tecleamos en el terminal:

sudo a2ensite passwordhost

Estableciendo los niveles de seguridad

Una vez con el Host creado, vamos a establecer un nivel de seguridad básico para la página web. Antes de nada debemos crear el directorio que alojará la información referente a los usuarios y sus contraseñas. Vamos a crear tres usuarios y dos grupos, cada uno en su respectivo grupo. Los usuarios y grupos serán:

  • policia, del grupo buenos.
  • testigo, del grupo buenos.
  • ladron, del grupo malos.

A ser posible, para prevenir posibles problemas de compatibilidad, evitaremos poner tildes y carácteres raros (ñ, %, &…) en el nombre del usuario.

Pasemos ahora a crear dicho directorio, en el terminal tecleamos:

sudo mkdir /var/password

Estupendo, una vez creado el directorio vamos a crear el primer usuario, volvemos al terminal y tecleamos:

sudo htpasswd -c /var/password/.pass_user policia

Ya tenemos creado el primer usuario, policia. Ahora crearemos los siguientes usuarios.

NOTA: Una vez tenemos creado el primer usuario, para los usuarios que creemos posteriormente no debemos poner el -c en la consola, ya que le indicaríamos al comando htpasswd que volvemos a crear el primer usuario, y machacará la entrada del usuario policia.

Ahora que sabemos lo anterior, volvemos a la consola y creamos los demás usuarios:

  • Usuario testigo:
sudo htpasswd /var/password/.pass_user testigo
  • Usuario ladron:
sudo htpasswd /var/password/.pass_user ladron

Ahora ya tenemos creados los tres usuarios a los que daremos (o no) permiso permiso para visualizar el contenido de nuestro sitio web.

Pasemos ahora a crear los dos grupos, buenos y malos. Para crear un grupo nos vamos al terminal y tecleamos lo siguiente:

sudo gedit /var/password/.pass_group

Una vez con el archivo abierto, escribimos lo siguiente:

Guardamos el archivo y listo. Ahora volvemos al terminal, y tecleamos lo siguiente para crear el próximo archivo en el que configuraremos qué grupos y usuarios tienen acceso al Host passwordhost.

sudo gedit /var/www/passwordhost/.htaccess

Una vez con gedit, rellenamos el archivo con lo siguiente:

AuthType         Basic
AuthName         "Acceso a mi host"
AuthUserFile     /var/www/password/.pass_user
AuthGroupFile    /var/www/password/.pass_group
require group    buenos

Pulsamos en guardar, y vamos ahora a editar el último archivo. Volvemos al terminal y tecleamos:

sudo gedit /etc/apache2/sites-available/default

Nos vamos hacia el final del archivo, después de que cierre la última etiqueta <Directory>, escribimos lo mismo que en la imagen:

<Directory /var/www/passwoardhost>
     AllowOverride    AuthConfig
     Order    allow,deny
     Allow    from all
</Directory>

Una vez añadido eso al archivo default, ya sólo queda reiniciar apache, volvemos al terminal y tecleamos:

sudo apache2ctl restart

Verificando el funcionamiento

Ahora ya tenemos nuestro Host protegido, y hemos establecido los permisos para los usuarios que hemos querido, ahora sólo queda comprobar que todo funciona como debe.

Abrimos Firefox (o nuestro navegador habitual), y visitamos la siguiente dirección:

  • 172.16.100.30

Si  todo marcha bien, esto será lo que veamos:

Ahora introducimos cualquier usuario de los que tengan permiso, por ejemplo, policia.

  • En Nombre de Usuario: policia
  • En Contraseña: soypoli

Esos son los datos que yo use para crear el usuario, como es obvio, vosotros debéis introducir los que usasteis.

El usuario policia, al estar definido en el grupo buenos (único grupo autorizado para entrar al Host) pues ha podido entrar sin problemas.

Lo mismo debe de ocurrir con el usuario testigo, sin embargo, al usuario ladron no le permitirá entrar ya que no se encuentra en el grupo buenos, y por lo tanto no está autorizado.

Si el nombre de usuario que introducimos es erróneo o no está autorizado, al pulsar en Aceptar, nos volverá a salir la misma ventana de logeo, sin embargo, al pulsar en Cancelar, obtendremos el siguiente mensaje de error:

Eso significa que nuestro Host está correctamente protegido.

Bibliografía

  • Apuntes de clase.

Apache: Configuración de Hosts basados en IP

Introducción

En este tutorial, vamos a aprender a crear hosts virtuales basados en IP usando Apache bajo Ubuntu. Aunque podemos usar cualquier otra distribución para esto.

Creando los hosts virtuales basados en IP

Creando las interfaces virtuales de red necesarias

Antes de nada, vamos a crear dos interfaces virtuales de red, una para cada web, para ello vamos a usar el comando ifconfig. En primer lugar necesitamos saber el nombre real de nuestra interfaz de red, abrimos un terminal y tecleamos lo siguiente:

$ ifconfig

1

He señalado en rojo el nombre mi interfaz, aunque podemos tenerla con diversos nombres, eth0, eth1, wlan0…

Ahora para crear la interfaz nueva, tecleamos lo siguiente en un terminal:

$ sudo ifconfig eth2:1 172.16.100.10 netmask 255.255.0.0

2

Una vez creada la interfaz número uno, pasaremos a crear la número dos:

$ sudo ifconfig eth2:2 172.16.100.20 netmask 255.255.0.0

3

En la imagen podemos ver nuestras dos interfaces nuevas, ahora forman parte del resultado del comando ifconfig.

Creando los hosts y asignándolos a las interfaces

Voy a usar los hosts virtuales que creé en el tutorial Apache: Configuración de hosts virtuales basados en nombre. Podéis entrar en él y seguirlo para ver como se crean los hosts basados en nombre. En mi caso (y en el vuestro si habéis seguido previamente el tutorial anteriormente mencionado) escribo en el terminal:

$ sudo gedit /etc/apache2/sites-available/pagina1

5656

Ahora para asignar la página 1 a la primera interfaz que creamos (eth2:1) modificamos el archivo de forma que quede así:

<VirtualHost 172.16.100.10>
     ServerName www.pagina1.com
     DocumentRoot /var/www/pagina1
</VirtualHost>

4

Una vez modificado el archivo de la página 1, modificamos ahora el de la página 2, asignándole la IP de la segunda interfaz que creamos (eth2:2). Tecleamos en el terminal:

$ sudo gedit /etc/apache2/sites-available/pagina2
<VirtualHost 172.16.100.20>
     ServerName www.pagina2.com
     DocumentRoot /var/www/pagina2
</VirtualHost>

Modificando el archivo /etc/apache2/sites-available/default

En el anterior tutorial, modificamos el archivo /etc/apache2/sites-available/default para añadir una línea al principio, ahora debemos borrar esa línea. En el terminal tecleamos:

$ sudo gedit /etc/apache2/sites-available/default

hbdshbdf

Borramos la línea marcada y guardamos los cambios.

Reiniciando Apache y verificando el funcionamiento

Ya sólo nos queda reiniciar el servidor de Apache y comprobar que todo funciona, para reiniciar el servicio tecleamos en un terminal:

$ sudo apache2ctl restart

Nota: En el tutorial Apache: Configuración de hosts virtuales basados en nombre explico las diferentes formas de reiniciar Apache.

Vamos ahora a comprobar que las dos webs funcionan, abrimos un navegador (Mozilla Firefox por ejemplo) y entramos en:

  • 172.16.100.10
  • 172.16.100.20

basadosIP_1

basadosIP_2

Bibliografía

  • Apuntes de clase.

Apache: Configuración de hosts basados en nombres

Introducción

En este tutorial vamos a aprender a instalar y configurar un servidor Apache corriendo bajo Ubuntu, aunque podemos usar cualquier distribución de Linux para seguir este turorial.

¿Qué es Apache?

El servidor Apache es un servidor web HTTP con licencia GNU disponible para varias plataformas como por ejemplo Windows, Linux o MacOS. El objetivo del proyecto Apache es proporcionar un servidor seguro, eficiente y extensible. Actualmente, Apache es el servidor web más usado en internet. Según Netcraft, Apache está instalado casi en un 48% de todos los sitios webs.

Instalación

Para instalar Apache en nuestra máquina, tecleamos lo siguiente en un terminal:

$ sudo aptitude install apache2

1

Una vez instalado Apache, podemos iniciarlo con:

$ sudo apache2ctl start

Creando Host Virtuales por nombre

En primer lugar vamos a definir el nombre de los hosts virtuales que vamos a usar:

  • www.pagina1.com
  • www.pagina2.com

Ahora vamos a crear los hosts virtuales con los que Apache va a trabajar. Creamos los archivos de configuración referentes a los host virtuales.

$ sudo gedit /etc/apache2/sites-available/pagina1

2

Y dentro de este archivo, escribimos lo siguiente:

<VirtualHost 172.16.2.37>
   ServerName www.pagina1.com
   DocumentRoot /var/www/pagina1
</VirtualHost>

4

Yo he usado mi IP, como es obvio, en vuestro caso debéis usar la vuestra. Doy por hecho que sabéis cual es vuestra IP. Ahora creamos el segundo archivo, referente a la segunda página:

$ sudo gedit /etc/apache2/sites-available/pagina2
<VirtualHost 172.16.2.37>
   ServerName www.pagina2.com
   DocumentRoot /var/www/pagina2
</VirtualHost>

Ahora debemos crear los directorios que hemos indicado en la directiva ServerRoot:

  • /var/www/pagina1
  • /var/www/pagina2

Escribimos en la consola:

$ sudo mkdir /var/www/pagina1
$ sudo mkdir /var/www/pagina2

6

Dentro de estos directorios van nuestras páginas webs, vamos a crear el index de cada una para comprobar más tarde que funcionan correctamente. Empecemos con el de la primera web, así que tecleamos en el terminal:

$ sudo gedit /var/www/pagina1/index.html

5

Ahora introducimos algún código html básico, como por ejemplo:

<html>
   <head>
      <title>Página1</tile>
   </head>
   <body bgcolor="#CCCCCC">
      <h1>Esta es la página1</h1>
   </body>
</html>
 

7

Guardamos los cambios y vamos ahora a editar la segunda página con un código en HTML similar. Repetimos la operación de antes:

$ sudo gedit /var/www/pagina2/index.html
<html>
   <head>
      <title>Página2</tile>
   </head>
   <body bgcolor="#CCCCCC">
      <h1>Esta es la página2</h1>
   </body>
</html>
 

Una vez creadas las páginas de prueba, vamos a habilitarlas, por lo que ahora tecleamos en un terminal:

$ sudo a2ensite pagina1

8

Hacemos lo mismo con la segunda página:

$ sudo a2ensite pagina2

Si todo ha ido bien, el terminal nos devolverá el siguiente mensaje:
9

Una vez habilitadas las dos páginas, vamos a editar el archivo default en la configuración de Apache, volvemos a la consola y tecleamos lo siguiente:

$ sudo gedit/etc/apache2/sites-available/default

11

Ahora sólo tenemos que incluir la siguiente línea en la primera línea del archivo default:

NameVirtualHost 172.16.2.37

12

Una vez hecho eso, ahora sólo queda guardar los cambios en el archivo y editar el último fichecho de todos. Pulsamos en guardar y volvemos a la consola para teclear:

$ sudo gedit /etc/hosts

13

En este archivo añadiremos nuestras dos páginas para ser nosotros mismos quienes resolvamos su dirección. Añadimos dos líneas con este contenido:

14

172.16.2.37 www.pagina1.com
172.16.2.37 www.pagina2.com

Una vez hecho eso, ya sólo queda reiniciar Apache, lo hacemos de la siguiente manera:

$ sudo apache2ctl restart

Esto hará que nuestro servicio de Apache se reinicie cortando todas las conexiones, si por el contrario queremos reiniciar el servidor sin cortar ninguna conexión, tecleamos lo siguiente:

$ sudo apache2ctl graceful

La ejecución del anterior comando permitirá que los usuarios que estén demandando información de nuestro servidor Apache mantengan su conexión, aunque los cambios realizados en éste no le serán efectivos en el instante, pero sí cuando establezcan de nuevo conexión.

10

Es muy posible que al reiniciar Apache, obtengamos el siguiente mensaje:

15

Para solucionarlo, nos vamos al terminal de nuevo y tecleamos lo siguiente:

$ sudo gedit /etc/apache2/apache2.conf

16

Una vez en el archivo, sólo nos queda añadir la siguiente línea al principio del archivo:

ServerName localhost

17

Guardamos los cambios y ahora podremos reiniciar con tranquilidad y sin problemas.

Verificando el funcionamiento

Para comprobar que nuestras páginas funcionan, sólo tenemos que abrir un navegador (Mozilla Firefox por ejemplo) y teclear la URL de dichas páginas.

Página 1

  • URL: www.pagina1.com

pg1

Página 2

  • URL: www.pagina1.com

pg2

Bibliografía

  • Apuntes de clase.