Indice de temas
Indice de temas
C A P A C I T A C I O N RECURSOS  GRATIS
�Un nuevo tema cada mes!
Programas-Datos-Servicios
-Las páginas web de este sitio se actualizan al ritmo de la tecnología!

TU PROPIO SERVIDOR WEB
SERVIDOR Apache Instalación y configuración Bases de datos, servicios
SERVIDOR   I.I.S El servidor Windows 2000 Características del   I.I.S
SERVIDOR Virtual SERVIDORES dedicados BIBLIOGRAFIA Online

INTRODUCCION
¿Qué es un servidor web?
Un servidor web es un programa de computación especializado en la producción de páginas web y en la transmisión de los datos de imágenes, animaciones, música y sonidos que éstas incluyen. Permite desarrollar y administrar sistemas de hospedaje de sitios web.
El servidor web reside en un computador conectado en forma permanente a la Internet, atiendiendo las solicitudes de páginas web y las tareas de proceso de datos que le hacen los usuarios de la red, las 24 horas del día todos los días del año.

El servidor web más usado es el Apache del ambiente Unix, seguido por el IIS del sistema Windows 2000. Existen unos 20 millones (60%) de servidores APACHE y unos 6 millones (27%) de servidores IIS, ejecutando en Internet. Se explica el predominio del servidor Apache porque es gratis, muy estable y confiable, tiene una gran capacidad y existen versiones para todas las plataformas de computación o se lo puede adaptar con facilidad.

Un cliente web es un programa capaz de solicitar servicios de un servidor web. Son buenos ejemplos los navegadores o exploradores de Internet. Entre tantos, el Explorer 5.x y el Communicator 6.x de Netscape. El cliente web reside en el PC del usuario bajo su control. Cuando el usuario digita la dirección de una página web, su cliente web inicia la comunicación con el servidor web a través de Internet, y le solicita la página indicada.

Cada servidor en Internet se identifica univocamente mediante el número IP (Internet Protocol Number). El IP es usado por los protocolos TCP/IP de transmisión de datos. Un ejemplo de IP es 206.101.20.201, son cuatro grupos de digitos separados por puntos.

Los usuarios le asignan un nombre único a los servidores del tipo www.tu-servidor.com, porque es más fácil recordar una serie de nombres de dominios que un grupo de números.

Se ha creado el sistema DNS (Data Name System) para poder mapear los nombres de los servidores en los números IP respectivos. El objetivo es conciliar el mundo de las personas y el de los computadores. Nosotros usamos nombres y los computadores usan números.

El sistema DNS tiene una base de datos distribuida en todo el mundo, y servidores DNS que se encargan de mantener dicha base y de resolver las consultas directas e inversas entre los nombres y los números IP. El DNS es fundamental para que Internet funcione.

Puedes consultar el tema TU PROPIO DOMINIO para ampliar sobre conceptos básicos.

Instalación de un servidor propio
Para instalar tu propio servidor web en Internet, tienes que reunir varios elementos de software, hardware y servicios que se detallan brevemente a continuación.

1) Un computador con la capacidad apropiada para brindar los servicios y recursos proyectados, con una eficiencia aceptable. Un PC Pentium III, 500-2000 Mhz, 128-1024 MB de RAM, disco de 20-50 GB, puede ser suficiente.

2) Un sistema operativo apropiado. Puede ser el Windows 2000 profesional, el avanzado, el centro de datos o bien Windows NT 4.0. Si quieres mayor capacidad y confiabilidad, tienes que elegir un sistema tipo UNIX. Por ejemplo, Linux, AIX de IBM, Solaris, SCO Unix.

3) Un servidor web de buena capacidad. En el ambiente Windows tienes el IIS 5.0 que viene con Windows 2000. En el ambiente UNIX tienes el servidor Apache 2.0.

4) Lenguajes de programación y programas de aplicación. Para implementar páginas web dinámicas, necesitas el lenguaje ASP en Windows y PHP en Unix. Para implementar CGIs en muy conveniente el lenguaje PERL. Los manejadores de bases de datos, son programas imprescindibles. Ejemplos de manejadores son: Cold Fusion, MySQL, Informix, Oracle.

5) Elección de un proveedor de acceso a Internet. Tienes que elegir un proveedor que te ofrezca una velocidad de transmisión que te permita cubrir el flujo de datos esperado en tu servidor. Un servicio ADSL 256 Kbps o IDSN 128 Kbps, puede ser suficiente. Pero puede que necesites una línea óptica OC-12 (unos 60 000 Kbps = 60 Mbps)

6) Elección del nombre de dominio del servidor. Posiblemente tu proveedor de acceso te brinda una o más números IP (Internet Protocol Number). Un servidor en Internet se identifica por un número IP y por un nombre de dominio del tipo www.servidor.com. Tienes que elegir el nombre de tu servidor y registrarlo con tu proveedor de dominios.

7) Instalación de los programas del sistema. Tienes el trabajo entretenido de instalar y configurar el servidor web, los manejadores de bases de datos, los diversos lenguajes de programación, y los utilitarios que te van facilitar el mantenimiento del sistema.

8) Mantenimiento y operación del sistema. Luego que tu servidor comienza a funcionar en Internet, tienes el trabajo no tan sencillo de mantenerlo en funcionamiento las 24 horas del día, todos los días del año. Existen muchas herramientas para ayudarte en esta tarea.

¿Se justifica tener un servidor propio?
Actualmente hay unos 30 millones de servidores en Internet, y tal número aumenta cada día. Esto significa que un servidor web puede ser muy útil y productivo. Para decidir si necesitas un servidor propio, tienes que pensar en el costo que te va a significar. Si tal costo para ti es abordable, no hay razón para que no tengas tu propio servidor web.

Si lo que quieres es tener un sitio web propio, con tu dirección www.tu-nombre.com, para poner tu empresa en Internet, tienes que saber que existen opciones mucho más económicas y con una funcionalidad igual o superior a la que tú puedes lograr con tu propio servidor web. Los proveedores de hospedaje tienen costos muy competitivos.

Para que tengas una idea, sigue una estimación de costos de varios tipos de servidores.

Un Servidor virtual para un sitio web sencillo te cuesta unos $150 USD anualmente.
Para efectuar comercio electrónico avanzado te cuesta unos $750 USD anualmente.
Un Servidor dedicado te cuesta anualmente del orden de $4000 USD.
Un Servidor propio te cuesta anualmente del orden de $7000 USD.

Estas estimaciones suponen que se procura brindar una calidad de servicio similar a la ofrecida por un servidor virtual o también denominado hospedaje virtual. Las opciones servidor virtual y dedicado se consideran en detalle, más adelante en esta página.

El servidor web Apache
Desarrollado por un grupo de voluntarios de altísimo nivel, el servidor web Apache, se ha convertido en el motor del desarrollo de la World Wide Web (red global de páginas web). El avance es constante, y la versión 1.3.20 actual, está dejando paso a la versión 2.0.16 en fase beta de evaluación. En unos meses esta nueva versión avanzada será liberada.

Puedes bajar el servidor Apache del sitio de la organización http://httpd.apache.org/dist/ o desde cualquier sitio proveedor, cercano a tu ubicación geográfica. En la dirección web anterior, tienes todas las distribuciones y la lista de los sitios proveedores que hay en el mundo. Tienes la versión fuente para compilar y las versiones binarias para los principales sistemas operativos, que vienen precompiladas y listas para instalar y usar.

Instalación en el sistema Unix
La versiones binarias, precompiladas para las principales plataformas, están ubicadas en la dirección http://httpd.apache.org/dist/httpd/binaries. En la versión ejecutable, se incluye todos los módulos estándar como objetos compartidos. Ello te permite activar o excluir un módulo, mediante las directivas LoadModule y AddModule al ejecutar el servidor Apache.
Tienes que elegir la versión apropiada para tu plataforma de computación. En el archivo INSTALL.bindist tienes las sencillas instrucciones que necesitas para instalar el servidor.

El archivo apache_1.3.20.tar.gz contiene el programa fuente de la la versión actual. Es un archivo comprimido de 1.9 MB. El archivo httpd-2_0_16-beta.tar.gz de unos 2.8 MB contiene el programa fuente de la versión beta en fase de evaluación. Para comenzar, lo mejor es que instales la versión 1.3.20 actual, muy estable y de gran capacidad.

