servidores web 6ciclo

50
SERVIDORES WEB

Upload: zandy-grande-lopez

Post on 26-Jul-2015

226 views

Category:

Education


0 download

TRANSCRIPT

Page 1: Servidores web 6ciclo

SERVIDORES WEB

Page 2: Servidores web 6ciclo

Un servidor web es un programa que está diseñado para transferir hipertextos, páginas web o páginas HTML (HyperText Markup Language): textos complejos con enlaces, figuras, formularios, botones y objetos incrustados como animaciones o reproductores de música. El programa implementa el protocolo HTTP (HyperText Transfer Protocol) que pertenece a la capa de aplicación del modelo OSI. El término también se emplea para referirse al ordenador que ejecuta el programa.

Page 3: Servidores web 6ciclo

Este uso dual puede llevar a confusión. Por ejemplo, en el caso de un servidor web, este término podría referirse a la máquina que almacena y maneja los sitios web, y en este sentido es utilizada por las compañías que ofrecen hosting o hospedaje. Alternativamente, el servidor web podría referirse al software, como el servidor de http de Apache, que funciona en la máquina y maneja la entrega de los componentes de los páginas web como respuesta a peticiones de los navegadores de los clientes.

Page 4: Servidores web 6ciclo

Los archivos para cada sitio de Internet se almacenan y se ejecutan en el servidor. Hay muchos servidores en Internet y muchos tipos de servidores, pero comparten la función común de proporcionar el acceso a los archivos y servicios.

Un servidor sirve información a los ordenadores que se conecten a él. Cuando los usuarios se conectan a un servidor pueden acceder a programas, archivos y otra información del servidor.

Page 5: Servidores web 6ciclo

En la web, un servidor web es un ordenador que usa el protocolo http para enviar páginas web al ordenador de un usuario cuando el usuario las solicita.

Los servidores web, servidores de correo y servidores de bases de datos son a lo que tiene acceso la mayoría de la gente al usar Internet.

Algunos servidores manejan solamente correo o solamente archivos, mientras que otros hacen más de un trabajo, ya que un mismo ordenador puede tener diferentes programas de servidor funcionando al mismo tiempo.

Los servidores se conectan a la red mediante una interfaz que puede ser una red verdadera o mediante conexión vía línea telefónica o digital.

Page 6: Servidores web 6ciclo
Page 7: Servidores web 6ciclo

Características

Cuando contratamos un servidor dedicado (o cualquier otro plan de hosting, pero especialmente un servidor dedicado), es muy importante elegir uno cuyas características de hardware cumplan con todos los requisitos que necesiten nuestros proyectos web.

Page 8: Servidores web 6ciclo

- Procesador: Seguramente nos darán a elegir entre Intel o AMD, entre núcleo, doble núcleo, 4 núcleos, etc. Aquí sin ser un experto os recomendaría lo siguiente (por experiencia propia). Si vuestro servidor web no va a ser utilizado para vender hosting, ni vais a instalar VPS en él, puede bastar un modelo normalito, sin excesos.

- Memoria RAM: Importante no quedarse corto. Cuando la RAM se agota, se tira de memoria virtual (disco duro) y se ralentiza todo, pudiendo incluso colapsar el servidor y provocar caída de servicios en el mismo. Opino que 1GB es lo mínimo, pero mejor 2GB para ir sueltos.

Page 9: Servidores web 6ciclo

- Modelo de disco duro: nos indicará su velocidad y su rendimiento. Que no nos pongan un disco pelotero, preguntad marca y modelo, creedme que a veces dan gato por liebre.

Hay más factores a tener en cuenta, pero para los que no somos expertos en hardware creo que con tener en cuenta estos es más que suficiente. Seguramente tendremos nuestro servidor alojado en un centro de datos, por lo que del mantenimiento se ocuparán ellos.

Page 10: Servidores web 6ciclo

