Sei sulla pagina 1di 23

ASIR – Servicios de Red e Internet

Página 1 de 23
FUNCIONAMIENTO DEL SERVICIO HTTP .............................................................. 3

 ACCESO SEGURO, UTILIZACIÓN DE CERTIFICADOS ........................................................................................... 5

PARÁMETROS DE CONFIGURACIÓN ........................................................................ 6

 PARÁMETROS DEL SERVIDOR...................................................................................................................... 6


 PARÁMETROS DEL CLIENTE ........................................................................................................................ 6

CONFIGURACIÓN DEL SERVIDOR HTTP ................................................................ 7

 CONFIGURACIÓN EN MICROSOFT WINDOWS ................................................................................................ 7


 GESTIÓN DE CERTIFICADOS Y ACCESO SEGURO CON HTTPS ........................................................................... 10
 CONFIGURACIÓN EN GNU/LINUX ............................................................................................................ 11

CONFIGURACIÓN DEL CLIENTE HTTP ................................................................. 20

 CONFIGURACIÓN EN MICROSOFT WINDOWS .............................................................................................. 22


 CONFIGURACIÓN EN GNU/LINUX ............................................................................................................ 23

Página 2 de 23
Funcionamiento del servicio HTTP
El protocolo HTTP (HyperText Transfer Protocol o Protocolo de Transferencia de HiperTexto)
surgió para facilitar a los usuarios el acceso a información remota de una forma sencilla e
intuitiva, dando lugar a lo que conocemos como WWW (World Wide Web o Telaraña Mundial).
Define las reglas que utilizan los componentes software (clientes y servidores) para
comunicarse. Utiliza TCP como protocolo de transporte.

Los usuarios acceden a HTTP a través de unos documentos denominados páginas o webs.

Además de texto, estas páginas pueden incluir imágenes, sonido o vídeo. También incluyen el
acceso a otras páginas o servicios a través de hiperenlaces. Al formato de estas páginas se le
conoce como hipertexto o HTML (HyperText Markup Language o Lenguaje de Marcas de
Hipertexto).

Las páginas estáticas tienen un contenido que no admiten interacción por parte del usuario,
simplemente se muestran. Para conseguir que los usuarios interactúen con ellas se requiere
que las páginas sean programadas o páginas dinámicas.

Lenguajes utilizados para la creación de páginas dinámicas:

 PHP
 ASP (Active Server Pages o Páginas Activas de Servidor).
 Java.
 JSP (Java Server Pages o Páginas de Servidor Java).
 JavaScript.
 CGI (Common Gateway Interfaz o Interfaz de Pasarela Común).
 Ajax (Asinchronous JavaScript and XML o JavaScript y XML Asíncrono).

Para la visualización de las páginas se utiliza un navegador. El acceso a una página requiere
que el usuario proporcione información sobre cómo localizarla, especificando lo que se conoce
como URL (Uniform Resource Locator o Localizador Uniforme de Recursos).

Cuando se indica un URL en un navegador, una vez resuelta por el servidor DNS que se tenga
configurado, se establece una conexión TCP con el puerto 80 del servidor, que permanece a la
escucha de solicitudes HTTP. El servidor atiende la petición y envía la página o el recurso
solicitado en forma de página web, mostrándose el navegador cliente.

Página 3 de 23
Las páginas que se ofrecen a los usuarios se almacenan en los servidores HTTP,
localizándose en un directorio específico denominado sitio o sitio web. En este directorio, se
suele establecer una jerarquía de subdirectorios para organizar las distintas páginas, así como
los distintos elementos que las integran. La página index.htm se sitúa en el directorio raíz de la
jerarquía y se utiliza a modo de índice para dar acceso al resto de páginas.

Los servidores web son programas que atienden peticiones HTTP, procesan e interpretan
código escrito en diferentes lenguajes y envían a los clientes los recursos solicitados.

Entre el cliente y el servidor se puede transferir cualquier tipo de contenido, aunque debería
estar definido por el estándar MIME (Multipurpose Internet Mail Extension o Extensión de
Correo Multipropósito de Internet). Este estándar se definió para el envío de mensajes de
correo electrónico, aunque posteriormente también se ha utilizado para transferencias de
información mediante HTTP.

Este estándar define los formatos, tipo de letra y características de una página para que pueda
ser visible por distintos navegadores.

Para especificar el tipo de contenido de una página web se incluye una etiqueta meta:

<meta http-equiv=”Content-Type" content="text/html”>