Estas son las tareas que tienes que efectuar para tener tu propio servidor:
1) Bajar, transferir a tu computador o PC, el archivo fuente del servidor.
2) Descomprimir el fuente obtenido en un directorio, por ejemplo en /home/apache.
a. descomprimir : gzip -d apache_1.3.20.tar.gz
b. recuperar archivos : tar xvf apache_1.3.20.tar
3) Compilar el programa principal y módulos del servidor.
    Tienes que ubicarte en el directorio apache_1.3.20 y leer las directivas de instalación
    en los archivos README.configure e INSTALL que te orientan sobre la configuración.
    Una instalación rápida requiere ejecutar, solamente los siguientes tres comandos.
a. ./configure
b. make
c. make install
4) Configuración del funcionamiento. Luego, tienes que editar el archivo httpd.conf
    para especificar las variables que controlan el comportamiento del servidor apache.
5) Prueba de ejecución. Por defecto,los programas y archivos del servidor son instalados
    en el directorio base /usr/local/apache. Los archivos de configuración en ./conf
    y los programas en ./bin. Si te posicionas en el directorio base (cd /usr/local/apache),
    puedes arrancar o detener el servidor con el comando apachectl.

arrancar : ./bin/apachectl start
detener  : ./bin/apachectl stop
Instalación en el sistema Windows
La versión binaria, precompilada está contenida en el archivo apache-1.3.20-win32-no-src-r2.msi de 1.8 MB. Necesitas el instalador MSI que viene con Windows 2000. Puedes bajarlo de Internet para las versiones 95, 98 y NT 4.0 de Windows. Haciendo doble click en el archivo, se inicia la instalación. Simplemente tienes que seguir las instrucciones que te va dando el programa instalador.

Para instalar el servidor a partir del programa fuente, necesitas tener instalado en tu PC el compilador Visual C++. Tienes que empezar por abrir una ventana DOS para ejecuta el compilador C++ desde la línea de comando. Es probable que necesites modificar el archivo config.sys para aumentar el espacio de memoria destinado a las variables del ambiente. Las variables de configuración del compilador C++ en vcvar32.bat pueden desbordar el espacio estándar. Tienes que modificar la instrucción Shell=C:\command.com /e:nnnnn /p y sustituir el valor nnnnn por la cantidad apropiada. Un buen valor puede ser 32000 bytes, es muy poco probable que necesites más espacio.

Características relevantes -configuración-
La cantidad de funciones y servicios que ofrece el servidor web Apache es enorme, y además puedes incorporar nuevos módulos de servicios de acuerdo a tus necesidades específicas. Te puede resultar muy útil, tener la cartilla de las directivas del servidor Apache, te va a facilitar las tareas de configuración y mantenimiento de tu sistema.

Hospedaje virtual
Un solo computador ejecutando el servidor web Apache, puede actuar como si fueran muchos servidores independientes en Internet. Significa que el servidor puede manejar varias direcciones IP de Internet simultaneamente. Cada dirección tiene su página web asociada. Se denomina hospedaje múltiple, hospedaje virtual o servidor virtual.

La directiva VirtualHost permite definir los servidores virtuales. Se deben especificar en el archivo de configuración httpd.conf. El siguiente ejemplo muestra la definición de dos servidores virtuales con direcciones IP 212.100.204.120 y 98.202.64.16 diferentes.

<VirtualHost 212.100.204.120 >
ServerName www.cursos.net
DocumentRoot /home1/aplice/
.............................
</VirtualHost>

<VirtualHost 98.202.64.16 >
ServerName www.cabinas.net
DocumentRoot /home1/cabinas/
.............................
</VirtualHost>

En el registro de la directiva VirtualHost se destacan dos datos: el nombre del servidor (ServerName) y el directorio raíz (DocumentRoot) donde se alojan los documentos, datos, archivos y páginas web, que pertenecen al servidor virtual nombrado.

A partir de la versión 1.1 el protocolo HTTP, incluye en el encabezado de requerimiento el nombre del servidor (Host: www.nombre.com) destino de la conexión. Ello ha posibilitado usar una misma dirección IP para definir tantos servidores virtuales como necesites.

El siguiente ejemplo muestra la definición de dos servidores virtuales, www.aplice.net y www.redtrans.net que usan la misma dirección IP 201.200.49.201. Cuando se comparte una dirección IP, hay que usar la directiva NameVirtualHost para indicar la IP común.

NameVirtualHost 201.200.49.201

<VirtualHost 201.200.49.201 >
ServerName www.aplice.net
DocumentRoot /www/a/aplice/
.............................
</VirtualHost>

<VirtualHost 201.200.49.201 >
ServerName www.redtrans.net
DocumentRoot /www/r/redtrans/
.............................
</VirtualHost>

¿Cómo funciona el sistema de los servidores virtuales? Al arrancar el servidor web Apache, lee el archivo htppd.conf con la especificación de los servidores virtuales, y crea una tabla con los registros de éstos, ordenada por las direcciones IP de los mismos.

Tabla de servidores virtuales
IPNombre Descripción
98.202.64.16 ---------------------- servidor virtual con IP propia
201.200.49.201 --> www.aplice.net
--> www.redtrans.net
servidor virtual con IP compartida
212.100.204.120 ---------------------- servidor virtual con IP propia

Cuando un cliente web, solicita una página en un servidor web, ensambla un paquete de datos que contiene la dirección IP destino, el nombre del servidor destino y el nombre de la página. Luego envía el bloque de datos através de Internet hacia el servidor destino. Supongamos que el cliente web, solicita la página www.redtrans.net/frances.htm, el bloque ensamblado tendrá los datos que se muestran en el esquema siguiente.

Bloque de datos del cliente
IP origen 66.90.202.218
IP destino 201.200.49.201
Servidor destino www.redtrans.net
Página web /frances.htm
............ ....................

Cuando el bloque enviado, arriba al computador destino, el servidor web Apache entra en acción. Fija su atención en la dirección IP destino (201.200.49.201 en el ejemplo) y busca una coincidencia en su tabla de servidores virtuales. Existen dos posibilidades: I) La IP es propia de un servidor virtual. II) La IP es compartida por varios servidores virtuales.

En el caso I, el servidor Apache ha localizado el registro del servidor virtual y atiende el requerimiento. (Un servidor virtual con IP propia, se identifica univocamente por su IP)
En el caso II, tiene que explorar la lista de nombres de servidores virtuales y comparar con el servidor destino hasta encontrar una coincidencia. Luego atiende el pedido.

En el ejemplo, encuentra coincidencia en el segundo elemento de la tabla. Resulta la IP 201.200.49.201 ser compartida, por lo cual tiene que explorar la lista de nombres de servidores virtuales asociada. Encuentra coincide con el segundo nombre de la lista, que es www.redtrans.net. Seguidamente, consulta el registro de este servidor virtual y sabe que los documentos están ubicados en el directorio /www/r/redtrans, por lo cual la página pedida se localiza en /www/r/redtrans/frances.htm. Seguidamente, ensambla el paquete de datos correspondiente y lo envía através de Internet hacia el cliente web.

Bloque de datos del servidor
IP origen 201.200.49.201
IP destino 66.90.202.218
Longitud 24568 bytes
............ ....................
Datos de la
página web

/www/r/redtrans/frances.htm


Cuando el cliente web, recibe el bloque de datos del servidor, analiza el encabezado y se entera de la cantidad de bytes o longitud del segmento de datos enviado por el servidor. En el ejemplo, el archivo de la página web pedida tiene una longitud de 24568 caracteres.
Seguidamente el cliente web, obtiene los datos y los procesa de acuerdo a su objetivo. Por ejemplo, si el cliente web es tu navegador de Internet, despliega en tu pantalla la página web que has solicitado.

Páginas web dinámicas
Las páginas web, son documentos de hipertexto, en lenguaje HTML. Por defininición, el formato y el texto de un documento en lenguaje HTML (Hyper Text Markup Language) son estáticos o invariables. Todos los usuarios perciben el mismo documento.