Comparad planes de hosting en varios proveedores, comparad el precio de los servidores dedicados y comprobad aquel que ofrece mejor relación calidad-precio. Y mi recomendación final, contratad un servidor dedicado que podáis pagar mes a mes. Así, al menos durante los primeros meses, si no os convence, siempre podéis migraros a otro proveedor de hosting.

Actualización: con la proliferación de los servidores cloud para la mayoría de proyectos web es más recomendable contratar un servidor cloud que uno dedicado. Os animo a visitar la oferta disponible en mi empresa, donde podéis contratar servidores cloud desde 35€/mes totalmente administrados. Merece la pena echar un vistazo

Page 11: Servidores web 6ciclo

Funciones

Un servidor de aplicaciones es una tecnología básica que proporciona la infraestructura y servicios clave a las aplicaciones alojadas en un sistema. Entre los servicios habituales de un servidor de aplicaciones se incluyen los siguientes:

Agrupación de recursos (por ejemplo, agrupación de conexiones de base de datos y agrupación de objetos)

Administración de transacciones distribuida Comunicación asincrónica de programa,

normalmente a través de colas de mensajes

Page 12: Servidores web 6ciclo

Un modelo de activación de objetos oportuno

Interfaces de servicios Web XML automáticas para tener acceso a objetos de empresa

Servicios de detección de errores y estado de las aplicaciones

Seguridad integrada

Page 13: Servidores web 6ciclo

Tipos de servidores

Esta lista categoriza los diversos tipos de servidores del mercado actual:

Plataformas de Servidor (Server Platforms): Un término usado a menudo como sinónimo de sistema operativo, la plataforma es el hardware o software subyacentes para un sistema, es decir, el motor que dirige el servidor.

Page 14: Servidores web 6ciclo

Servidores de Aplicaciones (Application Servers):

Designados a veces como un tipo de middleware (software que conecta dos aplicaciones), los servidores de aplicaciones ocupan una gran parte del territorio entre los servidores de bases de datos y el usuario, y a menudo los conectan.

Page 15: Servidores web 6ciclo

Servidores de Audio/Video (Audio/Video Servers):

Los servidores de Audio/Video añaden capacidades multimedia a los sitios web permitiéndoles mostrar contenido multimedia en forma de flujo continuo (streaming) desde el servidor.

Page 16: Servidores web 6ciclo

Servidores de Chat (Chat Servers):

Los servidores de chat permiten intercambiar información a una gran cantidad de usuarios ofreciendo la posibilidad de llevar a cabo discusiones en tiempo real.

Page 17: Servidores web 6ciclo

Servidores de Fax (Fax Servers):

Un servidor de fax es una solución ideal para organizaciones que tratan de reducir el uso del teléfono pero necesitan enviar documentos por fax.

Page 18: Servidores web 6ciclo

Servidores FTP (FTP Servers):

Uno de los servicios más antiguos de Internet, File Transfer Protocol permite mover uno o más archivos Uno de los servicios más antiguos de Internet, Filo Transfer Protocol permite mover uno o más archivos con seguridad entre distintos ordenadores proporcionando seguridad y organización de los archivos así como control de la transferencia.

Page 19: Servidores web 6ciclo

La seguridad se ha convertido en un tema candente. Durante años, los servidores ftp comunicaban con los clientes "en abierto," es decir, que la información de la conexión y de la contraseña eran vulnerables a la interceptación. Ahora, los servidores ftp, tales como BulletProof FTP, SecureFTP, SurgeFTP, TitanFTP, y WS_FTP, soportan SSL/TLS y utilizan el mismo tipo de cifrado presente en los sitios web seguros. Con SSL/TLS, los servidores ftp pueden cifrar los comandos de control entre los clientes del ftp y el servidor, así como los datos del archivo. Con la ayuda del PGP, como en WS_FTP pro, los datos del archivo se aseguran todavía más con el cifrado público

Page 20: Servidores web 6ciclo