Página 4 de 23
 Acceso seguro, utilización de certificados
HTTP no es un protocolo seguro:

 El intercambio de información se realiza en texto plano. Es vulnerable a ataques de análisis


de tráfico de red (sniffing).

 No se garantiza que los equipos involucrados en la transferencia son quienes dicen ser Es
vulnerable a ataques de suplantación de identidad (spoofing).

 Existen ataques que se basan en el robo o falsificación de cookies o parámetros enviados


en la URL.

El acceso a determinadas páginas puede requerir determinada información confidencial, para


lo que se usan protocolos seguros debido a que la información viaja por la red sin cifrar:

HTTPS (HyperText Transfer Protocol Secure o Protocolo Seguro de Transferencia de


HiperTexto): se apoya sobre una conexión segura previamente establecida en la capa
de transporte mediante la utilización de SSL (Secure Socket Layer o Capa de Conexión
Segura) o TLS (Transport Layer Security o Seguridad de la Capa de Transporte),
encriptando la información mediante mecanismos de cifrado.
El puerto que se suele utilizar es el 443.
El cliente hará referencia a este servicio mediante el empleo de https en la URL.

S-HTTP (Secure HyperText Transfer Protocol o Protocolo de Transferencia de


HiperTexto Seguro): usa extensiones de las cabeceras HTTP para llevar a cabo la
negociación de seguridad entre cliente y servidor. Utiliza algoritmos para encriptar la
información, como por ejemplo PGP.

Los certificados son utilizados para permitir que las comunicaciones sean seguras. Cuando
accedemos a un sitio web mediante HTTPS necesitamos conocer previamente que el servidor
es realmente la entidad a la que queremos acceder. Para demostrarlo deberá poseer un
certificado, firmado por una entidad certificadora como la FNMT (Fábrica Nacional de Moneda
y Timbre).

Página 5 de 23
Parámetros de configuración

 Parámetros del servidor


Antes de proceder a la instalación y configuración de este servicio se debe crear el directorio
donde ubicará la raíz del sitio HTTP. Establezca los permisos adecuados sobre directorios y
subdirectorios a efectos de administración y seguridad.

Se deberá alojar las páginas en el directorio correspondiente. Establezca los hiperenlaces de


manera adecuada. Utilice una página index del sitio.

La configuración de un acceso seguro mediante HTTPS requerirá la instalación de un


certificado.

Alojamiento virtual de sitios web


Ofrece la posibilidad de configurar el servicio para permitir el acceso a diferentes servidores
distintos. Esta característica se conoce como máquina o servidor virtual. El uso de servidores
web virtuales permite reducir el número de máquinas físicas y aprovechar mejor los recursos de
los equipos.

Se pueden diferenciar diferentes tipos de alojamiento virtual:

Alojamiento virtual basado en IPs: para configurar diferentes IP, la máquina debe
tener varias tarjetas de red configuradas cada una con una dirección IP o hay que
asignar varias direcciones IP (alias o interfaces virtuales) a una misma tarjeta de red.
Esto supone un derroche de direcciones IP.

Alojamiento virtual basado en nombres: el servidor permite alojar varios nombres de


dominio sobre la misma dirección IP. Hay que configurar un servidor DNS que asocie
los nombres de dominio con la misma dirección IP:
www.asir.es IN A 193.100.200.101
www.dam.es IN A 193.100.200.101

Es la forma de alojamiento más utilizada. Se ahorra tanto en número de equipos como


en direcciones IP.

 Parámetros del cliente


Ciertos contenidos requieren la instalación de elementos adicionales al navegador o
activando/desactivando opciones del mismo.

Si el equipo pertenece a una organización con proxy, se debe configurar el navegador


indicando el equipo que ejerce de proxy.

Página 6 de 23
Configuración del Servidor HTTP

 Configuración en Microsoft Windows


Windows permite la instalación de un servidor HTTP mediante la utilidad IIS (Internet
Information Service). Es un software que integra un conjunto de servidores para sistemas
Windows (Web, FTP, correo y noticias). Es modular y permite ampliar su funcionalidad inicial
añadiendo nuevos componentes.

Instalación de IIS en Windows Server

1. Administrador del Servidor


2. Funciones  Agregar funciones
3. Avanza por el asistente, indicando Servidor web IIS como nuevo rol a instalar.

Configuración de IIS

1. Herramientas administrativas
2. Administrador de Internet Information Service
3. En el panel de izquierda pulsar sobre el nombre del equipo.
4. Seleccionar en el panel central la opción de configuración correspondiente.