Para poder brindar un mejor servicio a los usuarios, se han desarrollado diversas técnicas y lenguagjes, para desarrollar páginas web dinámicas. Un ejempo muy típico lo ofrece el comercio electrónico. A medida que el usuario va eligiendo productos y los va ubicando en su carrito de compras, la página web que muestra el detalle de lo comprado, tiene que ser configurada para cada usuario en el momento de la consulta. No podría ser estática.

El servidor web Apache puede incorporar en el momento de su compilación, los principales lenguajes de programación de páginas web dinámicas. Como consecuencia, la producción de tales páginas web es muy eficiente, rápida y confiable.

Técnicas de inserción
Una forma de hacer dinámica una página consiste en insertar instrucciones en el texto estático HTML. Cuando la página es solicitada, el servidor explora el texto de la página, ejecuta cada instrucción y en su lugar deja el resultado. Existen potentes lenguajes de inserción de datos. El más usado con el servidor Apache es PHP. El servidor Windows 2000 tiene el ASP (Active Server Page). El Apache tiene el SSI (Server Side Include), el cual es un lenguaje nativo de inserción de datos, sencillo pero que puede ser muy útil.

Contenido del archivo ejemplo.shtml de una página web.
<HTML>
<HEAD>
<TITLE>
Inserción de datos en una pagina web - </TITLE>
</HEAD>
<BODY bgcolor="
lightblue">
<center>

Ejemplo de inserción de datos
...........................................
<!--# cmd="/bin/date" -->
...........................................
</center>
</BODY>
</HTML>

En el esquema anterior, se muestra el hipertexto de una página web, que contiene una instrucción SSI que obtiene la fecha en curso. Cuando un cliente web solicita la página ejemplo.shtml, el servidor Apache sabe por el sufijo .shtml, que tiene que explorar el hipertexto por la presencia de instrucciones SSI de inserción de datos. El identificador de una instrucción SSI es <!--#. Cuando halla una instrucción SSI, ejecuta el comando especificado en cmd, y el resultado se inserta en el lugar de la instrucción.

En el ejempo, el comando es /bin/date, programa del sistema Unix, que despliega la hora y fecha actual. En el cuadro siguiente, se muestra el hipertexto que resulta después de la inserción de datos producidos por las instrucciones SSI.

Hipertexto de la página después de procesada por el servidor.
<HTML>
<HEAD>
<TITLE>
Inserción de datos en una pagina web - </TITLE>
</HEAD>
<BODY bgcolor="
lightblue">
<center>

Ejemplo de inserción de datos
...........................................
Sun Sep 2 16:20:12 GMT 2001
...........................................
</center>
</BODY>
</HTML>

Es importante destacar que el hipertexto producido por el servidor, despues de procesar las instrucciones SSI, es estático. La página web que se envía al cliente web es estática.
El servidor genera en forma dinámica la página web ejemplo.shtml pero el cliente web recibe una página de hipertexto estático, sin instrucciones SSI, las cuales no entendería.

Imagen de la página en el navegador.

Ejemplo de inserción de datos
...........................................
Sun Sep 2 16:20:12 GMT 2001
...........................................

Para aplicar la función SSI en las páginas de un directorio, es necesario establecer un conjunto de directivas apropiado. El cuadro siguiente muestra un ejemplo típico.

En el archivo htppd.conf
<Directory /www/htdocs/>
Options +Includes
AddType text/html .shtml
AddHandler Server-Parsed .shtml
</Directory>

En este ejemplo, todas las páginas web en el directorio /www/htdocs, cuyos nombres tienen la extensión .shtml se consideran que incluyen instrucciones SSI y por ende son exploradas por el servidor y producidas antes de ser enviadas.

La sintaxis general de una instrucción SSI es: <!--# [exec] cmd="programa" > .
Puede considerarse que el SSI es un lenguaje sencillo de inserción de datos. En cambio, el lenguaje de inserción PHP, muy usado en el ambiente Unix, es realmente potente. Permite el desarrollo eficiente de páginas web dinámicas muy complejas. Facilita el acceso desde una página web, a bases de datos y a los protocolos de transmisión de datos.

Interfases CGIs
Una interfase CGI (Common Gateway Interface), es un programa que se ejecuta desde una página web y es capaz de procesar datos en el servidor y generar una página web.
Cuando un usuario, desde una página web, ejecuta un programa CGI, éste procesa los datos que correspondan y crea la página web resultado, y la pasa al servidor que se encarga de enviarla al usuario. El usuario recibe una página web estática, que no tiene existencia real en el servidor.

Los lenguajes de programación más usados para implementar programas CGIs son PERL, C/C++ y Visual Basic. Sin embargo, cualquier lenguaje disponible puede ser usado para programar una interfase CGI. El sufijo .pl corresponde a PERL y el sufijo .cgi es genérico.
El lenguaje PERL 5.x orientado a objetos, tiene el ambiente de programación de CGIs más completo. Tiene una biblioteca pública de módulos para todas las aplicaciones que son comunes. Constantemente se mejoran y agregan nuevos módulos a dicha biblioteca.

Un ejemplo típico es la consulta de grandes bases de datos, desde una página web. El siguiente esquema muestra una página web sencilla que ejecuta un programa CGI.

Cliente web -Navegador-
PAGINA WEB

Consulta de datos de circuitos integrados

Digite el código:
Cuando un usuario ingresa el código NS16C550A y presiona el botón de BUSCAR, ocurre la secuencia de eventos que se describen brevemente a continuación.

1) El navegador, ensambla un paquete de datos en el cual incluye el nombre del programa CGI chipdata.pl, y el cógido NS16C550A, entre otros. Seguidamente lo envía al servidor.

2) Cuando el servidor analiza el requerimiento del cliente web, percibe que chipdata.pl es un programa CGI. Le acondiciona las variables de su ambiente e inicia su ejecución.

3) El programa en lenguaje PERL, chipdata.pl comienza a ejecutar y obtiene el código NS16C550A almacenado en una variable del ambiente (cargada por el servidor). Enseguida crea el encabezado de respuesta y luego ejecuta el manejador de bases de datos y le solicita información sobre el componente NS16C550A. Cuando recibe los datos sobre el integrado, escribe el hipertexto de la página web relativa al componente y enseguida pasa el paquete de datos (encabezado + hipertexto) al servidor.

4) El servidor envía el paquete de datos al navegador que hizo el requerimiento. El navegador obtiene el hipertexto del paquete y despliega la página web con información sobre el componente NS16C550A en la pantalla del computador del usuario.

Directivas para habilitar la ejecución de CGIs. El esquema siguiente muestra la forma de activar la ejecución de programas CGIs en el diretorio /www/ejemplo/cgi-bin/. Los programas deben tener las extensiones (sufijos) .pl y .cgi.

En el archivo htppd.conf
<Directory /www/ejemplo/cgi-bin/>
Options +ExecCGI
AddHandler cgi-script  .pl .cgi
</Directory>

Puedes profundizar sobre el tema páginas dinámicas, consultando textos y manuales de PERL, ASP, PHP y sobre programación de CGIs. El tema TU PROPIA PAGINA WEB te ayuda.

Multiplicidad de idiomas
En forma sencilla, es posible lograr que cada usuario reciba la página web que solicita en su propio idioma. Se necesita una versión de la página en cada uno de los idiomas que se quieren brindar. Por ejemplo, sea ayuda.htm una página de ayuda para los usuarios. Se considera muy útil ofrecer versiones en español, inglés y francés. Para ello hay que crear las páginas ayuda.htm.es, ayuda.htm.en y ayuda.htm.fr en los idiomas mencionados.

El siguiente esquema muestra las directivas necesarias para ofrecer documentos en múltiples idiomas en el directorio /www/ejemplo/htdocs.

En el archivo htpppd.conf
<Directory /www/ejemplo/htdocs/>
Options MultiViews
</Directory>
AddLanguage es .es
AddLanguage en .en
AddLanguage fr .fr
LanguagePriority es en fr

Cuando el servidor recibe la solicitud de la página ayuda.htm, verifica las preferencias de idiomas del navegador del usuario. En forma automática selecciona la página en el idioma preferencial del usuario y la envía como respuesta. Por ejemplo, si el usuario usa el idioma español, recibirá el contenido de ayuda.htm.es, o sea la versión en su propio idioma.