Servidores Groupware (Groupware Servers):

Un servidor groupware es un software diseñado para permitir colaborar a los usuarios, sin importar la localización, vía Internet o vía Intranet corporativo y trabajar juntos en una atmósfera virtual.

Page 21: Servidores web 6ciclo

Servidores IRC (IRC Servers):

Otra opción para usuarios que buscan la discusión en tiempo real, Internet Relay Chat consiste en varias redes de servidores separadas que permiten que los usuarios conecten el uno al otro vía una red IRC.

Page 22: Servidores web 6ciclo

Servidores de Listas (List Servers):

Los servidores de listas ofrecen una manera mejor de manejar listas de correo electrónico, bien sean discusiones interactivas abiertas al público o listas unidireccionales de anuncios, boletines de noticias o publicidad.

Page 23: Servidores web 6ciclo

Servidores de Correo (Mail Servers):

Casi tan ubicuos y cruciales como los servidores web, los servidores de correo mueven y almacenan el correo electrónico a través de las redes corporativas (vía LANs y WANs)

Page 24: Servidores web 6ciclo

Servidores de Noticias (News Servers):

Los servidores de noticias actúan como fuente de distribución y entrega para los millares de grupos de noticias públicos actualmente accesibles a través de la red de noticias USENET.

Page 25: Servidores web 6ciclo

Servidores Proxy (Proxy Servers):

Los servidores proxy se sitúan entre un programa del cliente (típicamente un navegador) y un servidor externo (típicamente otro servidor web) para filtrar peticiones, mejorar el funcionamiento y compartir conexiones.

Page 26: Servidores web 6ciclo

Servidores Telnet (Telnet Servers):

Un servidor telnet permite a los usuarios entrar en un ordenador huésped y realizar tareas como si estuviera trabajando directamente en ese ordenador.

Page 27: Servidores web 6ciclo

Servidores Web (Web Servers):

Básicamente, un servidor web sirve contenido estático a un navegador, carga un archivo y lo sirve a través de la red al Se pueden utilizar varias tecnologías en el servidor para aumentar su potencia más allá de su capacidad de entregar páginas HTML; éstas incluyen scripts CGI, seguridad SSL y páginas activas del servidor (ASP).

Page 28: Servidores web 6ciclo

TIPOLOGIAS DE PAGINA WEB

Page 29: Servidores web 6ciclo

USO DE PAGINAS WEB

Page 30: Servidores web 6ciclo

CREACION Y DISEÑO WEB

Page 31: Servidores web 6ciclo

IIS Internet Information Services o IIS es

un servidor web y un conjunto de servicios para el sistema operativo Microsoft Windows. Originalmente era parte del Option Pack para Windows NT. Luego fue integrado en otros sistemas operativos de Microsoft destinados a ofrecer servicios, como Windows 2000 o Windows Server 2003. Windows XP Profesional incluye una versión limitada de IIS. Los servicios que ofrece son: FTP, SMTP, NNTP y HTTP/HTTPS.

Page 32: Servidores web 6ciclo

Este servicio convierte a una PC en un servidor web para Internet o una intranet, es decir que en las computadoras que tienen este servicio instalado se pueden publicar páginas web tanto local como remotamente.

Los servicios de Internet Information Services proporcionan las herramientas y funciones necesarias para administrar de forma sencilla un servidor web seguro.

El servidor web se basa en varios módulos que le dan capacidad para procesar distintos tipos de páginas. Por ejemplo, Microsoft incluye los de Active Server Pages (ASP) y ASP.NET. También pueden ser incluidos los de otros fabricantes, como PHP o Perl.

Page 33: Servidores web 6ciclo
Page 34: Servidores web 6ciclo

Características

Microsoft ha mejorado sustancialmente su software estrella en el campo de los servicios Web. Los avances vienen motivados sobre todo por la seguridad y el rendimiento, aunque todavía adolece de algunos agujeros de seguridad.