Cada sitio web hereda las configuraciones globales y puede sobrescribirlas.

Página 7 de 23
SITIO WEB POR DEFECTO

IIS admite el alojamiento virtual de sitios web. Por defecto hay creado un sitio o servidor
virtual.

En la parte central aparecen las opciones de


configuración del sitio web por defecto que se
aplican a todos los directorios de ese sitio web.

En el panel de la derecha se encuentra la


configuración básica.

El directorio raíz del sitio web es C:\inetpub\wwwroot


donde se encuentra el fichero iisstart.htm.

Desde el Administrador de Servicios de Internet se


pueden parar, reanudar y reiniciar en cualquier
momento el servicio para el sitio creado. Apartado
“Administrar sitio web” del panel derecho para
seleccionar la acción deseada. Pruebe su
funcionamiento indicando como URL de su
navegador http://localhost, debiendo mostrarse la
página índice del sitio que ha creado. También
podemos utilizar el panel “Acciones” para su
comprobación mediante el subapartado “Examinar
sitio web”, pulsando sobre “Examinar servidor:puerto
(protocolo)”.

Crea las páginas web:


C:\inetpub\wwwroot\red.html
C:\inetpub\wwwroot\datos\datos1.html

Comprueba en el navegador la estructura creada.

1. Ficheros a servir por defecto:


La página predeterminada es iisstart.htm
En el panel central selecciona Documento
Predeterminado. Contiene los ficheros a servir
por defecto si no se especifica ninguno.

Renombra el fichero iisstart.htm por indice.htm y


observa en el navegador el resultado.

Añade el fichero red.html como el primero de los documentos predeterminados.

2. Examen de directorios:
Los directorios que cuelgan de wwwroot heredan su configuración.

Visualiza en el navegador http://localhost/datos

Sobre el directorio datos del sitio web predeterminado selecciona Examen de


directorios en el panel central. Habilítalo.

Página 8 de 23
3. Códigos de error:
Sobre el sitio web predeterminado, pincha sobre Páginas de errores en el panel
central.

Selecciona el código de error 404:


 Panel derecho, Modificar, Ejecutar una dirección URL en este sitio, selecciona una
página web creada anteriormente.
 Panel derecho, Modificar configuración de la característica, Página de errores
personalizados.

CREACIÓN DE DIRECTORIOS VIRTUALES

Los directorios virtuales no cuelgan del directorio raíz del servidor.


1. Crea el directorio C:\wiki y dentro una página web wiki1.html
2. Sobre el sitio web por defecto, botón derecho, Agregar Directorio Virtual.
3. Introduce como alias wiki y como ruta de acceso física su directorio.
4. Habilita el examen de directorios.
5. Comprueba los resultados en el navegador.

SERVICIOS DE AUTENTICACIÓN

1. Instalación de servicios de autenticación:


Administrador del Servidor, Funciones, Servidor Web IIS
Botón derecho, Agregar servicios de función, Seguridad:
Marcar las opciones:
 Autenticación básica
 Restricciones de IP y dominio

2. Control de acceso por IP:


Crea el directorio C:\inetpub\wwwroot\privado y dentro una página web.
Sobre el sitio web por defecto, Privado, en el panel central hacer clic sobre
Restricciones de Ipv4 y dominio.
Panel derecho, Modificar configuración de la característica y Agregar entrada de
permiso para dar permisos a ciertos host mediante su IP.

3. Autenticación HTTP Basic:


Crea dos usuarios nuevos: >net user usuario contraseña /add
Sobre el sitio web por defecto, directorio Privado, panel central Autenticación.
Deshabilita la autenticación anónima y habilita la autenticación básica.
Comprueba que los nuevos usuarios acceden a la página web del directorio virtual
Privado.

Página 9 de 23
 Gestión de certificados y acceso seguro
con HTTPS
IIS permite la generación de un certificado en un fichero de texto previa solicitud de
determinada información por parte de un asistente. Posteriormente habrá que contactar con
una CA para que firme el certificado y nos lo remita mediante un fichero con extensión “.cer”, el
cual habrá que instalar.

También es posible la generación de certificados autofirmados con extensión “.pfx” (Personal


Information Exchange File o Fichero de Intercambio de Información Personal).

Configuración de https

Configurar el servidor por defecto para que atienda peticiones https:

Página 10 de 23
 Configuración en GNU/Linux