Control del acceso a documentos
Puedes restringir el acceso a los archivos que consideres conveniente. Puedes autorizar el acceso a los archivos de un directorio, solo a los usuarios de un computador en particular o bien a un grupo de usuarios. Es posible establecer para un usuario, una clave privada de acceso a los documentos en un directorio personal.

El esquema siguiente muestra las directivas que se necesitan para autorizar el acceso al directorio /www/ejemplo/privado/ solamente a los usuarios del subdominio *.port5.com.

En el archivo htppd.conf
<Directory /www/ejemplo/privado/>
Order Deny,Allow
Allow from .port5.com
</Directory>

Por ejemplo, pueden acceder aplice.port5.com, redtrans.port5.com y otros usuarios con direcciones del tipo *.port5.com, donde * representa un nombre de subdominio.

Mensajes de error personalizados
Es frecuente que un usuario digite mal la dirección de una página, o bien puede haber un enlace hacia una página web que ya no existe. En estos casos el servidor despliega una página estándar de error. Sin embargo, mediante la directiva ErrorDocument es posible indicar una página con información apropiada para orientar mejor a los usuarios.

El control de las acciones del servidor web en un directorio, puede efectuarse en forma específica mediante el archivo .htaccess, que puede contener todo tipo de directivas, las cuales se aplican al directorio actual y a sus hijos.

El siguiente cuadro muestra el contenido de un archivo .htaccess que tiene directivas para desplegar la página web NoExiste.htm cuando hay error 400 del cliente y desplegar ServError.htm cuando se presenta un error 500 del servidor.

Archivo .htaccess
ErrorDocument 401 /NoExiste.htm
ErrorDocument 403 /NoExiste.htm
ErrorDocument 404 /NoExiste.htm
ErrorDocument 500 /ServError.htm
ErrorDocument 501 /ServError.htm
ErrorDocument 502 /ServError.htm
ErrorDocument 503 /ServError.htm

Se debe incluir la trayectoria completa de cada página web. En el ejemplo, NoExiste.htm y ServError.htm están en el directorio raíz, por eso aparece /NoExiste.htm y /ServError.htm.

Bases de datos - Servicios
Las bases de datos son un recurso de computación fundamental para implementar muchos servicios de información. Brindar acceso a las bases de datos mediante una página web, facilita en forma notable a los usuarios, los cuales desde la comodidad de su hogar y en el momento oportuno pueden realizar sus investigaciones.

El número de bases de datos en Internet aumenta constantemente, porque es la forma más eficiente de organizar los grandes volumenes de datos. Son comunes en Internet bases de datos con 1000 millones de registros, pero la mayoría tienen unos pocos miles.
Las bases de datos permiten producir en forma muy eficiente páginas web dinámicas, con la información específica que necesita el usuario.

Se requiere un programa interfase para acceder a una base de datos desde Internet. Puede ser un programa CGI escrito en lenguaje PERL u otro lenguaje. También puede emplearse un programa de inserción de datos en lenguaje PHP. Los lenguajes PERL y PHP tienen drivers para comunicarse con los principales manejadores de bases de datos.
Sigue una lista de tales manejadores: dBase, DB2, Informix, InterBase, Ingres, Michosoft SQL, mSQL, MySQL, Oracle, ODBC, PostgreSQL, Sybase y muchos otros.

El servidor Apache puede incorporar los lenguajes PERL y PHP, para una ejecución más eficiente de los programas interfases que acceden a las bases de datos. En el archivo INSTALL que viene en la versión fuente, tienes ejemplos sobre las diversas formas de incorporar PERL y PHP en el servidor Apache en la fase de su compilación.

Cada lenguaje de programación de CGIs o de inserción de datos, ejemplos PERL y PHP, tienen un driver específico para cada uno de las bases de datos, a las que le brinda soporte. Las funciones del driver permiten consultar, actualizar, agregar y borrar registros de una base de datos desde una página web. También el administrador de una base de datos, puede efectuar sus tareas, en forma remota usando Internet.

El servidor web IIS 5.x

El Servicio de Información de Internet 5.0 (IIS Internet Information Services) viene incluido en el servidor Windows 2000 y se instala en forma automática por defecto. Esta versión mejora la confiabilidad, performance, administración, seguridad y los servicios de aplicación. El servidor IIS 4.0 de Windows NT, logró consolidar el soporte de los servicios estándares de Internet, y avanzar en seguridad, programación y administración.

La versión 5.0 ha avanzado en forma significativa en los temas: confiabilidad, seguridad, performance, administración y desarrollo de aplicaciones.(desarrollo de páginas activas)
En el IIS 4.0 de Windows NT se introdujo DCOM (Distributed Component Object Modules) y MTS (Microsoft Transaction Service). El MTS permite el desarrollo de aplicaciones que realizan transacciones que usan componentes COM y bases de datos. En Windows 2000 las tecnologías DCOM & MTS han sido fusionadas en el sistema denominado COM+.

El IIS 5.0 brinda todos los servicios estándares que los usuarios pueden esperar de un servidor web respetable. Incluye soporte para los últimos estándares usados en Internet. Implementa el protocolo HTTP 1.1, compresión HTTP, SSL 3.0, CGI, y el servicio WebDAV que permite el manejo remoto del contenido de un directorio en un servidor web.

El lenguaje ASP (Active Server Page) permite crear páginas web dinámicas y aplicaciones web interactivas. Los desarrolladores pueden crear interfases web que pueden combinar hipertexto HTML, instrucciones de inserción de datos y ejecución de componentes COM+.
El ASP que es parte del IIS 5.0 tiene las siguientes características relevantes:

Acceso a los objetos COM+. En ASP se puede crear y usar estos objetos. Esto permite acceder todas las aplicaciones basadas en componentes COM+.
Proceso de transacciones. La integración de COM+ en ASP, permite crear páginas para ejecutar transacciones comerciales o formales.(Una transacción es un conjunto de varias operaciones que se deben ejecutar todas, para poder considerar que se la ha concluido)
Ejecución más veloz. Cuando una página en ASP, contiene solo hipertexto HTML, el IIS no ejecuta el módulo (parser) ASP y la procesa en forma similar a una página web estática.
Mejor control de flujo. Cuando una página ASP, tiene un redireccionamiento a otra página en el mismo servidor, se lo puede hacer en forma directa, sin necesidad de volver a consultar el cliente que hizo el requerimiento. (Se evita el ir y venir reiterado)

Instalación y configuración
El IIS 5.0 se instala por defecto al instalar el servidor Windows 2000. La actualización de versiones anteriores en Windows 95, 98 o NT, se puede hacer con facilidad, basta seguir las instrucciones del programa instalador.

Configurar los diversos servicios es una tarea un poco más compleja, pero no difícil si se siguen paso a paso las operaciones recomendadas por el manual o guías de instalación.
Seguidamente tienes un buen ejemplo de configuración, que consiste en brindar acceso a Internet, a una red local (Intranet) de servidores Windows 2000.

Para brindar acceso a Internet a los usuarios de una intranet, se requiere:

a) Contratar un proveedor de servicios de Internet.
    Al abrir la cuenta, tienes que elegir un nombre de usuario y una clave de acceso.
b) Configurar Windows 2000 para acceder a Internet.
    Tienes que configurar las interfases de las redes y el tipo de conexión a Internet.
c) Actualizar tu servidor DNS local, para la adecuada conversión de las direcciones
    (www.servidor.com) en los números IP usados en la transmisión de datos.

El proveedor de acceso a Internet, te brinda la dirección del servidor DNS (Domain Name System) y el IP (Internet Protocol number) que asigna a tu servidor. Se supone que la conexión a Internet es dedicada, una línea ADSL o ISDN. (Podría ser también vía módem).

Tu servidor tiene que tener dos tarjetas interfases de red, una para conectar la intranet y la otra para conexión a Internet. Pueden ser tarjetas Ethernet de 10/100 Mbps.

Además, tiene que tener instalado el sistema RRAS (Routing & Remote Access Service), que brinda a los usuarios el soporte de conexión entre la intranet y la Internet. Windows 2000 tiene integrado el servicio RRAS, pero al ser opcional, puede no estar instalado.

