Administración de servicios Internet Intranet Tema 6: Servicios Web E.U.I.T. Informática Gijón Curso 2003/2004 ASII 1
Introducción a los servicios Web Cliente con navegador Web Servidor Web Internet Explorer HTTP FTP Dirección IP HTTP FTP TCP/IP TCP/IP Red ASII 2
Qué es IIS? ~~~ ~~~ ~~~ ~~~ ~~~ ~~~ ~~~ ~~~ ~~~ Intranet Windows 2000 que ejecuta IIS: Internet Servidor del World Wide Web (WWW) Servicio de Protocolo de transferencia de archivos (FTP) Servicio de Protocolo de transporte de noticias de red (NNTP) Servicio de Protocolo simple de transferencia de correo (SMTP) ASII 3
Identificación de un sitio Web Propiedades de Sitio Web predeterminado Directorio particular Documentos Seguridad de directorios Encabezados HTTP Errores personalizados Extensiones de servidor Sitio Web Operadores Rendimiento Filtros ISAPI Identificación del sitio Web Descripción: Sitio Web predeterminado Dirección IP: (Todos no asignados) Avanzadas... Puerto TCP: 80 Puerto SSL: Conexiones Ilimitado Limitado a: 1000 conexiones Tiempo de espera de la conexión: 900 segundos Habilitar mantenimiento de conexiones HTTP abiertas Habilitar registro Formato de registro activo: Formato de archivo de registro extendido W3C Propiedades... Aceptar Cancelar Aplicar Ayuda ASII 4
Configuración del directorio principal Propiedades de Sitio Web predeterminado Directorio en el equipo local Encabezados HTTP Errores personalizados Extensiones de servidor Sitio Web Operadores Rendimiento Filtros ISAPI Directorio particular Documentos Seguridad de directorios Cuando se conecte a este recurso, el origen debería estar en: Un directorio en este equipo Un recurso compartido en otro equipo Una redirección a una dirección URL Directorio virtual Ruta de acceso local: C:\inetpub\wwwroot Acceso al código fuente de secuencias de comandos Lectura Escritura Examinar directorios Configuración de aplicación Nombre de aplicación: Punto de inicio: Permisos de ejecución (Y): Protección de aplicación: Aplicación predeterminada <Sitio Web predeterminado> Ninguna Medio [agrupado] Examinar... Registrar visitas Indizar este recurso Quitar Configuración... Descargar Aceptar Cancelar Aplicar Ayuda ASII 5
Configuración de los permisos de acceso ASII 6
Configuración de los permisos de las secuencias de comandos ASII 7
Asignación de un documento predeterminado Propiedades de sitio Web predeterminado Encabezados HTTP Errores personalizados Extensiones de servidor Sitio Web Operadores Rendimiento Filtros ISAPI Directorio particular Documentos Seguridad de directorios Habilitar documento predeterminado Default.htm Default.asp iisstart.asp Habilitar pie de página microsoft.com Home Add... Welcome to Microsoft s Homepage - Microsoft Internet Explorer Archivo Edición Ver Favoritos Herramientas Ayuda Remove Atrás Adelante Detener Actualizar Inicio BúsquedaFavoritos Historial Correo Imprimir Modific http://www.microsoft.com/ms.htm Browse... Home Events & Training Subscribe About Microsoft U.S. & International About Our Site See page customized for: All Are You Ready to Take on the Chess Master? Product Families Business Customers Developers Education Home User IP Professionals Partners & Resellers Find Out What s Happening at PC Expo in New York Rick Rashid: The Steady Hand Behind Microsoft Research Enter to Win a Gateway PC Loaded with Office 2000 Download Outlook Updates for the E-mail Attachments Virus ASII 8
Identificación de los métodos de autenticación Método = A+B? S Sitio Web seguro de inicios anónimos? S Anónimo Servidor Web Método = A+W? S Sitio Web seguro de inicios anónimos? S Windows integrado A = Anónimo B = Básico W = Windows integrado Método = A + B + W Explorador = IE 2.0 o posterior? Básico S ASII 9
Configuración de la autenticación Métodos de autenticación Acceso anónimo No se necesita nombre de usuario ni contraseña para tener acceso a este recurso. Cuenta usada para acceso anónimo: Modificar Autenticación básica Autenticación implícita Acceso autenticado Para los siguientes métodos de autenticación, se requiere nombre de usuario y contraseña cuando - el acceso anónimo está deshabilitado, o - el acceso está restringido mediante listas de control de acceso NTFS Autenticación básica (la contraseña se manda en texto no cifrado) Seleccione un dominio predeterminado: Autenticación de texto implícita para servidores de dominio de Windows Autenticación de Windows integrada Autenticación integrada de Windows Aceptar Cancelar Ayuda ASII 10
Apache Uno de los servidores más extendidos Multitud de paquetes en función de lo que necesitemos del servidor web (php, perl ) Archivos del sistio web, CGI s, manuales, etc. en /var/www Configuración en httpd.conf Funciona con directrices de configuración. Pueden establecerse directrices para directorios específicos con los archivos.htaccess ASII 11
Ficheros necesarios conf log srm.conf access.conf httpd.conf error_log access_log httpd.pid mime.types /var/www/htdocs http://localhost index.html httpd httpd.conf apachectl ASII 12
Directrices globales Directiva:ServerType Parámetros: Standalone Inetd Descripción: Esta directiva permite controlar la ejecución de httpd. Directiva:ServerRoot Sintaxis: ServerRoot Directorio Descripción: Nos permite especificar el directorio del que cuelgan los subdirectorios de configuración y traza (conf y logs). Directiva:PidFile Sintaxis: PidFile Archivo_httpd.pid Descripción: Nombre del archivo httpd.pid. Si no se indica el path a partir del raiz /, el path que se indique será relativo a ServerRoot. Directiva:StartServers Sintaxis: StartServers NºServidores Descripción: Especifica el número de servidores hijo que lanzará httpd la primera vez que se ejecuta. ASII 13
Directrices del servidor principal Directiva:Port Sintaxis: Port Nº Puerto Descripción: Se puede modificar el puerto para que no escuche por defecto en el 80. Directiva:User Sintaxis: User login Descripción: Se hace referencia al usuario con el que se lanza el servidor cuando se lanza. Se recomienda lanzar con usuario nobody y grupo #-1. Directiva:ServerAdmin Sintaxis: ServerAdmin e-mail Descripción: e-mail a donde deben remitirse los problemas con el servidor. Directiva:ServerName Sintaxis: ServerName Nombre_host Descripción: Especifica el nombre de host que se le devolverá al cliente que se haya conectado a nuestro servidor. Atención: Éste debe ser un nombre DNS válido. Directiva:DocumentRoot Sintaxis: DocumentRoot Directorio Descripción: Le especifica al servidor en que Directorio debe ser donde debe buscar documentos por defecto. Directiva:UserDir Sintaxis: UserDir Directorio Descripción: Le especifica al servidor que cuando se le solicita un documento de un usuario p.e. http://golum.inforg.uniovi.es/~user1/documento.html debe buscar dicho documento en el directorio Directorio de la cuenta del usuario user1. ASII 14
Directrices del servidor principal Directiva:DirectoryIndex Sintaxis: DirectoryIndex ArchivoDefecto Descripción: Le especifica al servidor como debe llamarse el documento que debe devolver por defecto cuando en una petición no se le solicite un documento específico. Directiva:AccessFileName Sintaxis: AccessFileName NombreArchivo Descripción: Permite especificar el nombre del archivo que restrinja el acceso a directorio concreto. Más común.htaccess Directiva:Error_log Sintaxis: Error_log Archivo_error_log Descripción: Nombre del archivo error_log. Directiva:Custom_log Sintaxis: Custom_log Nombre del archivo access_log. Archivo_access_log Descripción: Directiva:Alias Sintaxis: Alias Nombre_pseudonimo Directorio Descripción: Permite especificarle a Apache un pseudonimo para un directorio, de modo que se le puede solicitar una dirección URL que contenga dicho pseudonimo. P.e. http://golum.inforg.uniovi.es/icons/ que será donde Apache guarda sus iconos. Directiva:ScriptAlias Sintaxis: ScriptAlias Nombre_pseudonimo Directorio Descripción: Permite especificarle a Apache un pseudonimo para un directorio, donde se le indica que los documentos que hay son sólo scripts CGI. ASII 15
Directrices del servidor principal Directiva:ReadName Sintaxis: ReadName Archivo Descripción: Le especifica al servidor el nombre del documento debe incluir al pie del listado de un directorio. Directiva:HeaderName Sintaxis: HeaderName Archivo Descripción: Le especifica al servidor el nombre del documento debe incluir en la cabecera del listado de un directorio. Directiva:IgnoreIndex Sintaxis: IgnoreIndex Archivo1 Archivo2... Descripción: Le especifica al servidor que archivos debe obviar al mostrar el listado de un directorio. Directiva:AddType Sintaxis: AddType Tipo Extensión Descripción: Añade un par tipo-ext a mime.types. De esta forma cuando el servidor recibe una solicitud de un documento puede saber el tipo de fichero de que se trata por su extensión y comunicárselo al Browser. Directiva:AddHandler Sintaxis: AddHandler Manejador Extensión Descripción: Mapea extensiones a acciones de manejadores no asociados a dichas extensiones. Así cuando no es posible o no interesa asociar una acción a un tipo en mime.types. Se le asocia dicha acción mediante esta directiva. ASII 16
Directiva <Directory NombreDirectorio> <Directory /var/www/htdocs Subopciones </Directory> Options directivas: None Ninguna Indexes Permite ver un listado del directorio ExecCGI Habilita la ejecución de scripts CGI Includes Habilita la ejecución de comandos SSIFollowSymLinks Permite acceder a los enlaces simbólicos del directorio All Permite todas las opciones anteriores AllowOverride directivas: All Permite sobrecargar en.htaccess todas las directivas None No permite sobrecargar en.htaccess ninguna directiva Options Permite sobrecargar en.htaccess la directiva Options Limit Permite sobrecargar en.htaccess la directiva Limit AuthConfig Permite sobrecargar en.htaccess las directivas de control de autorizaciones ASII 17
Directiva <Directory NombreDirectorio> AuthType tipo Especifica el tipo de autentificación empleada por el servidor. El valor de dicho tipo de autentificación es basic. AuthUserFile path_absoluto Especifica el fichero de passwords para httpd. El fichero de passwords se mantiene con el programa htpasswd. AuthGroupFile path_absoluto Especifica el fichero de grupos para httpd. El ficheros de grupos es un fichero de texto muy simple. Order orden * deny,allow Comprueba primero las entradas deny; Servidores que se encuentren en listas de los dos tipos son admitidos. * allow,deny Comprueba primero las entradas allow; Servidores que se encuentren en listas de los dos tipos son rechazados. Allow from host1 host2... Especifica a que hosts se les permite el acceso al directorio dentro del que se encuentre la directiva. Deny from host1 host2... Especifica a que hosts se les deniega el acceso al directorio dentro del que se encuentre la directiva. Limit <Limit Métodos_Acceso> Subdirectivas_Limit </Limit> Permite limitar el efecto de las Subdirectivas_Limit a los métodos de acceso que se indiquen (Métodos_Acceso) el método de acceso (GET, POST). Se pueden añadir todas las anteriores opciones. ASII 18
Ejemplo Directiva <Directory /var/www/htdocs> Options Indexes FollowSymLinks AllowOverride Options AuthType basic AuthUserFile /usr/local/apache_1.3.9/auth/.httpasswd AuthGroup /usr/local/apache_1.3.9/auth/.httgrp <Limit GET require group profes order allow,deny allow from inforg.uniovi.es deny from pcwww30.inforg.uniovi.es </Limit> </Directory> ASII 19
Directrices de servidor virtual Directiva:NameVirtualHost Sintaxis: NameVirtualHost ipaddr[:port] Descripción: Define la dirección IP (opcionalmente, el puerto) donde va a escuchar el servidor virtual. Directiva: ServerName Sintaxis: ServerName fqdn Descripción: servidor virtual en formato dns. Directiva: ServerAlias Sintaxis: ServerAlias altname Descripción: nombres de servidor virtuales para ese servidor. Nombre del Activa más Directiva: DocumentRoot Sintaxis: DocumentRoot Directorio Descripción: Directorio donde va a buscar los documentos el servidor virtual. ServerName www.dominio.ast <VirtualHost 192.168.0.1> NameVirtualHost 192.168.0.1 DocumentRoot /var/www/docs <VirtualHost 192.168.0.1> ServerName www.este.dominio.es DocumentRoot /var/www/otrodominio </VirtualHost> ServerName www.otrodominio.ast ServerAlias www.otromas.ast </VirtualHost> ASII 20