Está en la página 1de 42

20112012

UD 4 Instalacin y administracin de servicios Web.

Jos Jimnez Arias IES Gregorio Prieto 2011-2012

UD 4 Instalacin y administracin de servicios Web. 2011-2012

NDICE
1. Introduccin
- WWW - W3C y estndares Web

2. Caractersticas generales de un servicio Web.


- Componentes y funcionamiento. - Nombres y direcciones (URIs y URLs) - Pginas web, sitios web y aplicaciones web.

3. Protocolo HTTP.
- Funcionamiento bsico. - Mensajes HTTP. - Mtodos de peticin: GET, POST, HEAD, PUT, DELETE y TRACE. - Cabeceras. - Cdigos de estado y error. - Almacenamiento en cache. - Redirecciones. - Comprensin. - Cookies. - Autenticacin - Conexiones persistentes.

4. Configuracin de un servidor Web.


- Instalacin, configuracin y uso. - Autenticacin y control de acceso. - Registro y monitorizacin del servicio Web. - Tipos MIME. - WebDAV.

5. Navegadores Web.
- Parmetros de apariencia y uso.

Alumno: Jos Jimnez Arias Mdulo: Servicios de Red e Internet

UD 4 Instalacin y administracin de servicios Web. 2011-2012

6. Seguridad del protocolo HTTP:


- Protocolo HTTPS. - Conexiones seguras: SSL, TSL. - Gestin de certificados y acceso seguro con HTTPS

7. Almacenamiento virtual de sitios web: Hosts virtuales.


- Alojamiento virtual basado en IPs. - Alojamiento virtual basado en nombres. - Alojamiento virtual basado en puertos. - Alojamientos hbridos.

Alumno: Jos Jimnez Arias Mdulo: Servicios de Red e Internet

UD 4 Instalacin y administracin de servicios Web. 2011-2012

1. Introduccin
- WWW
World Wide Web, es bsicamente un medio de comunicacin de texto, grficos y otros objetos multimedia a travs de Internet, es decir, la web es un sistema de hipertexto que utiliza Internet como su mecanismo de transporte o desde otro punto de vista, una forma grfica de explorar Internet. La World Wide Web o Web, tuvo sus orgenes en 1989 en el CERN ubicado en Ginebra (Suiza), creado por Tim Berners-Lee y Berners-Lee que desarroll la arquitectura bsica de lo que actualmente es la Web. En 1990 se desarroll un primer prototipo, pero slo a partir de 1993, cuando el NCSA (Centro Nacional de Aplicaciones de Supercomputadoras) de la Universidad de Illinois introdujo el primer "cliente" grfico para la WWW, denominado Mosaic, la comunidad de usuarios de Internet comenz su empleo en forma exponencial.

Caractersticas de la Web 1. Hipermedial: en la Web podemos manejar informacin multimedia y navegar a travs de ella. 2. Distribuido: a diferencia de las antiguas y enormes bases de datos que concentraban la informacin fsicamente en un nico lugar, la Web es un sistema compuesto por miles de servidores localizados en cientos de ciudades del mundo que estn interconectadas entre s. 3. Heterogneo: por ser un servicio relativamente nuevo, la Web tiene la ventaja de poder reunir servicios y protocolos ms antiguos (como Gopher, los News, FTP, e inclusive el correo electrnico), de modo tal de presentar la informacin desde un nico programa cliente. 4. Colaborativo: sta es una caracterstica sustancial y la que posiblemente le haya dado el mayor empuje a su crecimiento, ya que cualquier persona, en cualquier parte del mundo, puede agregar informacin a la Web para que luego pueda ser consultada por el resto de los usuarios.

Alumno: Jos Jimnez Arias Mdulo: Servicios de Red e Internet

UD 4 Instalacin y administracin de servicios Web. 2011-2012

Funcionamiento de la Web El primer paso consiste en traducir la parte nombre del servidor de la URL en una direccin IP usando la base de datos distribuida de Internet conocida como DNS. Esta direccin IP es necesaria para contactar con el servidor web y poder enviarle paquetes de datos. El siguiente paso es enviar una peticin HTTP al servidor Web solicitando el recurso. En el caso de una pgina web tpica, primero se solicita el texto HTML y luego es inmediatamente analizado por el navegador, el cual, despus, hace peticiones adicionales para los grficos y otros ficheros que formen parte de la pgina. Las estadsticas de popularidad de un sitio web normalmente estn basadas en el nmero de pginas vistas o las peticiones de servidor asociadas, o peticiones de fichero, que tienen lugar. Al recibir los ficheros solicitados desde el servidor web, el navegador muestra la pgina tal y como se describe en el cdigo HTML, el CSS y otros lenguajes web. Al final se incorporan las imgenes y otros recursos para producir la pgina que ve el usuario en su pantalla.

- W3C y estndares Web


W3C son las siglas de World Wide Web Consortium, un consorcio fundado en 1994 para dirigir a la Web hacia su pleno potencial mediante el desarrollo de protocolos comunes que promuevan su evolucin y aseguren su interoperabilidad. El consorcio est compuesto por un grupo de programadores, desarrolladores web, ejecutivos de la industria y usuarios que ayudan a definir las especificaciones para el desarrollo de la tecnologa web. La principal actividad del W3C es desarrollar protocolos y directrices que aseguren el crecimiento de la Web a largo plazo. Los estndares del W3C definen las partes claves que hacen que la World Wide Web funcione.

Alumno: Jos Jimnez Arias Mdulo: Servicios de Red e Internet

UD 4 Instalacin y administracin de servicios Web. 2011-2012

2. Caractersticas generales de un servicio Web.


Es un programa informtico que procesa una aplicacin del lado del servidor realizando conexiones bidireccionales y/o unidireccionales y sncronas o asncronas con el cliente generando o cediendo una respuesta en cualquier lenguaje o Aplicacin del lado del cliente.

- Componentes y funcionamiento.
El Servidor web se ejecuta en un ordenador mantenindose a la espera de peticiones por parte de un cliente (un navegador web) y responde a estas peticiones adecuadamente, mediante una pgina web que se exhibir en el navegador o mostrando el respectivo mensaje si se detect algn error. Ejemplo, al teclear www.wikipedia.org en nuestro navegador, ste realiza una peticin HTTP al servidor de dicha direccin. El servidor responde al cliente enviando el cdigo HTML de la pgina; el cliente, una vez recibido el cdigo, lo interpreta y lo exhibe en pantalla. Como vemos con este ejemplo, el cliente es el encargado de interpretar el cdigo HTML, es decir, de mostrar las fuentes, los colores y la disposicin de los textos y objetos de la pgina; el servidor tan slo se limita a transferir el cdigo de la pgina sin llevar a cabo ninguna interpretacin de la misma. Adems de la transferencia de cdigo HTML, los Servidores web pueden entregar aplicaciones web. stas son porciones de cdigo que se ejecutan cuando se realizan ciertas peticiones o respuestas HTTP. Hay que distinguir entre:

Aplicaciones en el lado del cliente: el cliente web es el encargado de ejecutarlas en la mquina del usuario. Son las aplicaciones tipo Java "applets" o Javascript: el servidor proporciona el cdigo de las aplicaciones al cliente y ste, mediante el navegador, las ejecuta.

Aplicaciones en el lado del servidor: el servidor web ejecuta la aplicacin; sta, una vez ejecutada, genera cierto cdigo HTML; el servidor toma este cdigo recin creado y lo enva al cliente por medio del protocolo HTTP.

Las aplicaciones de servidor muchas veces suelen ser la mejor opcin para realizar aplicaciones web. Porque al ejecutarse sta en el servidor y no en la mquina del cliente, ste no necesita ninguna capacidad aadida, como s ocurre en el caso de querer ejecutar aplicaciones javascript o java. As pues, cualquier cliente dotado de un navegador web bsico puede utilizar este tipo de aplicaciones.

Alumno: Jos Jimnez Arias Mdulo: Servicios de Red e Internet

UD 4 Instalacin y administracin de servicios Web. 2011-2012

- Nombres y direcciones (URIs y URLs).


URI: Identificador de Recursos Uniforme, fue creado como el nombre que apunta a cualquier recurso. Esto fue luego subdividido en dos categoras generales: URL: Localizador Uniforme de Recursos para se supone que se utilizar slo para describir grupo de URI que sealan una localizacin y el protocolo que ser usado para acceder a los datos guardados. Ejemplo: http://es.wikipedia.org:80 URN: Nombre Uniforme de Recurso para describir un grupo de URIs que contienen solo el nombre de estos recursos y no necesariamente donde est localizada ni como llegar a ella. Ejemplo: urn:isbn:0451450523

Para resumir, las direcciones URL y URN ambas, son una parte de la grande y ms general URI. Por lo que sera seguro llamarle a un hipervnculo como una URI, no importando a aquello a lo que apunte, lo que el nombre significa y que protocolo es usado para acceder a la informacin. La URL es simplemente un subgrupo dentro de la URI. Solamente fue hecho para apuntar a la localizacin del recurso con una indicacin necesaria del protocolo. No haba necesidad de distinguir entre las dos ya que muchas veces usar el trmino URL es lo correcto y debido al crecimiento en la popularidad del trmino URL en el pblico en general, las dos se han convertido en algo intercambiable no importando las imprecisiones. Tambin vale la pena hacer notar que aunque la escritura tcnica ha comenzado el cambio a utilizar el trmino URI en lugar del URL.