Esta es la forma de configurar las interfases de red:
Seleccionar Inicio (Start), Configuración (Settings), Red & Conexiones (Network & Dial Up Connections), luego tienes que seleccionar el nombre de la interfase, y presionar el botón derecho, y elegir Propiedades (Properties). Tienes que abrir la ficha titulada General y elegir TCP/IP y activar Propiedades, ahora tienes que marcar Especificar dirección IP (Following IP Address) y digitar la dirección (número) IP correspondiente.

Este procedimiento tienes que hacerlo para la interfase de la intranet, a la cual tu tienes que asignarle un número IP, y también para la interfase externa que conecta tu servidor a Internet, en este caso el IP te la asigna tu proveedor de acceso a Internet.
Tienes que elegir un IP para la intranet, fuera del intervalo de los números IP usados por el protocolo DHCP (Dynamic Host Configuration Protocol), que asigna en forma dinámica los números IP a los clientes de la intranet.

Para habilitar el sistema de ruteo, seguir la siguiente secuencia: Inicio, Programas, Herramientas administrativas (Administrative Tools), ahora activar Configurar servicio de ruteo y acceso remoto (Configure Routing & Remote Access Service), luego presionar Siguiente (NEXT), y elegir Conexión de servidores a Internet (Internet Connection Servers). Presionar Siguiente y luego elegir Configurar Ruteador NAT.

El protocolo de ruteo NAT (Network Address Translation), permite compartir una dirección IP, con los clientes de una intranet. De esta forma, se esconden la direcciones IP de la intranet, por lo cual ésta deviene más segura. Se reduce el costo de conexión a Internet.

La selección del método de conexión a Internet, se realiza en la ficha titulada Ruteo y servidor de acceso remoto (Routing & Remote Access Server), seleccionar Usar la conexión a Internet elegida (Use the Selected Internet Connection) y señalar el nombre de la interfase externa que conecta el servidor a Internet, presionar Siguiente y luego Terminar (Finish).

Para concluir falta actualizar el servidor DNS local, para que pueda efectuar la conversión de las direcciones de Internet (www.servidor.com) en los números IP respectivos.
Recorrer Inicio, Programas, Herramientas administrativas, y activar DNS. Expandir el nodo DNS para visualizar las zonas Adelante e Inverso (Forward/Reverse), luego expandir Adelante, borrar el nodo raíz . (punto), porque no hay raíz DNS. Luego señalar el servidor DNS y presionar el botón derecho del ratón y elegir Propiedades, presionar Expedidores, y luego activar Habilitar expedidores, ingresar la dirección IP del DNS externo (provisto por el ISP), terminar presionando OK. El servidor DNS local ha quedado listo para enviar al servidor DNS del IPS, los requerimientos de resolución de nombres.

El servidor Windows 2000
El sistema operativo Windows a partir de la versión 2000, ha pasado a llamarse servidor windows 2000. Se quiere enfatizar, la incorporación de los protocolos y servicios de Internet, que permiten globalizar un sistema de computación tradicional. El sistema Servicios de Información de Internet 5.0 (IIS Internet Information Services) viene incluido en el servidor Windows 2000 y se instala en forma automática por defecto.

Actualmente hay tres versiones: el servidor profesional, el servidor avanzado y el servidor centro de datos. Se diferencian por la capacidad y posibilidades de ampliación.

El servidor profesional Windows 2000, puede tener 1-4 procesadores y hasta 4 GB.

El servidor avanzado Windows 2000, puede tener 1-8 procesadores y hasta 8 GB.
Dispone de agrupación de 2 servidores (Two-node clustering), y red de distribución balanceada del trabajo de hasta 32 computadores. Mayor confiabilidad y disponibilidad.

El servidor centro de datos Win. 2000, puede tener 1-32 procesadores y hasta 64 GB.
Dispone de agrupación de 4 servidores (Four-node clustering), y red de distribución balanceada del trabajo de hasta 32 computadores.

La agrupación de servidores (clusterig), tiene por objetivo cubrir las fallas de alguno de ellos. Cada servidor del grupo puede brindar los datos y servicios de los demás. Cuando uno de ellos falla y queda fuera de servicio, otro toma su trabajo.

La formación de una red para distribuir en forma balanceada el trabajo, tiene por objetivo mejorar la eficiencia de la atención y mejorar el empleo de los recursos de la red.

Características del IIS 5.0
A partir de la versión 5.0, el servidor web IIS ha incorporado servicios y una funcionalidad que lo asemaja al servidor Apache. Los expertos consideran que no tiene la capacidad y confiabilidad del servidor Apache. Sin embargo, puede ser una herramienta aceptable para empresas que usan Windows 2000 y quieren tener su propio servidor web.

Seguidamente sigue un resumen de las nuevas características del servidor web IIS 5.0, que te puede ayudar a evaluarlo y ver si te es útil para implementar tu propio servidor.

Confiabilidad y performance. Protección de aplicaciones, fácil re-iniciación del servidor, control del uso de la CPU, agrupación de sockets de comunicación de datos.

Protección de aplicaciones. Evita la caída o bloqueo del servidor web, cuando alguna aplicación falla y entra en un ciclo infinito. El servidor inetinfo.exe ejecuta como un proceso independiente. Las aplicaciones (DDLHost.exe) que no son críticas, ejecutan agrupadas (pooled process), si una de ellas falla, todo el conjunto falla. Las aplicaciones críticas ejecutan como procesos independientes, que no son afectados por fallas ajenas.

Para fijar el nivel de protección de aplicaciones, tienes que abrir la lista desplegable respectiva, en las Propiedades de la ficha titulada Directorio virtual o Directorio HOME y luego elegir Alta (independiente) o Media (agrupada).

Confiable re-iniciación del servidor IIS. En las anteriores versiones, re-iniciar la máquina era la forma de iniciar nuevamente el servidor web IIS. Ahora pulsando un elemento en la consola de manejo MMC se puede en forma confiable re-iniciar el IIS. También se lo puede re-iniciar desde la línea de comandos.

Control del uso de la CPU y del ancho de banda. El administrador puede controlar el uso del procesador por parte de los sitios web y también el volumen de datos por segundo que transmiten. Puede planificar y distribuir convenientemente el uso de los recursos.

Agrupación de sockets de comunicación. Un socket (zócalo) es un identificador para una red y un servicio de comunicación de datos. El socket se crea cuando el sitio web inicia su operación. Las estructuras del socket consumen bastante memoria, lo cual limita el número de sitios web activos simultáneamente.

En el IIS 5.0 los sitios web que tienen direcciones IP diferentes y que comparten el mismo puerto (servicio), también comparten el mismo socket. Esto se denomina socket pooling (agrupación). Aumentan los sitios web activos y se mejora la eficiencia del servidor web.

Hospedaje de múltiples sitios web. El IIS 5.0 tiene la capacidad de hospedar múltiples sitios web en un mismo servidor, usando tres técnicas: asignando diferentes puertos, diferentes direcciones IP y diferentes nombres de dominios.

Puertos distintos. Una misma dirección IP y nombre de dominio, permiten hospedar distintos sitios web, asignándole a cada uno un número de puerto diferente.
Ejemplos, al dominio www.aplice.net le corresponde la IP 202.101.20.82, la sección facturación tiene su propia página web en el puerto 808 y la sección cobranza con tarjetas de créditos tiene su propia página web en el puerto 101.
La dirección de ambas páginas son:
Sección de facturación www.aplice.net:808 y cobranza www.aplice.net:101.

Múltiples direcciones IP. Se pueden asignar varias direcciones IP a una tarjeta interfase o bien se pueden tener varias tarjetas interfases en el mismo computador. De esta forma, muchos servidores web virtuales pueden implementarse en un solo computador.
Cada servidor virtual, tiene que tener su IP y su dominio registrado en el servidor DNS.

Dominios diferentes. En esta técnica se comparte una misma dirección IP entre varios nombres de dominios diferentes. Un servidor Windows 2000 con una sola dirección IP, puede hospedar múltiples sitios web.

Esta técnica es posible porque en el protocolo HTTP 1.1 se incluye en el encabezado, el parámetro host el cual especifíca el nombre del dominio del sitio web. De esta forma, el servidor web IIS puede distinguir los sitios web que comparten una misma dirección IP.
Cada uno de los nombres de dominios tiene que ser registrado en el servidor DNS.