Las características agregadas en seguridad se aprovechan de las últimas tecnologías de cifrado y métodos de autenticación mediante certificados de cliente y servidor. Una de las formas que tiene IIS de asegurar los datos es mediante SSL (Secure Sockets Layer). Esto proporciona un método para transferir datos entre el cliente y el servidor de forma segura, permitiendo también que el servidor pueda comprobar al cliente antes de que inicie una sesión de usuario.

Page 35: Servidores web 6ciclo

Otra característica nueva es la autenticación implícita que permite a los administradores autenticar a los usuarios de forma segura a través de servidores de seguridad y proxy.

IIS 5.0 también es capaz de impedir que aquellos usuarios con direcciones IP conocidas obtengan acceso no autorizado al servidor, permitiendo especificar la información apropiada en una lista de restricciones.

Page 36: Servidores web 6ciclo

Volviendo de nuevo a la seguridad, IIS tiene integrado el protocolo Kerberos v5 (como le ocurre al sistema operativo). El almacenamiento de certificados se integra ahora con el almacenamiento CryptoAPI de Windows. Se puede utilizar el administrador de certificados de Windows para hacer una copia de seguridad, guardar y configurar los certificados.

Además, la administración de la seguridad del servidor IIS es una tarea fácilmente ejecutable a base de asistentes para la seguridad. Se pueden definir permisos de acceso en directorios virtuales e incluso en archivos, de forma que el asistente actualizará los permisos NTFS para reflejar los cambios. Si se trabaja con entidades emisoras de certificados, es posible gestionar la lista de certificados de confianza (CTL, Certificate Trust List) con el asistente para CTL.

Page 37: Servidores web 6ciclo

Apache

Lo primero de todo es decir que este artículo está basado en uno que escribí en Diciembre de 1997 y se publicó en Linux Actual. Me ha sorprendido lo poco que he tenido que tocarlo para actualizarlo y como Apache se ha consolido más aún de lo que estaba por aquellas fechas. Si el lector encuentra alguna errata u información incorrecta puede estaré encantado de que me corrija.

He introducido un apartado dedicado a Apache 2.0 que sin duda será el más interesante para los lectores que lean este artículo en la actualidad.

Page 38: Servidores web 6ciclo

El servidor web Apache es uno de los mayores triunfos del software libre. En Diciembre de 1997 tenía una cuota de mercado cercana al 45% y en la actualidad (Julio 2000) ya está por encima del 60%, según los estudios de Netcraft [3] que ya se han establecido como la referencia dentro del mercado de servidores web. Esta es la primera cifra que hace que cualquier responsable de la estrategia internet de una empresa tenga que tomar a Apache como el servidor de referencia.

Page 39: Servidores web 6ciclo

Apache era inicialmente unos parches al servidor que de WWW de NCSA conocido como httpd (principios de 1995). Al igual que GNU/Linux, fue un proyecto que atrajo a mucha gente por el gran interés de su objetivo: lograr el servidor web más rápido, más eficiente y con mayor funcionalidad desde el enfoque del software libre. Y ha sido un objetivo que como veremos, se ha logrado. Sólo hacían sobras en Apache ciertos aspectos de rendimiento, fundamentalmente por no utilizar hebras de ejecución. Este aspecto se va a solucionar en el próximo Apache 2.0, un nuevo paso de Apache.

Page 40: Servidores web 6ciclo

Con un enorme equipo de voluntarios a lo largo y ancho de toda la red, se han logrado estos objetivos, logrando batir a compañías comerciales de la talla de Microsoft y Netscape. Y no sólo se ha logrado batir a los servidores web de grandes compañías: se ha logrado atraer al todopoderoso IBM que está apoyando Apache tanto a nivel de soporte como de desarrollo. La incorporación de empresas al desarrollo de proyectos de software abierto es una característica que ha brotado en el año 2000. Otros ejemplos son Corel, Dell etc.