Alumno: Jos Jimnez Arias Mdulo: Servicios de Red e Internet

UD 4 Instalacin y administracin de servicios Web. 2011-2012

- Pginas web, sitios web y aplicaciones web.


Pginas Web: Es el nombre de un documento o informacin electrnica adaptada para la World Wide Web y que puede ser accedida mediante un navegador para mostrarse en un monitor de computadora o dispositivo mvil. Esta informacin se encuentra generalmente en formato HTML o XHTML, y puede proporcionar navegacin a otras pginas web mediante enlaces de hipertexto. Las pginas web frecuentemente incluyen otros recursos como hojas de estilo en cascada, guiones (scripts) e imgenes digitales, entre otros. Las pginas web pueden estar almacenadas en un equipo local o un servidor web remoto. El servidor web puede restringir el acceso nicamente para redes privadas, p. ej., en una intranet corporativa, o puede publicar las pginas en la World Wide Web. El acceso a las pginas web es realizado mediante su transferencia desde servidores utilizando el protocolo de transferencia de hipertexto (HTTP). Sitios Web: Es una coleccin de pginas web relacionadas y comunes a un dominio de Internet o subdominio en la World Wide Web en Internet. Una pgina web es un documento HTML/XHTML accesible mediante el protocolo HTTP de Internet. Todos los sitios web pblicamente accesibles constituyen una gigantesca World Wide Web de informacin (un gigantesco entramado de recursos de alcance mundial). A las pginas de un sitio web se accede frecuentemente a travs de un URL raz comn llamado portada, que normalmente reside en el mismo servidor fsico. Los URL organizan las pginas en una jerarqua, aunque los hiperenlaces entre ellas controlan ms particularmente cmo el lector percibe la estructura general y cmo el trfico web fluye entre las diferentes partes de los sitios. Algunos sitios web requieren una subscripcin para acceder a algunos o todos sus contenidos. Ejemplos de sitios con subscripcin incluyen muchos portales de pornografa en Internet, algunos sitios de noticias, sitios de juegos, foros, servicios de correo electrnico basados en web, sitios que proporcionan datos de bolsa de valores e informacin econmica en tiempo real, etc. Aplicaciones Web: Son aquellas aplicaciones que los usuarios pueden utilizar accediendo a un servidor web a travs de Internet o de una intranet mediante un navegador. Las aplicaciones web son populares debido a lo prctico del navegador web como cliente ligero, a la independencia del sistema operativo, as como a la facilidad para actualizar y mantener aplicaciones web sin distribuir e instalar software a miles de usuarios potenciales. Existen aplicaciones como los webmails, wikis, weblogs, tiendas en lnea y la propia Wikipedia que son ejemplos bien conocidos de aplicaciones web. Es importante mencionar que una pgina Web puede contener elementos que permiten una comunicacin activa entre el usuario y la informacin. Esto permite que el usuario acceda a los datos de modo interactivo, gracias a que la pgina responder a cada una de sus acciones, como por ejemplo rellenar y enviar formularios, participar en juegos diversos y acceder a gestores de base de datos de todo tipo.

Alumno: Jos Jimnez Arias Mdulo: Servicios de Red e Internet

UD 4 Instalacin y administracin de servicios Web. 2011-2012

3. Protocolo HTTP.
El Protocolo de Transferencia de HiperTexto (Hypertext Transfer Protocol) es un protocolo clienteservidor que articula los intercambios de informacin entre los clientes Web y los servidores HTTP. La especificacin completa del protocolo HTTP 1/0 est recogida en el RFC 1945. Fue propuesto por Tim Berners-Lee, atendiendo a las necesidades de un sistema global de distribucin de informacin como el World Wide Web. Desde el punto de vista de las comunicaciones, est soportado sobre los servicios de conexin TCP/IP. Un proceso servidor escucha en un puerto de comunicaciones TCP (por defecto, el 80), y espera las solicitudes de conexin de los clientes Web. Una vez que se establece la conexin, el protocolo TCP se encarga de mantener la comunicacin y garantizar un intercambio de datos libre de errores. HTTP se basa en sencillas operaciones de solicitud/respuesta. Un cliente establece una conexin con un servidor y enva un mensaje con los datos de la solicitud. El servidor responde con un mensaje similar, que contiene el estado de la operacin y su posible resultado. Todas las operaciones pueden adjuntar un objeto o recurso sobre el que actan; cada objeto Web (documento HTML, fichero multimedia o aplicacin CGI) es conocido por su URL.

Alumno: Jos Jimnez Arias Mdulo: Servicios de Red e Internet

UD 4 Instalacin y administracin de servicios Web. 2011-2012

- Funcionamiento bsico.
Cada vez que un cliente realiza una peticin a un servidor, se ejecutan los siguientes pasos:
1.

Un usuario accede a una URL, seleccionando un enlace de un documento HTML o introducindola directamente en el campo Location del cliente Web.

2.

El cliente Web descodifica la URL, separando sus diferentes partes. As identifica el protocolo de acceso, la direccin DNS o IP del servidor, el posible puerto opcional (el valor por defecto es 80) y el objeto requerido del servidor. Se abre una conexin TCP/IP con el servidor, llamando al puerto TCP correspondiente. Se realiza la peticin. Para ello, se enva el comando necesario (GET, POST, HEAD,), la direccin del objeto requerido (el contenido de la URL que sigue a la direccin del servidor), la versin del protocolo HTTP empleada (casi siempre HTTP/1.0) y un conjunto variable de informacin, que incluye datos sobre las capacidades del browser, datos opcionales para el servidor, El servidor devuelve la respuesta al cliente. Consiste en un cdigo de estado y el tipo de dato MIME de la informacin de retorno, seguido de la propia informacin. Se cierra la conexin TCP.

3.

4.

5.

Una transaccin HTTP consiste bsicamente en: Conexin.- establecimiento de una conexin cliente-servidor. Por el puerto TCP/IP 80 es el ms conocido pero se pueden usar otros no reservados.

Solicitud.- envo por parte del cliente de un mensaje de solicitud al servidor. Respuesta.- envo por parte del servidor de una respuesta al cliente. Cierre.- fin de la conexin por parte del cliente y el servidor.

Alumno: Jos Jimnez Arias Mdulo: Servicios de Red e Internet

10

UD 4 Instalacin y administracin de servicios Web. 2011-2012

- Mensajes HTTP.
En una comunicacin HTTP slo existen dos tipos de mensajes, los de peticin (request) y los de respuesta (reply).

Solicitud HTTP
Una solicitud HTTP es un conjunto de lneas que el navegador enva al servidor. Incluye:

Una lnea de solicitud: es una lnea que especifica el tipo de documento solicitado, el mtodo que se aplicar y la versin del protocolo utilizada. La lnea est formada por tres elementos que deben estar separados por un espacio: o el mtodo o la direccin URL o la versin del protocolo utilizada por el cliente (por lo general, HTTP/1.0) Los campos del encabezado de solicitud: es un conjunto de lneas opcionales que permiten aportar informacin adicional sobre la solicitud y/o el cliente (navegador, sistema operativo, etc.). Cada una de estas lneas est formada por un nombre que describe el tipo de encabezado, seguido de dos puntos (:) y el valor del encabezado. El cuerpo de la solicitud: es un conjunto de lneas opcionales que deben estar separadas de las lneas precedentes por una lnea en blanco y, por ejemplo, permiten que se enven datos por un comando POST durante la transmisin de datos al servidor utilizando un formulario.

Por lo tanto, una solicitud HTTP posee la siguiente sintaxis (<crlf> significa retorno de carro y avance de lnea):
MTODO VERSIN URL<crlf> ENCABEZADO: Valor<crlf> . . . ENCABEZADO: Valor<crlf> Lnea en blanco <crlf> CUERPO DE LA SOLICITUD

A continuacin se encuentra un ejemplo de una solicitud HTTP:


GET http://es.kioskea.net HTTP/1.0 Accept : Text/html If-Modified-Since : Saturday, 15-January-2000 14:37:11 GMT User-Agent : Mozilla/4.0 (compatible; MSIE 5.0; Windows 95)

Alumno: Jos Jimnez Arias Mdulo: Servicios de Red e Internet

11

UD 4 Instalacin y administracin de servicios Web. 2011-2012

Respuesta HTTP
Una respuesta HTTP es un conjunto de lneas que el servidor enva al navegador. Est constituida por: Incluye:

Una lnea de estado: es una lnea que especifica la versin del protocolo utilizada y el estado de la solicitud en proceso mediante un texto explicativo y un cdigo. La lnea est compuesta por tres elementos que deben estar separados por un espacio: La lnea est formada por tres elementos que deben estar separados por un espacio: o la versin del protocolo utilizada o el cdigo de estado o el significado del cdigo Los campos del encabezado de respuesta: es un conjunto de lneas opcionales que permiten aportar informacin adicional sobre la respuesta y/o el servidor. Cada una de estas lneas est compuesta por un nombre que califica el tipo de encabezado, seguido por dos puntos (:) y por el valor del encabezado Cada una de estas lneas est formada por un nombre que describe el tipo de encabezado, seguido de dos puntos (:) y el valor del encabezado. El cuerpo de la respuesta: contiene el documento solicitado.