Agrupación de servidores. Una forma de mejorar la confiabilidad y disponibilidad de los sitios web, consiste en interconectar dos o más computadores. Cada uno de ellos puede actuar como respaldo de los demás. Cuando un servidor falla, otro toma su trabajo. La carga de trabajo se distribuye en forma balanceada entre todos.

El servidor avanzado Windows 2000, tiene software para agrupar computadores (clustering), de forma tal que para los usuarios, parecen ser un solo computador.

El servidor web IIS se puede configurar para manejar una red multi-nodos agrupada y balanceada, que permite alta disponibilidad y escalabilidad. También para manejar una red agrupada de dos nodos, que permite una alta disponibilidad de los servicios web.

Replicación. Consiste en la duplicación de registros de configuración y archivos de un servidor en otro servidor del grupo. Con el objetivo de que todos los servidores del grupo (cluster) puedan brindar los mismos recursos a los usuarios.

El IIS ofrece el utilitario lissync.exe que permite duplicar, la metabase y otros registros de configuración. También se puede usar el Servicio de difusión de contenido (Content Deployment Service), para replicar datos entre los servidores de un grupo.

Administración del IIS 5.0. El proceso de instalación del servidor IIS está incluido en la configuración del servidor Windows 2000. Se instala por defecto como un servicio de red.

Administración centralizada. El IIS es manejado usando la MMC (Microsoft Management Console). La MMC se localiza en =>Herramientas administrativas, =>Manejo del computador, =>Servidor de aplicaciones y servicios.

Administración remota. El IIS 5.0 tiene herramientas de administración con interfases web, que permiten instrumentar una administración remota desde un Navegador en cualquier plataforma. Hay dos interfases disponibles: una se basa en el navegador web y la otra en la consola MMC (esta requiere Windows 2000 en el computador remoto).

Administración privada parcial. Se pueden crear cuentas privadas para los operadores de los sitios web. Éstas les permiten administrar sus sitios web con plena autonomía.

Contabilidad de procesos. Se monitorea y se registra el uso de los recursos de la CPU (procesador) por parte de los sitios web. Es posible asignar los costos respectivos.

Mejores comandos de línea . Los programas (scripts) que se ejecutan desde la línea de comando, permiten automatizar las principales tareas de administración del servidor IIS. Puedes crear tus propios programas de comandos para automatizar muchas tareas repetitivas que son frecuentes en el mantenimiento de un servidor web.

Respaldo y recuperación. La consola MMC del IIS tiene opciones para respaldar los registros de configuración del servidor, o sea respaldar la metabase del servidor IIS.

Mensajes de error personalizados. Los mensajes de error de la serie 400 ocasionados por el cliente web, pueden ser personalizados, a los efectos de informar mejor a los usuarios.
Estos errores ocurren cuando se intenta leer una página web que ya no existe, cuando se intenta leer una página web cuyo acceso es restringido, y por muchas otras causas.

Extensiones de Front Page. El IIS brinda soporte al sistema Front Page que le permite al webmaster, administrar y mantener un sitio web usando una interfase gráfica. El Front Page permite crear, editar e instalar en el servidor las páginas web, a la vez que efectuar muchas otras tareas de mantenimiento que requiere un sitio web.
La consola MMC permite administrar las extensiones del servidor de Front Page.

Acceso remoto a directorios web. Un directorio WebDAV (Web Distributed Authoring and Versioning) en el servidor, permite a los usuarios autorizados compartir los documentos através de una intranet o de Internet. En forma remota los autores pueden editar, mover, y borrar archivos en el directorio WebDAV. Cuando un autor edita un documento, permite que los demás autores puedan leerlo, pero no que puedan modificarlo.

El acceso a un directorio WebDAV puede hacerse desde Windows 2000, mediante el Internet Explorer 5.x o desde cualquiera de los programas de Office 2000.

En Windows 2000 puedes usar el utilitario Agregar sitio de red (Add Network place wizard) para desplegar el contenido del directorio WebDAV como si fuera parte de tu propio sistema de archivos en tu PC local.

Usando Internet Explorer 5.x puedes conectarte a un directorio WebDAV y efectuar las mismas operaciones que desde Windows 2000.

Desde cualquier programa de Office 2000 puedes crear, editar, guardar y publicar archivos en forma directa en un directorio WebDAV.

Para controlar el acceso a un WebDAV se usa el sistema de autenticación de Windows 2000, el protocolo Kerberos v5, y la autenticación de huella digital que permite el HTTP 1.1 para transmitir claves en forma segura através de Internet.

Carpeta web virtual. El soporte de carpeta web virtual (Web folder) permite a los usuarios navegar directorios en servidores web remotos, como si fueran parte de su sistema local. Los usuarios pueden arrastrar y soltar (drag and drop), recuperar y modificar archivos, y efectuar otras tareas habituales. Un web folder, abrevia el acceso a un WebDAV.

Sistema de archivos distribuido. Te permite unificar bajo un mismo espacio de nombres, archivos en diferentes computadores. Los usuarios perciben que todos los archivos están ubicados en un mismo sitio de la red, aunque estén dispersos en servidores remotos.

Transferencia FTP de archivos. Cuando la transferencia de un archivo se interrumpe, es posible recomenzar y continuar a partir del carácter siguiente al útimo transferido. Antes habia que transferir desde el principio del archivo, aunque faltaran unos pocos bytes.

Seguridad del servidor web IIS. El IIS se beneficia de las características estándares de seguridad de Internet, las cuales están completamente integradas en el Windows 2000.

Estándares de seguridad. El IIS soporta los siguientes protocolos de seguridad:

Fortezza. Este el estándar de seguridad del gobierno de EE.UU. que satisface los requerimientos de seguridad para el intercambio de mensajes. Permite confiabilidad, integridad, autenticación y no-repudio de autoría (desconocer ser el autor).

Secure Socket Layer. El SSL 3.0 es un protocolo de seguridad usado ampliamente por los navegadores y servidores. Permite flujos de datos seguros (no descifrable), verificar la identidad de los participantes (autenticar) e intercambiar mensajes confidenciales.

Transport Layer Security. El TLS se basa en el SSL. Brinda autenticación criptográfica de los usuarios y ofrece a los programadores una forma de escribir código con instrucciones TLS que puede comunicarse con otros programas que usan TLS.

PKCS #7. Este protocolo describe el formato de firmas digitales y sobres digitales, que son encriptados. Los certificados digitales que maneja el servidor IIS 5.0 lo usan.

PKCS #10. Este protocolo describe el formato de las solicitudes de certificados que son remitidos a una autoridad de certificación.

Autenticación básica. Fue introducida en el protocolo HTTP 1.0, y consiste en transmitir la clave (password) de acceso a un recurso, codificada en el formato Base64. Por eso, este método no es seguro, porque se puede interceptar la clave y descifrarla fácilmente.

Autenticación de resumen. Este es un método seguro, porque la clave no puede ser decodificada, en el caso de ser interceptados los datos, cuando viajan através de la red.
El nombre de usuario y la clave pasan por una función de hash, que genera un resultado denominado resumen (digest). El servidor le agrega datos a la clave antes aplicar la función de hash, esto evita que la clave pueda ser descifrada.
La autenticación de resumen (digest authentication) requiere que el servidor soporte las nuevas funciones del protocolo HTTP 1.1 y el usuario necesita el Internet Explorer 5.x.

Mecanismos de seguridad. Los principales mecanismos de seguridad el servidor web IIS 5.0 son: Autenticación, certificados digitales, control de acceso, encriptación y auditoría.

Autenticación. Permite confirmar la identidad de un usuario que solicita acceso a un sitio web. Para servicios públicos se usa anónimo (anonymous) y para servicios restringidos se usa autenticación básica, de resumen o integrada de Windows que usa Kerberos v5.

Certificados digitales. Son documentos de identidad digital, que le permiten a los servidores, navegadores y usuarios identificarse mutuamente. Los certificados de los usuarios se pueden mapear en cuentas de usuarios de windows correspondientes al servidor web. Cada sitio web puede usar los certificados de sus clientes para controlar, eficientemente el acceso a los recursos que se ofrecen.