Page 41: Servidores web 6ciclo
Page 42: Servidores web 6ciclo

Características

Apache es un servidor web flexible, rápido y eficiente, continuamente actualizado y adaptado a los nuevos protocolos (HTTP 1.1). Entre sus características destacan:

Multiplataforma Es un servidor de web conforme al protocolo

HTTP/1.1 Modular: Puede ser adaptado a diferentes

entornos y necesidades, con los diferentes módulos de apoyo que proporciona, y con la API de programación de módulos, para el desarrollo de módulos específicos.

Page 43: Servidores web 6ciclo

Basado en hebras en la versión 2.0 Incentiva la realimentación de los usuarios,

obteniendo nuevas ideas, informes de fallos y parches para la solución de los mismos.

Se desarrolla de forma abierta Extensible: gracias a ser modular se han

desarrollado diversas extensiones entre las que destaca PHP, un lenguaje de programación del lado del servidor.

Page 44: Servidores web 6ciclo

Tomcat

Tomcat (también llamado Jakarta Tomcat o Apache Tomcat) funciona como un contenedor de servlets desarrollado bajo el proyecto Jakarta en la Apache Software Foundation. Tomcat implementa las especificaciones de los servlets y de JavaServer Pages (JSP) de Sun Microsystems.

Page 45: Servidores web 6ciclo
Page 46: Servidores web 6ciclo

Características del producto Tomcat 3.x (distribución inicial)Implementado a partir de las especificaciones Servlet

2.2 y JSP 1.1 Recarga de servlets Funciones básicas HTTP Tomcat 4.xImplementado a partir de las especificaciones Servlet

2.3 y JSP 1.2 Contenedor de servlets rediseñado como Catalina Motor JSP rediseñado con Jasper Conector Coyote Java Management Extensions (JMX), JSP Y

administración basada en Struts

Page 47: Servidores web 6ciclo

Tomcat 5.xImplementado a partir de las especificaciones Servlet 2.4 y JSP 2.0 Recolección de basura reducida Capa envolvente nativa para Windows y Unix para la integración

de las plataformas Análisis rápido JSP

Tomcat 6.xImplementado de Servlet 2.5 y JSP 2.1 Soporte para Unified Expression Language 2.1 Diseñado para funcionar en Java SE 5.0 y posteriores Soporte para Comet a través de la interfaz CometProcessor

Tomcat 7.xImplementado de Servlet 3.0 JSP 2.2 y EL 2.2 Mejoras para detectar y prevenir "fugas de memoria" en las

aplicaciones web Limpieza interna de código Soporte para la inclusión de contenidos externos directamente en

una aplicación web

Page 48: Servidores web 6ciclo

Tipos

Las clases Permission se usan para definir que clases de Permisos tendrán las clases cargadas por Tomcat. Hay varias clases de Permission como parte del JDK e incluso podemos crear las nuestras propias para usarlar en nuestras aplicaciones web.

Este es sólo un pequeño sumario de las clases de System SecurityManager Permission aplicables a Tomcat. Puedes encontrar más documentación sobre el uso de las clases siguientes en la documentación del JDK.

Page 49: Servidores web 6ciclo

java.util.PropertyPermission Controla los accesos de lectura/escritura a las propiedades de JVM como java.home. java.lang.RuntimePermission Controla el uso de algunas funciones de sistema/ejecución como exit() y exec(). java.io.FilePermission Controla los aceeso de lectura/escritura/ejecución a ficheros y directorios. java.net.SocketPermission Controla el uso de sockets de red.

Page 50: Servidores web 6ciclo

java.net.NetPermission

Controla el uso de conexiones de red multicast. java.lang.reflect.ReflectPermission

Controla el uso de reflection para hacer introspection de clase. java.security.SecurityPermission

Controla el acceso a los métodos de Security. java.security.AllPermission

Permite acceder a todos los permisos, como si se estuviera ejecutando Tomcat sin un SecurityManager.