Existen diferentes herramientas para distribuciones OpenSuSe y Fedora que permiten
gestionar el software de servidor HTTP Apache 2, modificando los parámetros del fichero
principal de configuración que deben establecerse para instalar un servidor web básico y
servidores web virtuales basados en nombre.

Apache 2

Fundación que desarrolla una gran cantidad de proyectos software. Uno de sus principales
proyectos es un servidor web open source. En la actualidad es el servidor web más popular y
usado en Internet. Pude instalarse en múltiples sistemas operativos.

Permite añadir nueva funcionalidad al servicio mediante la utilización de módulos.


Ofrece la posibilidad de configurar el servicio para permitir el acceso a diferentes servidores
distintos (servidor virtual).

Durante la configuración de Apache se asociará un sitio web a cada servidor virtual. Para que
los clientes puedan acceder mediante las URL correspondientes, será necesario que un
servidor DNS asocie cada uno de los nombres configurados con la dirección IP del servidor.

Página 11 de 23
Instalación de Apache en Ubuntu

1. Actualizar el sistema

# apt-get update

Con este comando se actualiza nuestra lista de repositorios y los paquetes que
tengamos instalados si hay alguna actualización disponible. Si les hace cualquier
pregunta acerca de actualizar algún paquete pueden contestar que sí.

2. Configurar el nombre FQDN del equipo

Editar los ficheros /etc/hostname y /etc/hosts para comprobar que el equipo tiene un
nombre FQDN (nombre del equipo y dominio).

3. Instalar Apache

# apt-get install apache2

Comandos para manejar el servidor:

El archivo de configuración por defecto de Apache se encuentra en el directorio


/etc/apache2/ y el directorio por defecto de los archivos donde se guardarán las
páginas web es en /var/www/html.

Para probar que Apache está funcionando bien basta con ir a la dirección en el
navegador:

 http://localhost - desde el mismo servidor o


 http://ipservidor - desde otro PC

Página 12 de 23
1. /etc/apache2/apache2.conf

Desde este fichero se incluyen (usando la directiva include) otros ficheros de configuración.

El archivo contiene un conjunto de directivas que determinan el comportamiento del servidor.


Las que no se especifiquen utilizan su valor por defecto.

Página 13 de 23
2. /etc/apache2/ports.conf
Se definen las IPs y puertos en los que escucha el servidor.

3. /etc/apache2/sites-available/
Directorio de configuración de sitios virtuales disponibles. Por defecto está creado el fichero
default con la configuración del denominado servidor virtual por defecto.

4. /etc/apache2/sites-enabled/
Directorio de configuración de sitios virtuales habilitados (con enlaces a los ficheros de
sites-available). Los enlaces que se encuentren en este directorio serán los servidores
virtuales de Apache. Se incluye en el fichero apache2.conf por orden alfabético. Por
defecto está creado el fichero 000-default que es un enlace al fichero default de sites-
availables.

Página 14 de 23
Configuración del servidor virtual por defecto

En Apache es posible diferenciar entre:

 Servidor principal. Atiende las peticiones, si no se configuran servidores virtuales. Su


configuración se define a nivel general en los ficheros de configuración.

 Servidores virtuales. Basados en IP o en nombres. Si se activan los servidores virtuales


por nombre, el servidor principal no tiene efecto. La configuración de cada
servidor virtual se realiza utilizando la directiva: <VirtualHost>

1. /etc/apache2/ports.conf
Comprueba que están habilitados los servidores virtuales por nombre. En todas las
direcciones IP y en el puerto 80.

2. /etc/apache2/sites-enabled
Accede a este directorio y consulta el fichero 000-default.conf (enlace simbólico)

Accede a un navegador con la dirección: http://localhost

1. crea el fichero /var/www/html/red.html


2. crea el directorio y fichero /var/www/html/datos/datos1.html
3. comprueba en el navegador

3. /etc/apache2/sites-available
Accede a este directorio y consulta el fichero 000-default.conf que contiene las
directivas que determinan como Apache sirve el contenido de ese directorio.
Todos los directorios que estén dentro de /var/www/html heredan su configuración.
Ésta se puede sobrescribir usando la directiva <Directory>.

Crea la sección <Directory> siguiente:

Comprueba en el navegador tanto la página principal como la del directorio datos.

Página 15 de 23
Para el último caso, se ha heredado la configuración de directorio html y no existe
una página web llamada red.html, por lo que se muestra su contenido (Options
Indexes).

Habrá que añadir una directiva <Directory> por cada directorio que tengamos en
el sitio:

4. Configurar códigos de error


Directiva ErrorDocument:

 Con un mensaje directamente:

 Con una página web:

5. Control de acceso por IP


Directivas Allow y Deny:

Página 16 de 23
6. Autenticación HTTP Basic

a) comprobar que el módulo auth_basic está habilitado


#ls /etc/apache2/mods-enabled

b) instalar las utilidades de Apache


#apt-get install apache2-utils

c) para usa la autenticación básica hay que crear un fichero accesible por Apache
en el que se guardarán los usuarios y sus contraseñas.
#htpasswd –c /etc/apache2/passwd usuario1
#htpasswd /etc/apache2/passwd usuario2

d) configurar el acceso al directorio a los usuarios:

Comprueba en el navegador los cambios

Página 17 de 23
Host virtuales

Configurar un Host virtual en Apache basado en Nombre

Un host virtual basado en nombre es hospedar múltiples dominios del estilo


www.ejemplo.com, www.otrodominio.com, etc. bajo una misma dirección IP. Este tipo
de configuración es muy común en los Hosting compartidos, donde múltiples clientes
comparten un mismo servidor.

Apache tiene varios directorios de configuración, los que nos interesan en este
momento son dos:
 /etc/apache2/sites-available
 /etc/apache2/sites-enabled

el primero tiene los archivos de configuración de los sitios disponibles y el segundo son
enlaces simbólicos de los sitios activos, por defecto al instalar Apache se crea un
archivo llamado default que contiene la configuración básica de acceso de Apache
y es un archivo que no se debe borrar.

Vamos a suponer que queremos añadir un Host Virtual llamado ejemplo.com.

1. Crea la estructura de directorio y páginas web.


#mkdir /var/www/ejemplo.com
#nano /var/www/ejemplo.com/index.html

2. Creamos un archivo en /etc/apache2/sites-available llamado ejemplo.com.conf

# nano /etc/apache2/sites-available/ejemplo.com.conf

Dentro del archivo ejemplo.com que acabamos de crear escribimos lo siguiente:


<VirtualHost *:80>
ServerName ejemplo.com
DocumentRoot /var/www/ejemplo.com
ServerAdmin admin@ejemplo.com
</VirtualHost>

 <Virtual Host *:80> estamos indicando la directiva VirtualHost para decir que es un
Servidor Virtual, indicamos la dirección IP donde va a responder y el puerto (80 es
el puerto por defecto donde escucha Apache). Si queremos que escuche en
todas las direcciones IP quitamos la dirección y colocamos un asterisco *:80

 ServerName es el nombre del servidor

 DocumentRoot es donde están guardados los archivos de nuestra página.

Página 18 de 23
3. Guarda el archivo y ejecuta en el terminal el siguiente comando desde el
directorio sites-available:

#a2ensite ejemplo.com.conf

Este comando crea un link simbólico en la carpeta /etc/apache2/sites-enabled,


para activar nuestro sitio.

4. Reinicia el Apache:

# service apache2 restart

5. Reconfigura el archivo hosts, añadiendo el nuevo dominio:

# nano /etc/hosts
127.0.0.1 ejemplo.com
# service networking restart

Prueba en el navegador que funciona correctamente escribiendo la dirección:


http://ejemplo.com.

Página 19 de 23
Configuración del Cliente HTTP
La utilización del software cliente de este servicio (navegadores) se basa en indicar la URL
deseada en el campo destinado a tal efecto. Reciben recursos de los servidores web, los
procesan y muestran los resultados al usuario. Si el recurso que recibe el navegador no puede
ser interpretado por él, puede redirigirlo a una aplicación externa capaz de gestionarlo o
preguntar al usuario qué quiere hacer.

Mantienen una memoria cache en la que almacenan durante un tiempo las direcciones a las
que han accedido (historial), los recursos procesados, las contraseñas introducidas por el
usuario en las aplicaciones, etc.

Algunas características y elementos comunes a gran parte de los navegadores son los
siguientes:

Página 20 de 23
Página 21 de 23
 Configuración en Microsoft Windows
En Windows es conocido su navegador Internet Explorer, incorporando en cada una de las
versiones de este sistema operativo alagunas novedades relevantes:

Página 22 de 23
 Configuración en GNU/Linux
Konqueror es uno de los navegadores comúnmente utilizado en distribuciones Linux. Su
utilización requiere el inicio de una sesión gráfica en el entorno gráfico KDE.

Página 23 de 23

Potrebbero piacerti anche