Control de acceso. El servidor IIS 5.0 tiene dos niveles de control de acceso, mediante el permiso de operaciones web y mediante el permiso del sistema de archivos NTFS.
Los permisos web, afectan todas las operaciones HTTP del servidor. Se definen las operaciones (GET, HEAD, PUT, DELETE,...) que se pueden usar para acceder a los recursos que maneja el servidor web IIS.
Los permisos NTFS, definen el nivel de acceso que cada usuario tiene para acceder a los directorios y archivos en el servidor web IIS.

Encriptación. El protocolo SSL 3.0 es fundamental para implementar la funciones de encriptación de datos del servidor IIS. Para que un servidor y un navegador puedan establecer una comunicación segura, ambos tiene que tener un certificado digital.

Se crea una clave de sesión al iniciar una transmisión de datos, la cual es usada por el servidor y navegador para encriptar y decodificar los datos que se transmiten.
La potencia de la clave se mide en bits. Una clave de 40 bits, es considerada vulnerable. Una clave de 128 bits es considerada no vulnerable.

Un certificado digital tiene una clave pública y una clave privada. La clave pública es para recibir datos encriptados, que solo el titular del certificado puede leer (decodificar).
Al iniciar una comunicación segura, el servidor genera una clave de sesión, la cual es encriptada con la clave pública del navegador, y luego es transmitida al navegador. Solo el navegador puede decodificarla y usarla para encriptar o decodificar datos.

Auditorías. Para fortalecer la seguridad de un servidor web, es necesario monitoriar el uso de los diversos servicios y recursos. Tienes que crear un plan de auditorias para el acceso a directorios y archivos, y para ciertos eventos del servidor web.

Tienes que verificar regularmente los archivos (logs) donde se registran los eventos del sistema, tales como: acceso a sitios web, intentos fallidos de acceso, uso de recursos.
Puedes descubrir intentos de quebrar la seguridad del IIS o de alguno de los sitios web.

Utilitarios de seguridad El IIS 5.0 incluye 3 nuevos utilitarios de seguridad (Security wizards), que facilitan bastante la instrumentación de las funciones de seguridad.

El utilitario de certificados, simplifica las tareas de mantenimiento y configuración de sitios web que usan SSL y autenticación. Obtener, mantener y renovar un certificado digital de un servidor puede concretarse con facilidad, usando este wizard.

El utilitario de permisos. Facilita al administrador las tareas de establecer y configurar los permisos y los accesos autenticados de un sitio web. En los sitios web públicos se usa autenticación anónima, que permite acceso a todas las páginas y aplicaciones ASP.

Los sitios web seguros, son de acceso restringido, un ejemplo típico es una extranet. La extranet es una intranet a la cual se accede através de Internet. Normalmente el acceso a una extranet se otorga a los miembros de una empresa u organización, y no al público.

El utilitario de lista de certificados, permite manejar y configurar las listas de certificados confiables. Las CTLs (Certificate Trust List) son especialmente útiles para los proveedores de hospedaje de sitios web, que necesitan manejar la CTL de cada sitio web.

Ambiente de aplicación. El lenguaje ASP incluído en el servidor IIS 5.0, combinado con el servicio de componentes y el acceso de datos de Windows 2000, ofrecen un ambiente sólido para el desarrollo de aplicaciones para Internet.

Se mencionan seguidamente las principales mejoras introducidas en el lenguaje ASP.

Capacidad de control de flujo. Cuando se usa Response.Redirect para cargar otra página (redireccionar) en el mismo servidor, se produce un ciclo en el flujo de datos, servidor-cliente-servidor. Se reduce la performance del servidor y el ancho de banda. Para corregir esta ineficiencia se introdujeron en el objeto Server las dos funciones: Server.Transfer y Server.Execute. Éstas permiten cargar o ejecutar otra página ASP.

El componente capacidad del navegador. Este componente crea el objeto BrowserType, que contiene la descripción de las capacidades del navegador. Cuando un navegador se conecta a un servidor envía en el encabezado HTTP el User Agent o sea su nombre y versión. Este dato es usado para buscar en el archivo Browscap.ini el registro de las propiedades del navegador y cargarlo en el objeto BrowserType, que es usado por el ASP.

Manejo de los errores. El ASP tiene ahora nuevas capacidades para el manejo de errores, que te pueden ayudar a localizar fallas en tus aplicaciones web. Puedes registrar todos los mensajes de error de tus páginas ASP en un archivo personal.

El nuevo método (función) Server.GetLastError permite crear el objeto ASPError, el cual describe la condición de error en una página ASP. Permite desplegar información muy útil: descripción del error y la línea en la cual ha ocurrido.

Páginas sin instrucciones ASP. El IIS 5.0 analiza toda página ASP, para ver si incluye instrucciones ASP. Cuando no incluye, la página es producida sin pasar por el parser.
Antes toda página con extension .asp era derivada al parser ASP para ser procesada.

Componentes scripts de Windows. El ASP tiene soporte para la nueva tecnología de scripts de Windows. Ésta permite al programador crear procedimientos complejos requeridos por la lógica comercial, y convertirlos en componentes COM reusables.
Estos componentes se usan en aplicaciones web y en otras que son COM compatibles.
Se pueden crear con facilidad usando los lenguajes VBScript y JavaScript 2.x/1.1.

Scripts ASP codificados. Se dispone de un utilitario para encriptar el código de una aplicación en lenguaje ASP o en JavaScript. El programador define un esquema de encriptación, que reduce el código a una sucesión de caracteres sin ninguna lógica.
Al ser ejecutada la aplicación web es decodificada. El objetivo de la encriptación, es evitar que los aplicaciones en ASP y en JavaScript sean copiadas con gran facilidad.

El IIS y los directorios activos. En el servidor Windows 2000 los directorios activos son usados para guardar y manejar información sobre los recursos diponibles en una red.
Esta forma de centralizar información, simpifica la administración de la red y le facilita a los usuarios localizar los recursos. También le facilita el trabajo a los programadores, cuando tienen que escribir aplicaciones que necesitan acceso a datos actualizados.

ADSI (Active Directory Service Interface) es un modelo de servicio de directorio basado en COM, que permite a las aplicaciones que son ADSI compatibles, acceder a una extensa variedad de protocolos de directorios (A.D., LDAP, NSD), usando un conjunto estándar de interfases. El ADSI escuda las aplicaciones clientes de la implementación y de los detalles del protocolo de almacenamiento de datos subyacente.

Una aplicación llamada proveedor ADSI, se hace por si misma, disponibe a las demás aplicaciones clientes ADSI. Los datos expuestos por el proveedor se organizan en un espacio de nombres, por él definido. El proveedor puede definir el esquema ADSI, para informar sobre la estructura del espacio y sobre los objetos disponibles.

El IIS habitualmente almacena la mayor parte de la información de configuración de los sitios de Internet en la metabase. El IIS expone una interfase de bajo nivel DCOM, que permite a las aplicaciones acceder y manipular la metabase. Para hacer más sencillo el manejo de la metabase, el servidor IIS incluye un proveedor ADSI, que ofrece similar funcionalidad que la interfase DCOM, y la expone a las aplicaciones ADSI compatibles.

SERVIDOR  WEB  VIRTUAL
Has aprendido un poco sobre el servidor web Apache y sobre el servior web IIS. Es muy probable que recuerdes que ambos tienen la posibilidad de alojar múltiples sitios web en un mismo computador. Cuando el sitio web tiene su propio nombre de dominio, del tipo www.tu-servidor.com, este servicio se denomina hospedaje web virtual.

El hospedaje virtual se caracteriza por compartir los recursos del servidor web entre varios sitios web. Cada sitio web tiene su propio espacio de disco para instalar sus páginas web y archivos. Además tiene una casilla de E-mail y muchos otros servicios.

Un servidor web virtual tiene un nombre de dominio propio y un número IP propio. Su funcionalidad es similar a la de un servidor web independiente. Se le llama virtual porque su existencia depende de un servidor independiente que comparte sus recursos.