Por lo tanto, una respuesta HTTP posee la siguiente sintaxis (<crlf> significa retorno de carro y avance de lnea):
VERSIN-HTTP CDIGO EXPLICACIN <crlf> ENCABEZADO: Valor<crlf> . . . ENCABEZADO: Valor<crlf> Lnea en blanco <crlf> CUERPO DE LA RESPUESTA

A continuacin se encuentra un ejemplo de una respuesta HTTP:


HTTP/1.0 200 OK Date: Sat, 15 Jan 2000 14:37:12 GMT Server : Microsoft-IIS/2.0 Content-Type : text/HTML Content-Length : 1245 Last-Modified : Fri, 14 Jan 2000 08:25:13 GMT

Alumno: Jos Jimnez Arias Mdulo: Servicios de Red e Internet

12

UD 4 Instalacin y administracin de servicios Web. 2011-2012

- Mtodos de peticin: GET, POST, HEAD, PUT, DELETE y TRACE.


HEAD: Pide una respuesta idntica a la que correspondera a una peticin GET, pero sin el cuerpo de la respuesta. Esto es til para la recuperacin de meta-informacin escrita en los encabezados de respuesta, sin tener que transportar todo el contenido. GET: Pide una representacin del recurso especificado. Por seguridad no debera ser usado por aplicaciones que causen efectos ya que transmite informacin a travs de la URI agregando parmetros a la URL. Ejemplo: GET /images/logo.png HTTP/1.1 obtiene un recurso llamado logo.png Ejemplo con parmetros: /index.php?page=main&lang=es POST: Somete los datos a que sean procesados para el recurso identificado. Los datos se incluirn en el cuerpo de la peticin. Esto puede resultar en la creacin de un nuevo recurso o de las actualizaciones de los recursos existentes o ambas cosas. PUT: Sube, carga o realiza un upload de un recurso especificado (archivo), es el camino ms eficiente para subir archivos a un servidor, esto es porque en POST utiliza un mensaje multiparte y el mensaje es decodificado por el servidor. En contraste, el mtodo PUT te permite escribir un archivo en una conexin socket establecida con el servidor. La desventaja del mtodo PUT es que los servidores de hosting compartido no lo tienen habilitado. Ejemplo: PUT /path/filename.html HTTP/1.1 DELETE: Borra el recurso especificado. TRACE: Este mtodo solicita al servidor que enve de vuelta en un mensaje de respuesta, en la seccin del cuerpo de entidad, toda la data que reciba del mensaje de solicitud. Se utiliza con fines de comprobacin y diagnostico.

Alumno: Jos Jimnez Arias Mdulo: Servicios de Red e Internet

13

UD 4 Instalacin y administracin de servicios Web. 2011-2012

- Cabeceras.
Las Cabeceras HTTP o Metatags, son los parmetros que se envan en una peticin o respuesta HTTP al cliente o al servidor para proporcionar informacin esencial sobre la transaccin en curso. Estas cabeceras proporcionan informacin mediante la sintaxis 'Cabecera: Valor' y son enviadas automticamente por el navegador o el servidor Web.

Connection (conexin) Permite especificar diferentes opciones para la conexin. Por ejemplo: Connection: close Indica que la conexin debe cerrarse una vez transmitido el mensaje completo Content-Language (idioma del contenido) Esta cabecera indica el idioma de los destinatarios del recurso. Si no existe, se entiende que el recurso est orientado a todos los usuarios, independientemente del idioma. Esta cabecera permite listar varios idiomas. Por ejemplo, una herramienta on-line de traduccin inglsfrancs, podra incluir en sus pginas la cabecera: Content-Language: es, fr Es importante recalcar que esta cabecera no indica necesariamente el idioma del documento, sino del pblico al que objetivamente se orienta. Un texto sencillo de ingls para estudiantes hispanoparlantes incluira la cabecera: Content-Language: es Aunque el contenido pueda estar en ingls (y, por tanto, las metaetiquetas HTML indiquen que se trata de un documento en ingls). Content-Length (longitud del contenido) Indica la longitud del cuerpo del recurso, expresada en nmero de octetos. Content-Location (localizacin del contenido) Direccin complementaria que ofrece el servidor en su respuesta. Esta nueva direccin (una URI absoluta o relativa) no corrige la direccin original del recurso solicitado por el cliente, sino que ofrece una ruta a un recurso que complementa al solicitado originalmente. Content-Type (tipo de contenido) Indica, como su nombre indica, el tipo de contenido del recurso. As, la cabecera Content-Type: text/html; charset=ISO-8859-1
Alumno: Jos Jimnez Arias Mdulo: Servicios de Red e Internet

14

UD 4 Instalacin y administracin de servicios Web. 2011-2012

Indica que el recurso es de tipo texto, concretamente cdigo HTML, y codificado segn la especificacin ISO-8859-1. Date (fecha) Indica la fecha de creacin del recurso. Tiene la forma: Date: Tue, 12 Jul 2005 09:32:25 GMT Expect (espera) Mediante esta cabecera, el cliente indica qu tipo de respuesta espera del servidor. Si el servidor no est preparado para responder como el cliente espera, debe indicarlo mediante el envo de un cdigo de estatus 417 (Expectation Failed). Expires (expiracin) Indica la fecha a partir de la cual el recurso debe considerarse obsoleto. Un ejemplo: Date: Tue, 12 Jul 2005 09:32:25 GMT From ("desde") Direccin de correo electrnico del usuario (humano) autor de la solicitud.

Ms informacin sobre la cabecera From

If-Match ("si cuadra") Se usa junto con la cabecera de mtodo para hacerlo condicional. Esto permite actualizaciones eficientes de la cach. Si el cliente guarda en su cach alguna entidad (algn elemento distinguible) del recurso solicitado puede verificar gracias a esta cabecera si esta entidad sigue estando en vigor, es decir, si la copia guardada en la cach sigue siendo vlida. If-Modified-Since ("si se ha modificado desde") Igual que la cabecera If-Match, If-Modified-Since se usa con la cabecera que indica el mtodo para expresar una condicin. Si el recurso no ha variado desde la fecha indicada por el cliente, el servidor no debe enviarlo. Enviar, en cambio, un cdigo de estatus 304, confirmndole al cliente (navegador, por ejemplo, o robot de un buscador) que la copia que tiene en cach sigue siendo una copia fiel del recurso guardado en el servidor. If-None-Match ("si no cuadra") Igual que las cabecera If-Match e If-Modified-Since, se usa junto con la cabecera de mtodo para someterlo a una condicin. Funciona de forma inversa a if-Match. El servidor no debe ejecutar la solicitud (expresada mediante la cabecera de mtodo) si la entidad expresada por la condicin de If-None-Match se cumple.

Alumno: Jos Jimnez Arias Mdulo: Servicios de Red e Internet

15

UD 4 Instalacin y administracin de servicios Web. 2011-2012

IP (remote adress) No es estrictamente una cabecera del protocolo HTTP, sino del protocolo TCP/IP. Expresa la identificacin numrica de una mquina. Host (servidor) Nombre del servidor. Last-Modified (ltima modificacin) Mediante esta cabecera el servidor informa de la fecha y hora en que el recurso fue modificado por ltima vez.

Ms informacin sobre la cabecera Last-Modified

Location (localizacin) Mediante este campo el servidor indica la direccin (la URL) de un recurso cuando no se encuentra en la direccin en que se ha solicitado. De esta forma, el servidor invita al navegador (o al software del cliente en general) a que se redirija a la nueva localizacin. Referer (remitente) Documento desde el cual se ha realizado la solicitud actual. Si desde la URL www.cibernetia.com/index.php clicamos el enlace que lleva a www.cibernetia.com/headers_manual/index.php, la primera URL figurar como referer en la solicitud de la segunda URL. Request (solicitud)) Indica el fichero (el documento) solicitada y el mtodo y versin del protocolo que se van a emplear para realizar la conexin.

Ms informacin sobre el mtodo, versin del protocolo y fichero solicitado

Status Code (cdigo de estado) Mediante el cdigo de estado el servidor informa al navegador sobre cmo ha resuelto la solicitud de un documento. Esta cabecera nos indicar, por ejemplo, si se ha servido el documento con xito o se ha producido algn problema, como un error interno del servidor, o alguna incidencia, como una redireccin hacia otra URL diferente.

Puedes consultar la lista de cdigos de status

Alumno: Jos Jimnez Arias Mdulo: Servicios de Red e Internet

16

UD 4 Instalacin y administracin de servicios Web. 2011-2012

User-Agent (agente de usuario) El user-agent identifica el software de la mquina cliente (es decir, se refiere al software instalado en el ordenador que solicita una pgina web). La identificacin se realiza, normalmente, mediante una combinacin de sistema operativo y navegador. Un par de ejemplos:

Mozilla/4.0 (compatible; MSIE 6.0; Windows 98) Esta cabecera indica que el cliente est navegando con la versin 6.0 de Internet Explorer corriendo en un Windows 98. Googlebot/2.1 (+http://www.google.com/bot.html) En este caso es un robot el que est solicitando la pgina, concretamente Googlebot, la araa de Google.

- Cdigos de estado y error.


La lnea de estado es la primera lnea de la respuesta y consiste en la versin de protocolo que se utiliza, seguida de una indicacin de estado numrica a la que puede ir asociada una frase explicativa. El formato es el siguiente: Versin del protocolo SP Cdigo de estado SP Frase explicativa CRLF El cdigo de estado es un nmero de 3 dgitos que indica si la peticin ha sido atendida satisfactoriamente o no, y en caso de no haber sido atendida, indica la causa. Los cdigos se dividen en cinco clases definidas por el primer dgito del cdigo de estado. As tenemos: 1xx: Informativo. La peticin se recibe y sigue el proceso. Esta familia de respuestas indica una respuesta provisional. Este tipo de respuesta est formada por la lnea de estado y las cabeceras. Un servidor enva este tipo de respuesta en casos experimentales. 2xx: xito. La accin requerida por la peticin ha sido recibida, entendida y aceptada. 3xx: Redireccin. Para completar la peticin se han de tomar ms acciones. 4xx: Error del cliente. La peticin no es sintcticamente correcta y no se puede llevar a cabo. 5xx: Error del servidor. El servidor falla al atender la peticin que aparentemente es correcta.

Alumno: Jos Jimnez Arias Mdulo: Servicios de Red e Internet

17

UD 4 Instalacin y administracin de servicios Web. 2011-2012 Hay bastantes cdigos ms, ya que en este diagrama no estn todos, pero se pueden encontrar los cdigos HTTP que se detallan a continuacin. En primer lugar, los cdigos que han sido entendidos por el servidor, procesados correctamente y devuelto una informacin concreta acerca del contexto.

Error 200: Ok. Correcto. Error 201: Created. Creado. Error 204: No content. No hay contenido.

Cdigos mediante los cuales indicamos una redireccin al usuario, o que la pgina actual ha cambiado de direccin.

Error 301: Moved Permanently. Movido permanentemente. Error 307: Moved Temporarily. Movido temporalmente. Error 303: See others. Ver otros. Error 304: Not modified. No modificado. Error 300: Multiple choices. Mltiples opciones.

Errores de la comunicacin en la parte del usuario (cliente).


Error 400: Bad request. Peticin errnea. Error 401: Unauthorized. No autorizado. Error 403: Forbidden. Prohibido. Error 404: Not found. No se encuentra. Error 405: Method not allowed. Mtodo no permitido. Error 406: Not acceptable. No aceptable. Error 409: Conflict. Conflicto. Error 410: Gone. Recurso ya no existe. Error 412: Precondition failed. Precondicin fallida. Error 413: Request Entity too large. Peticin de entidad demasiado grande. Error 414: Request URI too long. Direccin demasiado larga. Error 415: Unsupported Media Type. Tipo multimedia no soportado.

Errores de la comunicacin en la parte del servidor.


Error 500: Internal Server Error. Error interno del servidor. Error 501: Not implemented. No implementado. Error 503: Service Unavailable. Servicio no disponible.

Alumno: Jos Jimnez Arias Mdulo: Servicios de Red e Internet

18

UD 4 Instalacin y administracin de servicios Web. 2011-2012

- Almacenamiento en cache.
Se llama cach web a la cach que almacena documentos web (es decir, pginas, imgenes, etctera) para reducir el ancho de banda consumido, la carga de los servidores y el retardo en la descarga. Un cach web almacena copias de los documentos que pasan por l, de forma que subsiguientes peticiones pueden ser respondidas por el propio cach, si se cumplen ciertas condiciones. TIPOS DE CACH: Las cachs web pueden utilizarse de diversas formas. Las cachs de agente de usuario (User-Agent), como las presentes en los navegadores web, son cachs privados, que funcionan solo para un nico usuario. Tambin existen paquetes especficos que se instalan como proxy local y actan como cach adems de realizar otras tareas, como por ejemplo Proxomitron. Los intermediarios en la comunicacin cliente-servidor tambin pueden implementar cachs compartidos (tambin llamadas proxy-cachs directos) que sirvan pginas a varios usuarios. Los proxy-cachs suelen ser usados por los proveedores de servicios de Internet (ISP), universidades y empresas para ahorrar ancho de banda. La intermediacin de estos proxy-cachs difiere de la de los privados en que los clientes no necesitan ser explcitamente configurados para usarlos. Algunos paquetes que pueden ser usados como proxy-cachs son Squid, Microsoft ISA Server y Blue Coat. Las cachs pasarela (llamadas tambin proxy-cachs inversos o aceleradores web) funcionan a cargo del propio servidor original, de forma que los clientes no distinguen unos de otros. Puede hacerse funcionar conjuntamente varias cachs pasarela para implementar una Content Delivery Network (CDN), como es el caso de Akamai. Paquetes como Varnish Cache pueden usarse para este propsito. Los intermediarios que funcionan como cach realizan con frecuencia otras tareas, tales como la autenticacin de usuarios y el filtrado de contenidos. Varios cachs pueden ser coordinados entre s con las ayuda de protocolos especficos tales como ICP o HTCP. Control de los cachs web El protocolo HTTP define tres mecanismos bsicos para controlar las cachs: Frescura, que permite que una respuesta sea usada sin comprobar de nuevo el servidor origen, y puede ser controlada tanto por el servidor como el cliente. Por ejemplo, la cabecera de respuesta Expires facilita una fecha en la que el documento caduca, y la directiva Cache-Control: max-age informa al cach del nmero de segundos durante los que la respuesta ser vlida. Validacin, que puede usarse para comprobar si una respuesta cacheada sigue siendo buena tras caducar. Por ejemplo, si la respuesta tiene una cabecera Last-Modified, un cach puede hacer una peticin condicional usando la cabecera If-Modified-Since para saber si la pgina cambi. Invalidacin, que normalmente es un efecto secundario de otra peticin que pasa por la cach. Por ejemplo, si la URL asociada con una respuesta cacheada es solicitada posteriormente mediante una peticin POST, PUT o DELETE, la respuesta cacheada quedar invalidada.

Alumno: Jos Jimnez Arias Mdulo: Servicios de Red e Internet

19

UD 4 Instalacin y administracin de servicios Web. 2011-2012

- Redirecciones.
Cundo se necesita una redireccin web?

Existen diferentes casos de real necesidad para los cuales se debe de usar la redireccin: por ejemplo en caso de cambio en la Url de nuestro portal, variacin del nombre de un fichero, o cambio de carpeta en la arborescencia de nuestro sitio web. Su funcionamiento: Necesitamos que el encabezamiento enviado por la pgina consultada corresponda a su estatus. Por ejemplo, si una pgina ha cambiado de lugar en nuestro portal, es de vital importancia que la antigua Url haga un redireccionamiento hacia la nueva, utilizando un encabezamiento HTTP que precise que esta pgina ha cambiado de manera definitiva de direccin (cdigo 301) Esto permitir al robot el no volver a indexar nunca la antigua Url, poniendo al da su base de datos aplicando la nueva Url a la pgina en cuestin. Si no aplicamos la redireccin desde la antigua Url, el robot y los visitantes obtendrn un error 404.

- Comprensin.
Es una capacidad que se puede utilizar en servidores web y clientes web para hacer un mejor uso de ancho de banda disponible, y proporcionar mayores velocidades de transmisin entre ambos. Los datos HTTP se comprimen antes de ser enviados desde el servidor. Para ello el navegador del cliente informa al servidor web de los mtodos de compresin que soporta. El servidor en base a dichos valores, comprimir el contenido antes de ser enviado al cliente. Los navegadores que no soportan ningn mtodo de compresin, recibir, contenido (por parte del servidor web) sin comprimir. Existen diferentes esquemas de compresin de contenido, pero los ms comunes son deflate y gzip. La compresin se da del servidor al cliente, no del cliente al servidor. El cliente al momento de enviar una peticin enva en su cabecera la lnea: Accept-Encoding: gzip, deflate Esto le permite saber al servidor que el cliente soporta http comprimido, al momento que el servidor entrega los datos aade en la cabecera. Content-Encoding: gzip Un ejemplo de un site que trabaja de sta forma es el del popular Slashdot (www.slashdot.org), es uno de los motivos por los que es tan rpido.

Alumno: Jos Jimnez Arias Mdulo: Servicios de Red e Internet

20

UD 4 Instalacin y administracin de servicios Web. 2011-2012

- Cookies.
Una cookie, se utiliza para un sitio web de origen para enviar informacin de estado del navegador del usuario y para el navegador para volver la informacin de estado para el sitio de origen. El Estado informacin puede ser utilizada para la autenticacin , identificacin de un usuario de la sesin , las preferencias del usuario, cesta de la compra contenido, o cualquier cosa que se puede lograr a travs de datos de texto almacenar en el ordenador del usuario. Las cookies no pueden ser programadas, no pueden llevar virus, y no pueden instalar programas maliciosos en el ordenador anfitrin. Sin embargo, pueden ser utilizados por el software espa. Las cookies sirven para que los navegadores identifiquen a los usuarios que anteriormente se han conectado.

- Autenticacin.
Es el proceso de identificar si un cliente es elegible para tener acceso a un recurso. El protocolo HTTP soporta la autenticacin como un medio de negociar el acceso a un recurso seguro. La solicitud inicial de un cliente es normalmente una solicitud annima, que no contiene ninguna informacin de autenticacin. Las aplicaciones de servidor HTTP pueden denegar la solicitud annima indicando que se requiere la autenticacin. La aplicacin de servidor enva encabezados de la autenticacin de WWW para indicar los esquemas de autenticacin soportados. Tipos de autenticacin:
AUTENTICACIN BSICA Cuando el usuario accede a un recurso del servidor web protegido mediante autenticacin bsica, tiene lugar el siguiente proceso: 1. El navegador presenta al usuario la ventana de autenticacin, para que introduzca su nombre y contrasea. 2. El navegador intenta establecer una conexin con el servidor utilizando esta informacin. 3. Si el servidor rechaza la informacin de autenticacin, el navegador le presenta nuevamente la ventana al usuario hasta que ste introduce por fin una contrasea vlida o cierra la ventana. 4. Cuando el servidor web verifica con xito los datos de autenticacin, se establece la conexin de acceso al recurso protegido.

Alumno: Jos Jimnez Arias Mdulo: Servicios de Red e Internet

21

UD 4 Instalacin y administracin de servicios Web. 2011-2012 AUTENTICACIN MEDIANTE RESMENES O DIGEST Dado que el mtodo anterior enva las contraseas en claro, no resulta muy adecuado cuando las exigencias de seguridad son elevadas. Para paliar este inconveniente, adems de cifrar el canal con SSL, otra alternativa consiste en enviar un resumen criptogrfico de la contrasea (un hash) en vez de la propia contrasea, de la siguiente forma: 1. El servidor enva al navegador cierta informacin que ser utilizada en el proceso de autenticacin. 2. El navegador aade esta informacin a su nombre de usuario y contrasea, junto con otra informacin adicional, y crea un resumen del conjunto. Esta informacin adicional persigue el cometido de impedir ataques de reactuacin, en los que un atacante intercepta y copia el resumen, volvindolo a utilizar para autenticarse l mismo ante el servidor. 3. Se enva en claro tanto el resumen como la informacin adicional al servidor a travs de la red. 4. El servidor aade esta informacin adicional a una copia en claro de la contrasea del cliente y crea el resumen del conjunto. 5. El servidor compara el resumen que ha creado con el que le ha llegado del navegador. 6. Si ambos nmeros coinciden, se le concede acceso al usuario.

AUTENTICACIN HTTPS El uso del formato HTTPS para enviar mensajes garantiza la autenticacin de los usuarios que necesitan acceso a los recursos de Message Queue Server por medio de un servidor Web estableciendo una conexin de nivel de sockets seguro (SSL) para conseguir una comunicacin segura entre un remitente y un destinatario. El emisor es siempre considerado como cliente SSL y el destinatario como servidor SSL independientemente de si el equipo est ejecutando Message Queue Server o software de cliente. Tenga en cuenta que la autenticacin para establecer una sesin de SSL no es la misma que la autenticacin de mensajes, que confirma que un mensaje no se ha manipulado y se puede utilizar para comprobar la identidad del remitente. Para obtener informacin acerca de la autenticacin de mensajes, consulte Administrar la autenticacin de mensajes.

En la autenticacin HTTPS se utilizan dos tipos de certificados: Certificados de servidor. Este certificado contiene informacin sobre el servidor que permite a un cliente identificar el servidor antes de compartir informacin confidencial. Certificados de cliente. Este certificado contiene informacin personal sobre el usuario e identifica el servidor al cliente de SSL (el remitente).

Alumno: Jos Jimnez Arias Mdulo: Servicios de Red e Internet

22

UD 4 Instalacin y administracin de servicios Web. 2011-2012

- Conexiones persistentes.
Las conexiones persistentes del HTTP, tambin llamadas HTTP keep-alive, o reutilizacin de la conexin del HTTP, son la idea de usar la misma conexin del TCP para enviar y para recibir mltiplo Peticiones del HTTP/responses, en comparacin con abrir una nueva conexin para cada solo par de la peticin/de la respuesta. Caractersticas: Permiten que varias peticiones y respuestas sean transferidas usando la misma conexin TCP. Se usan por omisin en HTTP 1.1. Si se enva la cabecera Connection: close, el servidor cierra la conexin despus de la respuesta. Un servidor puede cerrar la conexin antes de enviar todas las respuestas. El servidor cerrar las conexiones inactivas pasado un plazo de tiempo (ej: 30 segundos?). El ahorro del establecimiento de una conexin TCP para cada conexin Web reduce el tiempo en el caso de las conexiones secuenciales. El tiempo de respuesta de las conexiones paralelas persistentes es el mismo que el de las conexiones no persistentes, aunque la carga para el servidor suele ser menor cuando son persistentes.

Alumno: Jos Jimnez Arias Mdulo: Servicios de Red e Internet

23

UD 4 Instalacin y administracin de servicios Web. 2011-2012

4. Configuracin de un servidor Web.


Un servidor web es un programa informtico que procesa una aplicacin del lado del servidor realizando conexiones bidireccionales y/o unidireccionales y sncronas o asncronas con el cliente generando o cediendo una respuesta en cualquier lenguaje o Aplicacin del lado del cliente.

- Instalacin, configuracin y uso.


Lo primero que hay que hacer es instalar el servidor web; en nuestro caso instalaremos apache en su versin para Windows. Apache es un servidor open source, y el ms usado por los servidores en todo Internet, podrs encontrar toda la informacin sobre Apache en su pgina web: http://www.apache.org/ (en ingls por supuesto), pero en principio a nosotros lo que ms nos interesa es bajarnos el programa en s, lo podrs bajar de la siguiente direccin: apache_2.0.43-win32-x86-no_ssl.exe Esta versin de Apache no trae soporte para SSL (Secure Socker Layer), pero vamos, no creo que nadie tenga problemas en esto, y de todos modos si es tan listo que lo necesita, pues que lo busque en la pgina de Apache y se lo baje (ala!). Bien, una vez bajado el Apache (son unos 7 megas) lo que tenemos que hacer es instalarlo; estos son los pasos a seguir: 1 - Una vez bajado le damos caa al ejecutable (doble clic) y nos aparece la siguiente ventana:

Alumno: Jos Jimnez Arias Mdulo: Servicios de Red e Internet

24

UD 4 Instalacin y administracin de servicios Web. 2011-2012

2 - En esta ventana hacemos clic en el botn next y nos aparecer esta otra ventana:

3 - Despus de habernos ledo la licencia del Apache (abstenerse de comentarios) y haber selecciona la casilla de aceptacin (I accept the terms in the licence agreement), hacemos clic en el botn next, apareciendo la siguiente ventana:

Alumno: Jos Jimnez Arias Mdulo: Servicios de Red e Internet

25

UD 4 Instalacin y administracin de servicios Web. 2011-2012

4 - De nuevo una ventana, lo mismo que antes, te lees todo y haces clic en el botn next, apareciendo esta otra ventana:

5 - Bien ahora configuramos:

- Network Domain:
- En esta casilla tenemos varias opciones; lo ms normal es que queramos instalar el servidor para usarlo nosotros solos, si este es tu caso en esta casilla pon "localhost" (sin las comillas). - Si por el contrario deseas que el resto del mundo mundial pueda ver las maravillas que puedes hacer con PHP+MySQL pues en esta casilla debes poner tu direccin IP. Nota: No sabes cul es tu direccin IP? Lo podrs saber ejecutando, en modo consola, el comando ipconfig, ifconfig en plataforma GNU/Linux. - La mayora de nosotros no tenemos una direccin IP fija cuando nos conectamos a Internet as que esto no nos servir de mucho (por ejemplo en el operador de cable Retecal, las direcciones IP son dinmicas, pero por lo menos en mi caso, siempre tienes la misma) - Hay otras opciones adems de estas dos; en Internet hay programas redireccionadores de IPs dinmicas, todo es buscar un poco.

- Server Name:
- Es el nombre que quieres que tenga tu servidor web, por ejemplo My_Server. - Administrators Email adress : aqu tienes que poner la direccin de correo electrnico del administrador del servidor web; vamos la tuya, por ejemplo: yo_mimo@hotmail.com Despus de haber rellenado ests casillas nos aparecen dos opciones: - For all users in port 80, as a service: instala Apache como un servicio de Windows, es decir que Apache se ejecuta al iniciar el ordenador; eligiendo esta opcin el servidor se pone a la escucha en Alumno: Jos Jimnez Arias Mdulo: Servicios de Red e Internet

26

UD 4 Instalacin y administracin de servicios Web. 2011-2012 el puerto 80. Nota: En Retecal estn "capados" los puertos con un nmero bajo, es decir, que el puerto 80 entre otros no van a poder utilizarse desde fuera de la red de Retecal, as que si tienes Retecal no elijas esta opcin.

- Only for the current user , on port 8080, when started manually: instala Apache como un programa normal, para ejecutar el servidor lo elegimos en el men de inicio y se abre una ventana para indicar que se est ejecutando Apache. Una vez rellenados todos los campos y elegida la opcin que deseemos, hacemos clic en el botn next; nos aparecer esta ventana:

Esta es la tpica ventana en la escogemos si queremos hacer una instalacin tpica o personalizada, hacemos clic en la instalacin tpica (typical) y luego en el botn next

Alumno: Jos Jimnez Arias Mdulo: Servicios de Red e Internet

27

UD 4 Instalacin y administracin de servicios Web. 2011-2012

Aqu nos dan a elegir el directorio donde deseamos instalar el Apache, por defecto se instala en Archivos de programa, pero nosotros para no complicarnos mucho la vida, lo vamos a instalar en c:\Apache\ Para cambiar el directorio de instalacin hacemos clic en el botn change y escribimos c:\Apache; aceptamos clic en el botn ok y luego en el botn next. Cuando acabe la instalacin aparecer otra ventana, simplemente hacemos clic en el botn finish y ya habr acabado la instalacin de nuestro servidor.

Y aqu acabamos con la instalacin de Apache ahora vamos a ver la configuracin: Lo primero es ejecutar el servidor apache eligiendo la opcin start Apache in console, abrindose una ventana (negra) indicando que se est ejecutando el servidor Apache. Despus de esto abrimos nuestro explorador de Internet para ver si realmente nuestro servidor est funcionando. Una vez abierto, tenemos varias opciones segn como hayamos rellenado el campo network domain: - Si hemos puesto nuestra direccin IP, en la barra de direccin de nuestro explorador ponemos esto: http://nuestra direccin ip:8080 Nota: ponemos al final :8080 para indicar al explorador que nuestro servidor est escuchando en el puerto 8080. - Si en el campo network domain hemos puesto localhost, para que nuestro servidor no sea visible desde Internet pondremos esto en la barra de direccin de nuestro navegador: http://localhost:8080 Si todo es correcto aparecer una pgina diciendo que nuestro servidor Apache est configurado con xito.

Alumno: Jos Jimnez Arias Mdulo: Servicios de Red e Internet

28

UD 4 Instalacin y administracin de servicios Web. 2011-2012

- Autenticacin y control de acceso.


La autenticacin es el proceso de identificar si un cliente es elegible para tener acceso a un recurso. El protocolo HTTP soporta la autenticacin como un medio de negociar el acceso a un recurso seguro. La solicitud inicial de un cliente es normalmente una solicitud annima, que no contiene ninguna informacin de autenticacin. Las aplicaciones de servidor HTTP pueden denegar la solicitud annima indicando que se requiere la autenticacin. La aplicacin de servidor enva encabezados de la autenticacin de WWW para indicar los esquemas de autenticacin soportados. Este documento describe varios esquemas de autenticacin para HTTP y aborda su suporte en Windows Communication Foundation (WCF).

El control de acceso constituye una poderosa herramienta para proteger la entrada a un web completo o slo a ciertos directorios concretos e incluso a ficheros o programas individuales. Este control consta generalmente de dos pasos: En primer lugar, la autenticacin, que identifica al usuario o a la mquina que trata de acceder a los recursos, protegidos o no. En segundo lugar, procede la cesin de derechos, es decir, la autorizacin, que dota al usuario de privilegios para poder efectuar ciertas operaciones con los datos protegidos, tales como leerlos, modificarlos, crearlos, etc.

Por defecto, todas las pginas y servicios del servidor web se pueden acceder annimamente, es decir, sin necesidad de identificarse ante el servidor y sin ningn tipo de restriccin. En mquinas NT, el usuario annimo pertenece al grupo Invitados y tiene asignada la cuenta IUSR_nombremquina, donde nombre de mquina toma el valor del nombre del servidor: para una mquina llamada Mordor, la cuenta de acceso annimo a Internet sera IUSR_MORDOR. Esta cuenta annima debe tener permiso para conectarse localmente. En Linux, en cambio, no es necesario crear una cuenta en la mquina para los usuarios annimos.

Alumno: Jos Jimnez Arias Mdulo: Servicios de Red e Internet

29

UD 4 Instalacin y administracin de servicios Web. 2011-2012

- Registro y monitorizacin del servicio Web.


Los archivos de registros o archivos log como se conocen comnmente, son archivos en donde se van almacenando un registro de todos los eventos que ocurren en un sistema durante un periodo de tiempo en particular. Estos archivos son usados tanto por el sistema operativo como por las aplicaciones o demonios (procesos) para registrar datos o informacin sobre un evento en particular. En un sistema Linux podemos encontrar estos archivos de registro o logs en la carpeta /var/log En esta carpeta encontraremos casi todos los archivos de registros de un sistema, pero cabe destacar que muchas aplicaciones crean estos archivos en sus propias carpetas fuera de /var/log. Ahora bien, En que nos sirve los logs para monitorear nuestro sistema? pues muy sencillo, los principales archivos logs que estn en la carpeta /var/log van almacenando informacin de casi todos los eventos que ocurren en tu PC prcticamente desde que la enciendes y en ellos podremos ver por ejemplo que pasa internamente en Linux cuando conectas una Memoria USB, un Modem USB o cuando estas conectado a internet puedes ver los intentos de entrada bloqueados por tu firewall. En otras circunstancias podremos ser capaces de observar algn mensaje de error que se pueda producir cuando estas conectando algn hardware nuevo o si tienes un servicio web instalado podrs ver quienes estn conectados a tu equipo.

- Tipos MIME. (Extensiones multipropsito de correo de internet)


Son una serie de convenciones o especificaciones dirigidas al intercambio a travs de Internet de todo tipo de archivos (texto, audio, vdeo, etc.) de forma transparente para el usuario. Una parte importante del MIME est dedicada a mejorar las posibilidades de transferencia de texto en distintos idiomas y alfabetos. En sentido general las extensiones de MIME van encaminadas a soportar:

Texto en conjuntos de caracteres distintos de US-ASCII; adjuntos que no son de tipo texto; cuerpos de mensajes con mltiples partes (multi-part); informacin de encabezados con conjuntos de caracteres distintos de ASCII.

Prcticamente todos los mensajes de correo electrnico escritos por personas en Internet y una proporcin considerable de estos mensajes generados automticamente son transmitidos en formato MIME a travs de SMTP. Los mensajes de correo electrnico en Internet estn tan cercanamente asociados con el SMTP y MIME que usualmente se les llama mensaje SMTP/MIME.

Los tipos de contenido definidos por el estndar MIME tienen gran importancia tambin fuera del contexto de los mensajes electrnicos. Ejemplo de esto son algunos protocolos
Alumno: Jos Jimnez Arias Mdulo: Servicios de Red e Internet

30

UD 4 Instalacin y administracin de servicios Web. 2011-2012

de red tales como HTTP de la Web. HTTP requiere que los datos sean transmitidos en un contexto de mensajes tipo e-mail aunque los datos pueden no ser un e-mail propiamente dicho. En la actualidad ningn programa de correo electrnico o navegador de Internet puede considerarse completo si no acepta MIME en sus diferentes facetas (texto y formatos de archivo Subtipos de Multiparte El estndar MIME define varios subtipos para mensajes multiparte, estos especifican la naturaleza de la parte del mensaje y su relacin con otras partes. El subtipo es especificado en el encabezado "Content-type" para todo el mensaje. Por ejemplo, un mensaje MIME multiparte que usa el subtipo digest tendr un "Content-Type": "multipart/digest". La RFC inicialmente define 4 subtipos: mixed, digest, alternate y parallel. Una aplicacin que cumpla mnimamente el estndar debe soportar al menos mixed y digest; el resto de los subtipos son opcionales. Otras RFCs definen subtipos adicionales como: signed y formdata. Mixed Multipart/mixed es usado para enviar mensajes o archivos con diferentes encabezados "Content-Type" ya sea en lnea o como adjuntos. Si se envan imgenes u otros archivos fcilmente legibles, la mayora de los clientes de correo electrnico las mostrarn como parte del mensaje (a menos que se especifique de manera diferente el encabezado "Content-disposition"). De otra manera sern ofrecidos como adjuntos. El content-type implcito para cada parte es "text/plain". Digest Multipart/digest es una forma simple de enviar mltiples mensajes de texto. El contenttype implcito para cada parte es "message/rfc822". Definido en RFC 2046, Seccin 5.1.5. Alternative El subtipo multipart/alternative indica que cada parte es una versin "alternativa" del mismo contenido (o similar), cada una en formatos diferentes denotados por su encabezado "Content-Type". Los formatos son ordenados atendiendo a cuan fieles son al original, con el menos fiel al inicio. Los sistemas pueden escoger la "mejor" representacin que ellos son capaces de procesar; en general esta ser la ltima parte que el sistema entiende, a menos que otros factores puedan afectar este comportamiento.

Alumno: Jos Jimnez Arias Mdulo: Servicios de Red e Internet

31

UD 4 Instalacin y administracin de servicios Web. 2011-2012

- WebDAV.
El objetivo de WebDAV es hacer de la World Wide Web un medio legible y editable, en lnea con la visin original de Tim Berners-Lee. Este protocolo proporciona funcionalidades para crear, cambiar y mover documentos en un servidor remoto (tpicamente un servidor web). Esto se utiliza sobre todo para permitir la edicin de los documentos que sirve un servidor web, pero puede tambin aplicarse a sistemas de almacenamiento generales basados en web, que pueden ser accedidos desde cualquier lugar. La mayora de los sistemas operativos modernos proporcionan soporte para WebDAV, haciendo que los ficheros de un servidor WebDAV aparezcan como almacenados en un directorio local.

WebDAV aade los siguientes mtodos a HTTP: PROPFIND - Usado para recuperar propiedades, almacenadas como XML, desde un recurso. Tambin est sobrecargado para permitir recuperar la estructura de coleccin (alias jerarqua de directorios) de un sistema remoto. PROPPATCH - Usado para cambiar y borrar mltiples propiedades de un recurso en una simple operacin atmica (atomic commit). MKCOL - Usado para crear colecciones (alias directorio) COPY - Usado para copiar un recurso desde un URI a otro. MOVE - Usado para mover un recurso desde un URI a otro. LOCK - Usado para bloquear (lock) un recurso. WebDAV soporta tanto bloqueos compartidos como exclusivos. UNLOCK - Para desbloquear un recurso.

Alumno: Jos Jimnez Arias Mdulo: Servicios de Red e Internet

32

UD 4 Instalacin y administracin de servicios Web. 2011-2012

5. Navegadores Web.
En una aplicacin que opera a travs de Internet, interpretando la informacin de archivos y sitios web para que podamos ser capaces de leerla, (ya se encuentre sta alojada en un servidor dentro de la World Wide Web o en un servidor local). El navegador interpreta el cdigo, HTML generalmente, en el que est escrita la pgina web y lo presenta en pantalla permitiendo al usuario interactuar con su contenido y navegar hacia otros lugares de la red mediante enlaces o hipervnculos.

Algunos de los navegadores ms utilizados son: Safari Chromium Google Chrome Internet Explorer Mozilla Opera SpaceTime

- Parmetros de apariencia y uso.


Barra de Ttulo

La barra de ttulo muestra el ttulo de la pgina y el nombre del navegador a la izquierda. A la derecha se hallan los botones estndar: Minimizar, Maximizar y Cerrar. Barra de Mens La Barra de Mens contiene las listas de comandos en cascada.

Alumno: Jos Jimnez Arias Mdulo: Servicios de Red e Internet

33

UD 4 Instalacin y administracin de servicios Web. 2011-2012

Barra de Herramientas

La barra de herramientas tiene botones para los comandos utilizados con ms frecuencia. Cuando el ratn pasa por encima de un botn, este se ver en colores y parecer en relieve. Algunos botones no se vern, si el tamao de la ventana es pequeo.

Hasta que sepa la funcin de cada botn en la barra de herramientas, probablemente usted va a querer mostrar las etiquetas con texto.

Barra de Direcciones

La Barra de Direcciones muestra la URL (Universal Resource Location), tambin llamada direccin, (address), para las pginas web que se ven en la ventana del navegador. La barra de Vnculos generalmente se ve a la derecha de la barra de Direcciones. Puede escribir una URL en la Barra de Direcciones y apretar la tecla ENTRAR para desplegar la pgina cuya ubicacin ha escrito. El botn Ir es agregado a la derecha de la Barra de Direcciones en IE5. Si prefiere ms usar el ratn que el teclado, puede hacer un clic en el botn Ir, en lugar de apretar la tecla ENTRAR para abrir la pgina en la direccin que figura en la Barra de Direcciones. Actual Pgina Web con Vnculos La pgina web existente, se muestra en la parte de abajo de la ventana del navegador. El navegador ofrecer barras de despliegue, si la pgina es demasiado ancha o muy alta para que quepa en la ventana. Un vnculo hacia otra pgina web, imagen, o archivo, debera verse como extraordinaria. Un vnculo de texto por defecto, debera verse subrayado y el texto en color azul. Usted hace un clic en un link para apuntar a su objetivo en el navegador.

Alumno: Jos Jimnez Arias Mdulo: Servicios de Red e Internet

34

UD 4 Instalacin y administracin de servicios Web. 2011-2012

Barra de Estado

La Barra de Estado le contesta a usted. En su lado izquierdo ver mensajes sobre qu es lo que el navegador est haciendo. El mensaje ms comn es "Terminado, lo cual significa que el navegador cree que ha finalizado la carga de una pgina web. Si su ratn pasa por encima de un vnculo, la direccin de ese vnculo aparecer en la barra de estado. Tambin hay iconos para mostrar el estado de su conexin. Habr ms detalles ms adelante en la leccin Paso a Paso.

Barra de Vnculos
La Barra de Vnculos, es un lugar conveniente para los atajos hacia las pginas web a las que accede con mayor frecuencia. IE ya viene con algunos sitios de Microsoft que se ven en la Barra de Vnculos. Segn las diferentes versiones, se vern sitios algo distintos en la lista. Puede borrar aquellos sitios y agregar los suyos propios. A la derecha, puede ver los vnculos que no se muestran, desplegando la barra con un clic en la flecha en el extremo derecho. Para ver vnculos que no se muestran, clic en la doble flecha en el borde derecho de la Barra de Vnculos. Aparecer una lista que desciende.

Alumno: Jos Jimnez Arias Mdulo: Servicios de Red e Internet

35

UD 4 Instalacin y administracin de servicios Web. 2011-2012

6. Seguridad del protocolo HTTP:


- Protocolo HTTPS.
Hyper Text Transfer Protocol Secure, es un protocolo de aplicacin basado en el protocolo HTTP, destinado a la transferencia segura de datos de HiperTexto, es decir, es la versin segura de HTTP. Es utilizado principalmente por entidades bancarias, tiendas en lnea, y cualquier tipo de servicio que requiera el envo de datos personales o contraseas. La idea del protocolo, es crear un canal seguro sobre una red insegura. Proporcionando seguridad frente ataques eavesdropping y man in the midle, siempre que tenga un mtodo de cifrado adecuados y un certificado del servidor validos. La confianza de este protocolo proviene de un servidor de autoridad de certificacin que viene preinstalado en el software del navegador. Una conexin HTTPS es validada cuando se cumple las siguientes condiciones: El usuario confa en la Autoridad de certificacin para websites legtimos El website proporciona un certificado valido (en caso de fallo, la mayora de los navegadores muestran un mensaje de alerta), lo que significa que est firmado por una autoridad confiable. El certificado identifica correctamente al website. Que el usuario confi en que la capa de cifrado del protocolo (TLS o SSL) es inquebrantable a ataques informticos.

Diferencias a generales con el protocolo HTTP A nivel de red el protocolo HTTP opera en la capa ms alta del Modelo OSI, la capa aplicacin; mientras que el protocolo HTTPS opera en una subcapa ms baja, cifrando un mensaje HTTP previo a la transmisin y descifrando un mensaje una vez recibido.
Estrictamente hablando, HTTPS no es un protocolo separado, pero refiere el uso del HTTP ordinario sobre una Capa de conexin Segura cifrada.

Alumno: Jos Jimnez Arias Mdulo: Servicios de Red e Internet

36

UD 4 Instalacin y administracin de servicios Web. 2011-2012

- Conexiones seguras: SSL , TSL.


Son protocolos criptogrficos que proporcionan comunicaciones de seguridad en el Internet. TLS y SSL cifra los segmentos de conexiones de red por encima de la capa de transporte, utilizando criptografa asimtrica de clave cambio, el cifrado simtrico de la vida privada, y los cdigos de autenticacin de mensajes para la integridad del mensaje.

SSL proporciona autenticacin y privacidad de la informacin entre extremos sobre Internet mediante el uso de criptografa. Habitualmente, slo el servidor es autenticado (es decir, se garantiza su identidad) mientras que el cliente se mantiene sin autenticar. SSL implica una serie de fases bsicas:

Negociar entre las partes el algoritmo que se usar en la comunicacin Intercambio de claves pblicas y autenticacin basada en certificados digitales Cifrado del trfico basado en cifrado simtrico

Durante la primera fase, el cliente y el servidor negocian qu algoritmos criptogrficos se van a usar. Las implementaciones actuales proporcionan las siguientes opciones:

Para criptografa de clave pblica: RSA, Diffie-Hellman, DSA (Digital Signature Algorithm) o Fortezza; Para cifrado simtrico: RC2, RC4, IDEA (International Data Encryption Algorithm), DES (Data Encryption Standard), Triple DES y AES (Advanced Encryption Standard); Con funciones hash: MD5 o de la familia SHA.

Alumno: Jos Jimnez Arias Mdulo: Servicios de Red e Internet

37

UD 4 Instalacin y administracin de servicios Web. 2011-2012

El cliente enva y recibe varias estructuras handshake:

Enva un mensaje ClientHello especificando una lista de conjunto de cifrados, mtodos de compresin y la versin del protocolo SSL ms alta permitida. ste tambin enva bytes aleatorios que sern usados ms tarde (llamados Challenge de Cliente o Reto). Adems puede incluir el identificador de la sesin. Despus, recibe un registro ServerHello, en el que el servidor elige los parmetros de conexin a partir de las opciones ofertadas con anterioridad por el cliente. Cuando los parmetros de la conexin son conocidos, cliente y servidor intercambian certificados (dependiendo de las claves pblicas de cifrado seleccionadas). Estos certificados son actualmente X.509, pero hay tambin un borrador especificando el uso de certificados basados en OpenPGP. El servidor puede requerir un certificado al cliente, para que la conexin sea mutuamente autenticada. Cliente y servidor negocian una clave secreta (simtrica) comn llamada master secret, posiblemente usando el resultado de un intercambio Diffie-Hellman, o simplemente cifrando una clave secreta con una clave pblica que es descifrada con la clave privada de cada uno. Todos los datos de claves restantes son derivados a partir de este master secret (y los valores aleatorios generados en el cliente y el servidor), que son pasados a travs una funcin pseudoaleatoria cuidadosamente elegida.

TLS (Transport Layer Security) es una evolucin del protocolo SSL (Secure Sockets Layer), es un protocolo mediante el cual se establece una conexin segura por medio de un canal cifrado entre el cliente y servidor. As el intercambio de informacin se realiza en un entorno seguro y libre de ataques. Normalmente el servidor es el nico que es autenticado, garantizando as su identidad, pero el cliente se mantiene sin autenticar, ya que para la autenticacin mtua se necesita una infraestructura de claves pblicas (o PKI) para los clientes. Estos protocolos permiten prevenir escuchas (eavesdropping), evitar la falsificacin de la identidad del remitente y mantener la integridad del mensaje en una aplicacin cliente-servidor.

TLS/SSL poseen una variedad de medidas de seguridad:


Numerando todos los registros y usando el nmero de secuencia en el MAC. Usando un resumen de mensaje mejorado con una clave (de forma que solo con dicha clave se pueda comprobar el MAC). Esto se especifica en el RFC 2104). Proteccin contra varios ataques conocidos (incluyendo ataques man-in-the-middle), como los que implican un degradado del protocolo a versiones previas (por tanto, menos seguras), o conjuntos de cifrados ms dbiles. El mensaje que finaliza el protocolo handshake (Finished) enva un hash de todos los datos intercambiados y vistos por ambas partes. La funcin pseudo aleatoria divide los datos de entrada en 2 mitades y las procesa con algoritmos hash diferentes (MD5 y SHA), despus realiza sobre ellos una operacin XOR. De esta forma se protege a s mismo de la eventualidad de que alguno de estos algoritmos se revelen vulnerables en el futuro.

Alumno: Jos Jimnez Arias Mdulo: Servicios de Red e Internet

38

UD 4 Instalacin y administracin de servicios Web. 2011-2012

- Gestin de certificados y acceso seguro con HTTPS.


HTTPS es una combinacin del protocolo HTTP y protocolos criptogrficos. Se emplea para lograr conexiones ms seguras en la WWW, generalmente para transacciones de pagos o cada vez que se intercambie informacin sensible (por ejemplo, claves) en internet. De esta manera la informacin sensible, en el caso de ser interceptada por un ajeno, estar cifrada. El nivel de proteccin que ofrece depende de la correccin de la implementacin del navegador web, del software y de los algoritmos criptogrficos soportados. Adems HTTPS es vulnerable cuando es aplicado a contenido esttico pblicamente disponible. El HTTPS fue creado por Netscape Communications en 1994 para su navegador Netscape Navigator. Adquiriendo Certificados Las organizaciones pueden tambin ser su propia autoridad de certificacin, particularmente si son responsables de establecer acceso a navegadores de sus propios sitios (por ejemplo, sitios en una compaa intranet, o universidades mayores). Estas pueden fcilmente agregar copias de su propio certificado firmado a los certificados de confianza distribuidos con el navegador. Tambin existen autoridades de certificacin peer-to-peer. Usar un Control de Acceso El sistema puede tambin ser usado para la Autenticacin de clientes con el objetivo de limitar el acceso a un servidor web a usuarios autorizados. Para hacer esto, el administrador del sitio tpicamente crea un certificado para cada usuario, un certificado que es guardado dentro de su navegador. Normalmente, este contiene el nombre y la direccin de correo del usuario autorizado y es revisado automticamente en cada reconexin para verificar la identidad del usuario, potencialmente sin que cada vez tenga que ingresar una contrasea.

Alumno: Jos Jimnez Arias Mdulo: Servicios de Red e Internet

39

UD 4 Instalacin y administracin de servicios Web. 2011-2012

7. Almacenamiento virtual de sitios web: Hosts virtuales.


El trmino Hosting Virtual se refiere a hacer funcionar ms de un sitio web (tales como www.company1.com y www.company2.com) en una sola mquina. Los sitios web virtuales pueden estar "basados en direcciones IP", lo que significa que cada sitio web tiene una direccin IP diferente, o "basados en nombres diferentes", lo que significa que con una sola direccin IP estn funcionando sitios web con diferentes nombres (de dominio). El hecho de que estn funcionando en la misma mquina fsica pasa completamente desapercibido para el usuario que visita esos sitios web. Apache fue uno de los primeros servidores web en soportar hosting virtual basado en direcciones IP. Las versiones 1.1 y posteriores de Apache soportan hosting virtual (vhost) basado tanto en direcciones IP como basado en nombres. sta ltima variante de hosting virtual se llama algunas veces basada en host o hosting virtual no basado en IP.

- Alojamiento virtual basado en IPs.


El hosting virtual basado en IPs usa la direccin IP de la conexin para determinar qu host virtual es el que tiene que servir. Por lo tanto, necesitar tener diferentes direcciones IP para cada host. Cuando se utiliza el alojamiento virtual basado en IPs, cada sitio (ya sea un nombre de host DNS o un grupo de nombres de host DNS que actan de la misma) apunta a una direccin IP nica. El servidor web est configurado con mltiples interfaces de red fsicas, interfaces de red virtuales en la misma interfaz fsica o varias direcciones IP en una interfaz. El servidor web puede abrir por separado socket de escucha para cada direccin IP o se puede escuchar en todas las interfaces con un solo socket y obtener la direccin de recepcin de la conexin TCP despus de la aceptacin de las conexiones. De cualquier forma, puede utilizar la direccin IP para determinar qu pgina web servir. El cliente no est involucrado en este proceso y por lo tanto, (a diferencia de con el alojamiento virtual basado en nombres) no hay problemas de compatibilidad. La desventaja de este enfoque es que el servidor necesita una direccin IP diferente para cada sitio web. Esto aumenta la carga administrativa y contribuye al agotamiento de direcciones IPv4.

- Alojamiento virtual basado en nombres.


Es normalmente ms sencillo, porque solo necesita configurar su servidor de DNS para que localice la direccin IP correcta y entonces configurar Apache para que reconozca los diferentes nombres de host. Usando hosting virtual basado en nombres tambin se reduce la demanda de direcciones IP, que empieza a ser un bien escaso. Por lo tanto, debe usar hosting virtual basado en nombres a no ser que haya alguna razn especial por la cual tenga que elegir usar hosting virtual basado en direcciones IP. Algunas de estas razones pueden ser:
Alumno: Jos Jimnez Arias Mdulo: Servicios de Red e Internet

40

UD 4 Instalacin y administracin de servicios Web. 2011-2012

Algunos clientes antiguos no son compatibles con el hosting virtual basado en nombres. Para que el hosting virtual basado en nombres funcione, el cliente debe enviar la cabecera de Host HTTP. Esto es necesario para HTTP/1.1, y est implementado como extensin en casi todos los navegadores actuales. Si necesita dar soporte a clientes obsoletos y usar hosting virtual basado en nombres, al final de este documento se describe una tcnica para que pueda hacerlo. El hosting virtual basado en nombres no se puede usar junto con SSL por la naturaleza del protocolo SSL.

- Alojamiento virtual basado en puertos.


El nmero de puerto por defecto para HTTP es 80. Sin embargo, la mayora de servidores web se puede configurar para funcionar en casi cualquier nmero de puerto, siempre que el nmero de puerto no est en uso por cualquier otro programa en el servidor. Por ejemplo, un servidor puede alojar el sitio web www.example.com. Sin embargo, si el propietario desea operar un segundo sitio, y no tiene acceso a la configuracin del nombre de dominio para su nombre de dominio y / o no posee otras direcciones IP que pueden ser utilizados para servir el sitio de, en su lugar podra utilizar otro nmero de puerto, por ejemplo, www.example.com:81 para el puerto 81, www.example.com:8000 para el puerto 8000, o www.example.com:8080 para el puerto 8080. Sin embargo, este es un enfoque de usuario poco amigable. Los usuarios no se pueden esperar razonablemente que saber los nmeros de puerto para sus sitios web y mvil de un sitio entre los servidores puede requerir cambiar el nmero de puerto. No se usen los nmeros de puerto estndar tambin puede ser visto como poco profesional y poco atractivo para los usuarios. Adems, algunos firewalls bloquear todos los puertos, pero la ms comn, provocando un sitio alojado en un puerto no estndar que no aparecen disponibles para algunos usuarios.

- Alojamientos hbridos.
Por medio de un software simulamos dividir una computadora en cuatro o en cinco computadoras. As, cada servidor virtual trabaja como si fuera una computadora independiente con un alojamiento dedicado. La diferencia con los servidores compartidos es que en stos slo abrimos carpetas en el disco duro para las diferentes pginas.

Alumno: Jos Jimnez Arias Mdulo: Servicios de Red e Internet

41

UD 4 Instalacin y administracin de servicios Web. 2011-2012

No son tan baratos como los compartidos, ni tan caros como los dedicados. Sin tantas ventajas tcnicas como stos ltimos, pero sin tantos inconvenientes como los primeros. Una buena eleccin intermedia. Usos Puente de servidores privados virtuales la brecha entre los servicios de alojamiento web compartido y hosting dedicado, lo que la independencia de otros clientes del servicio de VPS en trminos de software, pero a menor costo que un servidor dedicado fsico. Como VPS ejecuta su propia copia de su sistema operativo, los clientes tienen superusuario nivel de acceso a esa instancia del sistema operativo, y se puede instalar casi cualquier software que se ejecuta en el sistema operativo. Cierto tipo de software no funciona bien en un entorno virtualizado, como virtualizers s mismos, algunos proveedores de VPS imponer mayores restricciones, pero en general son laxas en comparacin con los entornos de alojamiento compartido. Debido a la cantidad de clientes de virtualizacin generalmente se ejecuta en una sola mquina, un VPS en general ha limitado el tiempo de procesador, memoria RAM y espacio en disco.

Alumno: Jos Jimnez Arias Mdulo: Servicios de Red e Internet

42

También podría gustarte