Apache2 dia1
Upcoming SlideShare
Loading in...5
×
 

Apache2 dia1

on

  • 1,198 views

Tutorial para estudiantes

Tutorial para estudiantes

Statistics

Views

Total Views
1,198
Views on SlideShare
1,198
Embed Views
0

Actions

Likes
0
Downloads
28
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Apache2 dia1 Apache2 dia1 Presentation Transcript

  • Servidores Web Apache 2
  • Temas a tratar
    • Introducción de servidores web.
    • Servidor Apache
    • Uso en internet de Apache
    • Configuración uso de directivas de configuracion
    • Publicar sitio web
    • Publicar recursos en el web
    • Autenticar a usuarios para acceder a recursos web
  • Servidor Web: Arquitectura y funcionamiento
    • ¿Que es un servidor?
      • Es un tipo de software que suministra servicios a quien lo solicita
    • ¿Que es un servidor Web?
      • Es un programa que sirve datos en forma de paginas web, textos complejos con enlaces, figuras formularios.
      • La comunicacion de estos se realiza por medio de un protocolo, llamado http
      • El servidor web se mantiene en espera por peticiones HTTP, solicitadas por un cliente atravez de un software de navegacion.
    View slide
  • Funcionamiento de un servidor Web
    • El servidor web es el responsable de proporcinar el acceso a los recursos que se encuentran bajo control del sistema operativo
    View slide
  • Arquitectura
    • Capa servidor
      • Subsistema Recepción: espera las peticiones de los clientes
      • Analizador de peticiones: traduce la localizacion del la red al nombre del archivo local(servidor)
      • Control de acceso: autentica y permite el acceso.
      • Manejador de Recursos: determina el tipo de recurso solicitado
      • Registro de transaccion: registra todas las peticiones y su resultado.
    • Capa Soporte
      • Utilidades: funciones utilizadas por el resto de subsistemas.
      • Capa Abstracta del Sistema operativo (OSAL) encapsula el funcionamiento especifico del sistema operativo para facilitar su portabilidad del servidor web a diferentes plataformas.
  • Instalación de Apache
    • Existen 2 maneras:
      • Conseguir los rpm para la distribución y usar el comando
        • rpm –ivh httpd.rpm
      • Utilizar un repositorio de datos y bajarlo a traves de yum
        • yum install httpd*
  • Puesta en marcha de Apache
    • Una vez que se ha instalado el apache se puede iniciarlo como servicio ejecutando la siguiente linea de comando
      • service httpd start (la utilidad service toma como parametro el nombre del servicio que se desea ejecutar y la accion que este le vaya a realizar puede ser start, stop, restart)
    • Formas para verificar su funcionamiento
      • Ejecute la siguiente linea de comando desde una consola windows o linux
        • telnet <ip del servidor> 80.
      • Verifique que el proceso efectivamente este corriendo
        • ps –ax | grep http*
        • netstat –utap | grep http*
      • Abra un browser (firefox) y coloque lo siguiente en su url.
        • http://localhost
  • Configuración de Apache
    • El archivo que contiene el comportamiento principal de apache es:
      • httpd.conf
        • Dentro de esta existen 3 secciones que agrupan el comportamiento del servidor
          • Global Enviroment
            • Definen las directivas que controlan el funcionamiento general, como el número de peticiones concurrentes que puede manejar, donde puede encontrar los ficheros de configuración.
          • Main server configuración
            • Definen los parametros del servidor principal, proporciona tambien parametros por defecto para todos los host virtuales.
          • Virtual host
            • Un servidor web puede albergar diferentes sitios web utilizando diferentes nombres de host
            • Los beneficios de utilizar el soporte de host virtuales permite definir prácticamente un número de servidores ilimitado, de fácil configuración y que no requiere hardware adicional. La principal desventaja es que el software cliente debe soportar esta parte del protocolo.
  • Configuración de Apache
    • Global Enviroment
      • ServerRoot:
        • Define el directorio donde reside toda la información de configuración y registro que necesita el servidor.
      • Timeout:
        • Número de segundos tras los cuales el servidor cierra la conexión.
      • KeepAlive:
        • Si se permiten o no conexiones persistentes.
      • MaxKeepAliveRequest:
        • El número máximo de peticiones permitidas durante una conexión persistente.
      • StartServers:
        • Número de procesos servidor hijo que serán creados cuando arranca Apache por primera vez.
      • Maxclients:
        • Define el número de peticiones simultáneas que apache puede soportar. Como máximo se crean este nº de procesos servidores hijo.
      • MaxRequestPerChild:
        • Define el nº de peticiones que cada proceso hijo tiene permitido procesar antes de morir.
      • ThreadsPerChild:
        • Nº de hilos concurrentes que el servidor permitirá utilizar. Este valor representa el nº máximo de conexiones que el servidor puede manejar a la vez.
      • Listen:
        • Esta directiva instruye al servidor Apache para que escuche en mas de una dirección IP o en mas de un puerto.
      • LoadModule:
        • Esta directiva enlaza dentro del servidor la librería o fichero objeto nombrado cuando se arranca el servidor y añade la estructura del modulo a la lista de módulos activos.
  • Configuración de Apache
    • Mail Server configuración
      • Port:
        • Define el puerto en el cual escucha el servidor (0 - 65535). Hay que tener en cuenta la relación que tiene esta directiva con el fichero /etc/services y que algunos puertos, especialmente los situados por debajo del 1024, están reservados para protocolos específicos. El puerto estándar para el protocolo HTTP es el 80.
      • User/Group:
        • Definen el usuario y el grupo con el que el servidor contestará las peticiones. Para poder utilizar esta directiva, el servidor standalone debe ejecutarse inicialmente como usuario root. El usuario no debería poseer privilegios que otorguen acceso a ficheros que no deseemos.
      • ServerAdmin:
        • Define la dirección de correo que el servidor incluirá en cualquier mensaje de error que devuelva al cliente.
      • ServerName:
        • Define el nombre de host del servidor. Se suele utilizar cuando se crean redirecciones. Sino se define el nombre de servidor, intentará deducirlo a través de su dirección IP.
      • DocumentRoot:
        • Define el directorio desde el cual el servidor servirá los documentos. A menos que la URL solicitada coincida con una directiva Alias, el servidor añadirá el PATH a la URL.
  • Configuración de Apache
    • Mail Server configuración
      • Directory:
        • <Directory></Directory> se utilizan para encerrar un grupo de directivas que se aplicarán al directorio en cuestión y sus sub-directorios. El parámetro directorio, puede ser una trayectoria completa o un metacaracter.
      • DirectoyIndex fichero:
        • Nombre/s del fichero/s a usar como página de inicio de un directorio.
      • AccessFileName fichero:
        • El nombre del fichero a buscar en cada directorio para información de control de acceso.
      • Alias url directorio:
        • Esta directiva permite que los documentos sean almacenados en un sistema de ficheros diferente al definido por la directiva DocumentRoot.
      • Options: [+|-] opcion:
        • Controla que características están disponibles para un directorio en particular. La opción se puede definir a None, de forma que ninguna característica extra se habilita o a All de forma que todas se habilitan menos MultiViews. Otras características extra son: ExecCGI , FollowSymLinks, Includes, IncludesNOEXEC, Indexes, MultiViews, SymLinksIfOwnerMatch.
  • Configuración de Apache
    • Virtual Hosts
      • <VirtualHost> </VirtualHost>
        • <VirtualHost> and </VirtualHost> se utilizan para agrupar un conjunto de directivas que se aplicarán solo a un host virtual. Dentro de este par de directivas se pueden incluir cualquier otra que haga refenrencia a este host particular.
      • NameVirtualHost:
        • Especifica la dirección a resolver cuando se utiliza un sistema basado en nombres de host virtuales.
      • ServerName:
        • Especifica el nombre de host que aparecerá en la cabecera de la petición.
  • Puesta en Marcha de un sitio Web
    • Si se desea colocar un sitio web en un servidor apache se debe:
      • Crear un sitio web, con alguna herramienta(windows/linux)
      • Una vez que se tenga la estructura terminada se la debe colocar en el directorio
        • /var/www/html/
      • Si se desea que solo exista un solo site dentro de su servidor web.
  • Puesta en Marcha de un sitio Web
    • Directorios Virtuales
      • Si se desea publicar una carpeta de su sistema de archivos ejm
        • /opt/cursolinux
      • http://localhost/recursos .
      • http://200.9.176.1/recursos
      • http://www.inventiva.com/recursos
    • Redireccion de Directorios
      • Se puede hacer que un directorio del apache se redirija de manera transparente hacia otro servidor externo añadiendo esto a su configuracion
        • Redirect /recurso http://www.fiec.espol.edu.ec
  • Directorios Virtuales Ejemplo
    • Dentro de la sección “configuracion principal del servidor” se coloca lo siguiente:
      • Alias /linux/ /opt/cursolinux/
      • <Directory &quot;/opt/cursolinux/&quot;>
      • Options Indexes Includes FollowSymLinks
      • Order allow,deny
      • Allow from all
      • </Directory>
    • El parametro
      • Indexes indica que se debera mostrar el contenido del directorio
      • FollowSymLinks permite colocar enlaces simbolicos dentro del directorio
      • Includes permite utilizar funciones como autenticacion.
  • Acceso a Directorios Virtuales
    • Se puede restringir el acceso para que determinados usuarios tengan acceso desde el internet a un recurso determinado.
    • Pasos
      • Para el recurso o directorio a autenticar se debe añadir lo siguiente
        • Options Indexes FollowSymLinks Includes AllowOverride All
      • Se debe crear un fichereo .htaccess definiendo la autenticacion para dicho directorio contra un fichero que contenga claves.
        • El archivo contendra :
        • AuthName &quot;Solo usuarios autorizados&quot; AuthType Basic require valid-user AuthUserFile /cualquier/ruta/hacia/fichero/de/claves
  • Acceso a Directorios Virtuales ejemplo
    • Generar un directorio que sera visto por cualquier browser:
      • http://localhost/confidencial/
    • Crear un archivo llamado autentica.conf
      • Alias /confidencial /opt/cursolinux/secretomaximo
      • <Directory &quot;/opt/cursolinux/secretomaximo&quot;>
      • Option Indexes FollowSymLinks Includes AllowOverride All Order allow, deny Allow from all
      • </Directory>
    • Crear el directorio secretomaximo
      • mkdir /opt/cursolinux/secretomaximo
  • Acceso a Directorios Virtuales ejemplo
    • Crear el archivo /opt/cursolinux/secretomaximo/.htaccess
      • Touch /opt/cursolinux/secretomaximo/.htaccess
    • Editar el fichero .htaccess y añada
      • AuthName &quot;Solo usuarios autorizados&quot; AuthType Basic require valid-user AuthUserFile /var/www/claves
    • Cree el archivo /var/www/claves
      • Touch /var/www/claves
      • htpasswd /var/www/claves fulano
    • Reinicie el servicio httpd