Es frecuente usar los términos hospedaje virtual y servidor virtual como sinónimos. Sin embargo, el concepto de hospedaje virtual es más genérico que el de servidor virtual.
Un sitio web con nombre de dominio propio, pero que comparte el número IP, no puede por ejemplo, establecer una transmisión SSL segura de datos. Por lo tanto no tiene una funcionalidad equivalente a la de un servidor web independiente.

Por definición un servidor virtual tiene un dominio propio y un número IP propio, ello le permite una funcionalidad equivalente a la de un servidor independiente.

El costo de un servidor virtual depende mucho de los recursos que tú necesites. Inciden en el costo: el espacio de disco, el número de casillas de E-mail y de bases de datos, el ancho de banda, el soporte para comercio electrónico, seguridad SSL, y muchos otros.

Puedes consultar las secciones PAGINAS WEB y COMERCIO E. en www.computarizar.pro, si quieres ampliar sobre el tema de los costos de hospedaje y servidores virtuales.

¿Cuál es el beneficio de un servidor virtual? Su costo es insignificante comparado con un servidor independiente. La instalación de los equipos (hardware) y de los programas (software), el mantenimiento y operación, no son tareas que te exijan preocupación.

Te puedes concentrar plenamente en el desarrollo y mantenimiento del contenido y de los servicios de tu sitio web. Si eliges un buen proveedor, que te brinde un servidor virtual con las facilidades que tú necesitas, tienes en tus manos la solución más eficiente.

¿Cuál es la desventaja de un servidor virtual? No tienes control sobre los equipos y sobre los programas. Tienes que usar los servicios estándares que te ofrece el proveedor. Es muy probable que para tí estas limitaciones sean irrelevantes e inclusive deseables.

Seguidamente tienes una breve lista de proveedores de hospedaje y algunos directorios de proveedores, por si te interesa explorar y evaluar la diversidad de servicios que hay disponible en el mercado global. Sin lugar a dudas, hay un servicio para cada necesidad.

PROVEEDORES DE SERVIDORES
Sitio Web País - Servicios y costos -
GOLDEN HOSTING Canadá. Pago inicial $30 y $5/mes, un dominio $11 (dólares)
POW WEB Estados Unidos. Un dominio $15, hospedaje $7.80 por mes
WebsiteSource Estados Unidos. $27/mes, todo para el comercio electrónico.
FERCA NETWORK España. Pago inicial $18, anual $150, un dominio $28 (euros)

DIRECTORIOS DE PROVEEDORES
Sitio Web Organización - Forma de búsqueda
HOST SPOT Listado general de las ofertas de hospedaje. Búsqueda por descripción y también por precio y espacio de disco.
WEB HOST DIR Clasificado por categorías: Unix, NT, Ecommerce, Dedicated,
Búsqueda por precio, tipo de servidor y espacio de disco.
HOST INDEX Indice de hospedaje. Cold Fusion, dedicados, Ecommerce, FrontPage, Windows 2000/NT, Revendedores. Los Top 25.

SERVIDOR   DEDICADO
Mantener funcionando un servidor web en Internet, es una tarea no del todo sencilla. Para lograr un buen redimiento y un servicio de calidad, hay que atender el equipo y monitoriar los sistemas las 24 horas del día todos los días de año.

La dificultad inherente al mantenimiento y operación de un servidor web, ha propiciado el surgimiento de empresas que se especializan en estas tareas, ofreciendo los servidores dedicados o servidores de uso exclusivo, que se alquilan o venden.

Un servidor dedicado es un servidor independiente configurado en forma exclusiva según las necesidades del usuario. El usuario tiene total control sobre el equipo y sobre todos los programas que se instalan. Puede administrar en forma remota sus bases de datos, sistemas y aplicaciones en general. Puede usar su equipo como lo estime conveniente.

El proveedor se encarga de mantener y operar el equipo y los sistemas instalados. Brinda el soporte técnico necesario para mantener el servidor en funcionamiento todo el tiempo.
Los equipos están en un centro de servidores, donde se toman todas las precausiones posibles. Tienen UPS para eliminar fallas de la energía, equipos electrógenos autónomos para suministrar energía cuando hay cortes, y personal técnico monitoriando las 24 horas del día los equipos. Aire acondicionado y lo necesario para lograr 99.999% Up Time.

Tener una idea detallada de los costos que tiene un servidor dedicado, te puede ser de utilidad para entender los costos de tu propio servidor. Es posible que tú puedas lograr costos más competitivos. El ejemplo que se presenta corresponde a una empresa de EE.UU. que ofrece un servicio de buena calidad. El servidor dedicado del ejemplo es el más económico. Otras empresas tienen costos similares para equipos y sistemas iguales.

COSTO DE INSTALACION INICIAL
Descripción - servicio - producto - COSTO
Instalación inicial. Se ensambla el PC y cargan los programas.

Sistema Linux RedHat 7.1, Sendmail, Servidor Apache con SSL, Perl 5.x, GCC/G++, MySQL, PHP, IMAP & POP, ProcMail, SSH, RealAudio/Video, ext. de FrontPage, y demás software estándar.

Sistema Windows 2000 Servidor IIS 5.0, Componentes ASP, servidor SMTP, servidor seguro SSL, Perl activo, servicio remoto de datos. Administración remota con PCAnyWhere o ControlIT.
$450

Se muestran los programas que se instalan con el sistema operativo Linux y el sistema Windows 2000. Se instala el sistema operativo elegido por el usuario. Existen otros.

DETALLE DE COSTOS MENSUALES
Concepto - servicio - producto - COSTO/mes
Amortización del equipo. (12 cuotas, al año se es propietario)
PC Celeron/800 Mhz, 128 MB RAM pc133, Disco 40GB IBM 7200 rpm, CD-ROM, VGA. (ampliable a P-III, 1GB RAM, 10/20GB Cinta )
$110
Servicios de conexión a Internet. Energia para el PC, conexión mediante 100Mb/p Ethernet, aire acondicionado, baterias de respaldo y generador de emergencia. Un IP y servicio DNS para el servidor primario. 10 IPs más sin costo. Múltiples líneas DS-3. $65
Servicio de Hardware. Cubre el costo de los honorarios del personal técnico en caso de falla electrónica del equipo. $25
Soporte técnico. 2 horas de servicio regular o 1 hora de servicio de emergencia. (4 incidentes habituales o 2 emergencias) $95

Puedes suprimir el service de Hardware y el soporte técnico, pero en caso de falla electrónica del equipo o de los programas, tienes que pagar todos los honorarios.
El soporte técnico te da tranquilidad, tu PC está bien atendido cuando lo necesita.

Nada mejor que explorar un poco las ofertas de servidores dedicados para apreciar la variedad de equipos, sistemas, soporte de Internet y precios, que hay disponibles en el mercado global. A continuación tienes algunos proveedores y directorios para buscar.

PROVEEDORES DE SERVIDORES DEDICADOS
Sitio Web Costo mínimo - sistemas operativos
SUPERB Hosting Desde $270 USD por mes. Linux, FreeBSD, Win2000, NT 4.0
WEBHOSTING Desde $395 todo incluido. PCs y SUN. Linux, Solaris, Windows
RACKSPACE Desde $285 USD/mes. FreeBSD, Linux, SUN, Win 2000/NT4.0

DIRECTORIOS DE PROVEEDORES
Sitio Web Organización - Forma de búsqueda
HOST SPOT Listado general de las ofertas de hospedaje. Búsqueda por descripción y también por precio y espacio de disco.
WEB HOST DIR Clasificado por categorías: Unix, NT, Ecommerce, Dedicated,
Búsqueda por precio, tipo de servidor y espacio de disco.
HOST INDEX Indice de hospedaje. Cold Fusion, dedicados, Ecommerce, FrontPage, Windows 2000/NT, Revendedores. Los Top 25.


Traducción gratis!
 Páginas web y textos
 Traducción en pocos segundos!
Cursos de idiomas gratis!  
  -Diccionarios  -Gramáticas  -Radio y TV
  -Traductores  -Revistas   -Diarios online
  -Chat -foros -Utilitarios -Alfabetos -News


BIBLIOGRAFÍA

Si tienes dudas sobre este tema, puedes enviarme un E-mail. A la brevedad te responderé
E-mail : [email protected] computarizar.pro®         versión 2003©