View
5.887
Download
3
Category
Preview:
DESCRIPTION
manual de configuracion del servidor HTTP para la creación de sitios webs en el sistema operativo Ubunto, gracias a la herramienta Apache2.
Citation preview
HTTP. PRÁCTICA 2.
Instalación y configuración manual de
un servidor HTTP Apache en
Ubuntu.
Sergio Santos
Sergio Morón
ÍNDICE
• Práctica 2.1: Instalación de Apache
• Práctica 2.2: Crear servidores virtuales mediante
nombre
• Práctica 2.3: Acceso Web seguro con HTTPS
• Práctica 2.4: Restringir el acceso a un sitio a
determinados usuarios con autenticación básica
Práctica 2.1: Instalación de Apache
• En esta práctica vamos a instalar y configurar el
servidor HTTP en Ubuntu gracias al software Apache.
• Primero tenemos que instalar Apache, para ello
empleamos el comando apt-get install apache2.
Práctica 2.1: Instalación de Apache
• Una vez finalizado, comprobaremos que se ha instalado
correctamente. Basta con poner http://localhost en
nuestro navegador y nos aparecerá la siguiente página.
• Nos aparece está página debido a que existe un archivo
llamado apache2.conf, en el cual hay una línea que hace
referencia a los sitios web que están disponibles. En ese
archivo tenemos la ruta del directorio donde
encontramos el fichero “index.html” el cual contiene la
página web de inicio “It Works!”.
Práctica 2.1: Instalación de Apache
• Podemos observar en el directorio principal de Apache
los siguientes directorios y ficheros:
– Conf.d/: contiene archivos de configuración del servidor
– Envvars: contiene las variables de entorno de Apache 2
– Httpd.conf: es el archivo que contiene las opciones de configuración más importantes del
servidor. Es preferible utilizarlo antes que el apache2.conf
– Magic: codifica los documentos
– Mods-available: módulos disponibles (*.load) y configuración de los módulos (*.conf)
– Mods-enabled/: módulos habilitados, puede contener enlaces débiles a archivos en
/etc/apache2/mods-available. Sólo se cargan estos módulos. Además se debe enlazar el archivo
conf, si existe
– Ports.conf: aquí se especifica el nombre del sitio web y los puertos por donde escuchará nuestro
servidor
– Sites-available/: sitios disponibles
– Sites-enabled/: sitios habilitados, puede contener enlaces débiles a archivos en /etc/apache2/site-
available. Sólo se cargan estos sitios
Práctica 2.2: Servidores virtuales mediante nombre
• A continuación, vamos a crear sitios web. Para ello, dentro
de /etc/apache2/sites-availables, tenemos que crear ficheros
para cada uno de los servidores virtuales.
• Estos ficheros contendrán los siguientes contenedores y
parámetros para habilitar cada uno de los servidores
virtuales.
Práctica 2.2: Servidores virtuales mediante nombre
• En el fichero de configuración ports.conf tenemos que
añadir el nombre de dominio de nuestros sitios webs y
el puerto.
Práctica 2.2: Servidores virtuales mediante nombre
• Posteriormente habilitamos cada sitio para que estén
disponibles en el servidor virtual mediante la orden a2ensite,
el cual crea un enlace en /etc/apache2/sites-enabled, a los
ficheros de configuración creados en el directorio
/etc/apache2/sites-available.
• Para aplicar los cambios, reiniciamos el servidor Apache con
la orden service apache2 restart.
Práctica 2.2: Servidores virtuales mediante nombre
• Ahora tenemos que crear zonas nuevas, correspondientes
con los sitios webs, con el servidor DNS para poder
traducir la dirección IP de nuestro equipo a los nombres
de dominios que hemos creado.
• Mediante comandos, tenemos que añadir en el fichero
/etc/bind/named.conf.local los ficheros de nuestros sitios
web:
Práctica 2.2: Servidores virtuales mediante nombre
• Para aplicar la configuración, reincidamos el servidor
DNS con la orden service bind9 restart.
• Para comprobar que hemos hecho bien la
configuración, ponemos en el navegador el FQDN de
nuestros sitios web.
Práctica 2.2: Servidores virtuales mediante nombre
• También podemos realizarlo mediante la herramienta
Webmin.
• Accedemos a ella (http://localhost:10000) y creamos
nuevas zonas maestras para los respectivos sitios web.
Práctica 2.2: Servidores virtuales mediante nombre
• Añadimos el nombre de nuestros sitios web y del nombre
de nuestro equipo (servidor maestro). También hay que
introducir una dirección de e-mail.
• A continuación, en la opción de “Dirección Registros”,
introducimos la dirección IP de los sitios web, en nuestro
caso es la de nuestro equipo en los dos sitios web.
Práctica 2.2: Servidores virtuales mediante nombre
• El último paso es crear el alias para que en nuestro
FQDN pongamos www en vez del nombre del equipo.
Para ello nos situamos en “Nombre de Alias Regristo” e
introducimos el alias y el nombre de dominio.
• Para finalizar, aplicamos la configuración y comprobamos
que podemos acceder a nuestros sitios web.
Práctica 2.3: Acceso Web seguro con HTTPS
• En este apartado vamos a crear dos servidores virtuales
con el mismo nombre en el que uno será de modo
seguro, gracias al servicio SSL que se otorgará por el
puerto 443.
• En primer lugar, crearemos los directorios raíz de cada
sitio e incluir en cada uno de ellos su archivo
“index.html”.
Práctica 2.3: Acceso Web seguro con HTTPS
• A continuación, editaremos el archivo de configuración
ports.conf en el que especificaremos que los sitios web
que vamos a crear, uno se otorgará por el puerto 80 y el
otro, que se realizará de forma segura, por el puerto
443. Se puede realizar de las dos siguientes formas:
Práctica 2.3: Acceso Web seguro con HTTPS
• Si no poseemos una carpeta llamada “ssl” dentro del
directorio /etc/apache2, tenemos que crearla para
almacenar allí el certificado que otorgará el servicio web
de forma segura.
• Una vez creada, generaremos el certificado autofirmado
para que el servidor pueda servir páginas web seguras
con el protocolo HTTPS:
Práctica 2.3: Acceso Web seguro con HTTPS
• Añadimos el módulo que da soporte a SSL en apache2
mediante la orden sudo a2enmod ssl.
• Ahora, tenemos que crear la zona principal en el
servidor DNS, para ello seguimos los siguientes pasos y
aplicamos la configuración de la zona.
Práctica 2.3: Acceso Web seguro con HTTPS
• A continuación creamos un
fichero llamado como nuestro
sitio web en el directorio
/etc/apache2/sites-available, que
es donde tenemos que incluir la
configuración de los dos
servidores virtuales. Crearemos
dos contenedores de tipo
VirtualHost, uno para cada
servidor virtual, y dos
contenedores de tipo Directory,
para los directorios raíz de cada
servidor virtual.
Práctica 2.3: Acceso Web seguro con HTTPS
• Posteriormente habilitamos el sitio para que esté
disponible mediante la orden a2ensite.
• Para finalizar, aplicamos los cambios reiniciando el
servicio Apache mediante service apache2 restart.
Práctica 2.3: Acceso Web seguro con HTTPS
• Comprobamos que hemos hecho correctamente la
configuración introduciendo en el explorador el FQDN
de nuestro servidor web:
– De forma normal mediante http:
– De forma segura mediante https:
Práctica 2.4: Restringir el acceso a un sitio a determinados
usuarios con autenticación básica
• Procedemos a crear un sitio web que solo podrán acceder
usuarios autentificados, es decir, nos pedirá el nombre de
usuario y contraseña para observar su contenido.
• Primero procedemos a la creación de un usuario
(profesor), el cual vamos a usar para acceder al sitio web.
• También crearemos un directorio, con el usuario creado,
donde se hará referencia el sitio web.
Práctica 2.4: Restringir el acceso a un sitio a determinados
usuarios con autenticación básica
• Creamos la página web index.html, que será
la predeterminada al acceder al sitio web.
• A continuación, procedemos a la creación de la zona
del sitio web en el servidor DNS (Webmin), en el que
le llamaremos profesor.smr.braille.es.
Práctica 2.4: Restringir el acceso a un sitio a determinados
usuarios con autenticación básica
• Una vez creada la zona, crearemos un archivo
denominado “passwords”, en el directorio creado
anteriormente, y se lo añadimos al usuario creado
(profesor) con el comando htpasswd. Al ejecutar el
comando se creará el archivo passwords y nos pedirá
introducir una contraseña para el usuario, con esta
contraseña accederemos al sitio web.
Práctica 2.4: Restringir el acceso a un sitio a determinados
usuarios con autenticación básica
• Una vez creado el archivo con el usuario y la contraseña,
procedemos a editar la configuración del sitio y
modificar las propiedades de control del directorio del
sitio web (/home/profesor/www) de la siguiente manera:
Práctica 2.4: Restringir el acceso a un sitio a determinados
usuarios con autenticación básica
• Después accedemos al archivo de configuración
port.conf del servidor Apache para indicar que nuestro
sitio web permitirá el acceso por el puerto 80.
Práctica 2.4: Restringir el acceso a un sitio a determinados
usuarios con autenticación básica
• Posteriormente habilitamos el sitio para que esté
disponible mediante la orden a2ensite.
• Por último, reiniciamos el servicio Apache para guardar
y aplicar la configuración.
Práctica 2.4: Restringir el acceso a un sitio a determinados
usuarios con autenticación básica• Para comprobar que todo está correctamente configurado, accedemos al
navegador y accedamos al sitio web.
• Nos pedirá el usuario y la contraseña,
si la escribimos correctamente nos
mostrará el sitio web.
• En caso contrario, nos
aparecerá el mensaje de
autorización denegada.
FIN
Recommended