SlideShare una empresa de Scribd logo
1 de 15
Descargar para leer sin conexión
UT 4
Administración de
Apache
1.Introducción
Apache (www.apache.org) es una fundación que proporciona soporte a la
comunidad con un numeroso conjunto de proyectos “open source”. Es una
comunidad de desarrolladores y usuarios caracterizados por ser un grupo
colaborativo, con el deseo de crear software de alta calidad. Se pueden
encontrar proyectos como: HTTP Server, Ant, Cocoon, DB, Excalibur,
Forrest, Geronimo, Jakarta, SpamAssassin, Struts, Web Services, XML,
etc.
Uno de los principales proyectos es el HTTP Server
(http://httpd.apache.org), un servidor web “open source”. En la actualidad
es el servidor web más popular en Internet.
2.Versiones
Existen tres versiones de apache
 Versión 2.2
 Versión 2.0
 Versión 1.3
Las tres versiones se están en desarrollo activo.
La versión 1.x está muy extendida, y aunque es posible migrar de Apache 1.x
hacia Apache 2.x , no muchas instituciones o empresas están dispuestas a
migrar toda su infraestructura de producción a una versión mayor, optando
mejor por realizar actualizaciones graduales a su versión instalada, razón
por la que Apache 1.x es desarrollado activamente aún con la presencia de
Apache 2.
La configuración de la versión 2.2 tiene cambios significativos con respecto
a las versiones 1.3 y 2.0.
3.Características
Es un servidor Web potente, flexible y ajustado al HTTP/1.1
Es altamente configurable y extensible.
Puede ser ajustado a través de la definición de módulos empleando su
propio
API (Aplication Programming Interface).
Provee todo su código fuente de forma libre y se distribuye bajo una
licencia no restrictiva.
Se ejecuta en diversos sistemas operativos: Windows 9x/NT, Macintosh,
Novell
NetWare, OS/2, Linux y la mayoría de los Unix existentes: IRIX, Solaris,
HP
UX, SCO, FreeBSD, NetBSD, AIX, Digital Unix, etc.
Se desarrolla de forma acelerada estimulando la retroalimentación desde
sus usuarios a través de nuevas ideas, reportes de errores y parches.
4.Servidores principal y servidores virtuales
En Apache es posible diferenciar entre
 Servidor principal: Servidor que atiende las peticiones si no se
configuran servidores virtuales. Su configuración se define a nivel
general en los ficheros de configuración.
 Servidores virtuales: Apache soporta servir diversos sitios web con
un sólo servidor. Para ello proporciona facilidades de creación de
servidores virtuales en función de direcciones IP, puertos y nombres
de dominio.
Si se activan los servidores virtuales por nombre para una ip
(NameVirtualHost) el servidor principal no tiene efecto para esa IP.
La configuración de cada servidor virtual se realiza utilizado la
directiva
<VirtualHost> … <VirtualHost>
5.Instalación del servidor
Instalación del servidor usado apt (ejecutarlo con privilegios de root)
apt-get install apache2
Se instala la versión 2.2 con los principales ('core') módulos habilitados
(apache2-common)
7. Ficheros y directorios de configuración
 Introducción
La configuración de apache se basa en directivas que escriben en
ficheros de texto.
Para que los cambios realizados en los ficheros de configuración
tengan efecto hay que reiniciar el servidor
 Directorio que contiene todos los ficheros de
configuración
 En las distribuciones de Linux basadas en debian todos los
ficheros de configuración de Apache2 se encuentran en el
directorio /etc/apache2.
 En Windows las configuración se encuentra en C:Program Files
(x86)Apache Software FoundationApache2.2conf
 En la mayoría de los sistemas se utiliza un fichero denominado
httpd.conf en el que se almacenan todas las directivas de
configuración.
 En las distribuciones basadas en Debian se suele utilizar como
fichero principal de configuración apache2.conf,
 Ficheros de Configuración
El fichero de configuración se divide en tres secciones (las directivas
pueden aparecer mezcladas y desordenadas esta organización es a
nivel puramente organizativo, no es una división estricta)
 Sección 1: Directivas globales: Define los aspectos globales del
servidor. Por ejemplo: el número máximo de clientes
concurrentes, los timeouts, el directorio raíz del servidor, etc.
 Sección 2: Directivas de funcionamiento del servidor principal:
Agrupa las directivas que definen el comportamiento del servidor
principal. También definen el comportamiento por defecto de
todos los servidores virtuales que se configuren más adelante
(incluido un posible servidor virtual por defecto)
 Sección 3: Directivas de configuración de los servidores
virtuales: Agrupa las directivas relacionadas con los servidores
virtuales que se definan.
 Directivas
Como se ha explicado la configuración del servidor queda determinada
por un conjunto de directivas que se escriben en los ficheros de
configuración.
Dependiendo del entorno en el que se escriban determinadas
directivas de configuración, éstas afectarán al comportamiento del
servidor en general, sólo a un directorio de la raíz de documentos, a
un sitio virtual,…
Aunque la mayoría de las directivas pueden aparecer en cualquier
sección hay algunas que no tienen sentido en determinados contextos.
Existen directivas (Ej.:<Directory></Directory> , <Files> </Files>, …)
que actúan como contenedores de otras directivas (secciones) y
permiten configurar ámbitos del servidor concretos.
d.1. Directivas globales de funcionamiento
Son directivas que afectan al comportamiento global de Apache
o ServerRoot: Especifica el directorio raíz del servidor
donde se encuentran los:
✗ Ficheros de configuración
✗ Ficheros de logs
✗ Ficheros de error
No añadir / al final del directorio
o Listen: Especifica en qué Ip y puertos se atenderán las
peticiones. La especificación de la dirección IP es opcional
y si no se indica, o bien es un asterisco, el servidor
escuchará las peticiones de todos los interfaces de red
existentes en el servidor.
Pueden utilizarse múltiples directivas Listen para
especificar distintos interfaces de red y/o puertos.
d. 2 Directivas de configuración del
servidor/servidores virtuales:
Permiten definir el comportamiento del servidor principal por
defecto y de los servidores virtuales. Las directivas que no se
incluyan dentro de la directiva <VirtualHost> de un servidor virtual
concreto se aplican al servidor principal y a todos los servidores
virtuales donde no se especifiquen con mas detalle (dentro de la
sección definida por <VirtualHost>) .
d.2.1. DocumentRoot: Directorio raíz desde donde se sirven las
paginas web del servidor. Lo que esa “por encima” en árbol de
directorios no es visible por ningún cliente ( a no se que se configuren
Alias). Si el servidor recibe una petición (Ej.: http/localhost) buscara
en dicho directorio.
d.2.2 Directivas de sección (contenedores)
 <Directory directorio/s>… </Directory>: Las directivas
encapsuladas dentro de <Directory> se aplican al directorio
especificado y a todos sus subdirectorios excepto que
existan directivas mas especificas para alguno de los
subdirectorios.
El directorio en el que se hacen efectivas estas directivas
debe expresarse como una ruta absoluta dentro del sistema
de ficheros.
✔ Ejemplos
<Directory />
Options FollowSymLinks
</Directory>
Indica que las directivas se aplican a todos los directorios.
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
Indica que las directivas se aplican a al directorio
/var/www/ y sus subdirectorios.
 <Files fichero/s > … </Files>
Las directivas encapsuladas dentro <Files> se aplican a
los ficheros especificados.
d.2.3. Opciones sobre directorios. Options
Permite indicar que características están disponibles cuando se sirve
el directorio correspondiente al cliente.
Sintaxis: Options [+|-]<opción> [+|-]<opción> ...
Ejemplo
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride None
</Directory>
Estas características son:
 FollowSymLinks: Indica que se pueden seguir los enlaces
simbólicos presenten el directorio.
 ExecCGI: Indica que se pueden ejecutar los scripts de tipo
CGI.
 Includes: Indica que se permita el mecanismo SSI (Server
Side Include).
 Indexes: Indica que si el cliente solicita un directorio
donde no exista ninguno de los ficheros especificados en
DirectoryIndex se le devuelva una lista con formato del
contenido del directorio.
 SymLinksIfOwnerMatch Indica que se sigan los enlaces
simbólicos solo si el fichero o directorio enlazado posee el
mismo dueño que el enlace.
 IncludeNoExec: Es similar a Includes con la diferencia de
que no se permiten los comandos SSI include y exec para
programas CGI.
 MultiViews: Indica que se “negocie'' entre el servidor y el
cliente el documento a mostrar cuando existen varias
posibilidades.
Por ejemplo, si se solicita el documento /images/map y
existe el directorio images con la opción habilitada pero no
existe /images/map, entonces el servidor busca todos los
documentos con nombre map.* y “negocia'' con el cliente
cual de estos, de existir alguno, retorna al cliente.
 None: Ninguna funcionalidad está activa.
 All: Incluye todas las opciones con excepción de
MultiViews. Este es el valor por defecto.
Cuando varias directivas Option son aplicables a un directorio se
toma la más específica, o sea no se mezclan salvo que estas se
indiquen precedidas por un + o un -, en cuyo caso se añade la opción o
se elimina respectivamente.
Por ejemplo en la declaración siguiente:
<Directory /var/www/html/documents>
Options Indexes FollowSymLinks
</Directory>
<Directory /var/www/html/documents/linux>
Options Includes ExecCGI
</Directory>
Las opciones aplicadas al directorio /var/www/html/documents/Linux
son solamente: Includes y ExecCGI.
<Directory /var/www/html/documents>
Options Indexes FollowSymLinks
</Directory>
<Directory /var/www/html/documents/linux>
Options +Includes +ExecCGI -FollowSymLinks
</Directory>
Las opciones aplicadas al directorio /var/www/html/documents/Linux
serían: Indexes, Includes y ExecCGI.
d.2.4. Directorios Virtuales
Los directorios virtuales son directorios que no cuelgan del directorio
raíz (DocumentRoot) del servidor
Se utiliza la directiva Alias que permite hacer alias para ficheros o
directorios a través de un URL.
Tiene que estar activo el modulo mod_alias (por defecto lo está en
Debian/Ubuntu)
De esta forma se puede acceder a recursos fuera del directorio raíz
( DocumentRoot).
Sintaxis es la siguiente: Alias url directorio|fichero.
d.2.5.ErrorLog: Especifica el fichero donde se escriben las trazas
de error del servidor.
Sintaxis: ErrorLog <fichero> | <tubería> | syslog[:facilidad]
En Debian/Ubuntu por defecto por defecto
/var/log/apache2/error.log
Si el argumento de la directiva comienza con un carácter “|''
expresará que las envidas por una tubería al comando siguiente.
Se puede expresar que se use el servicio syslog.
d.2.6 LogLevel: Indica a partir de que prioridad se guardan las
trazas
Sintaxis: LogLevel <prioridad>
Las prioridades son las mismas definidas en el servicio syslog:
emerg: Sólo se registran las emergencias
crit: Sólo se registran los problemas críticos.
alert: Se registra cualquier situación que genera
una alerta.
error: Todos los errores son registrados. Este es
el nivel predeterminado.
warn: Todos los errores y avisos son registrados
notice: Cualquier situación significativa es
registrada
info: Se registra toda la información relativa al
servidor.
debug: Los mensajes de depuración son
registrados.
Siempre una prioridad incluye a las superiores. Por
defecto en Debian/Ubuntu , se indica la prioridad warn.
d.2.7 DirectoryIndex: Ficheros a servir por defecto :
Especifica el fichero que se servirá por defecto para cada
directorio en el caso de que no se especifique ninguno en la
URL.
Por defecto es index.html.
Si por ejemplo se pone en el navegador: www.instituto.es el
servidor por defecto enviará www.instituto.es/index.html.
Se puede especificar más de un fichero y el orden con el que
se especifica dicho nombre determinará la prioridad para
decidir cuál se sirve.
Cuando no se encuentra ninguna de las páginas de inicio
especificadas, Apache crea de manera automática la página de
examen de directorio, si se encuentra activa la opción Indexes.
El examen de directorios consiste en un listado de las carpetas
ficheros del directorio pedido.
 Control de acceso a páginas del servidor
e.1.Control de acceso por IP
Es posible definir que IPs pueden acceder a un recurso del servidor
utilizando las directivas que se especifican a continuación dentro de
secciones Directory, File, Location, ficheros .htaccess, etc. Cuando se
realiza la conexión desde la máquina el servidor comprueba si el
acceso al recurso está autorizado para es IP. Si está autorizada
devuelve el recurso solicitado y si no está autorizada devuelve un
código de error (Acceso no autorizado).
Allow: Permite especificar quién está autorizado a acceder al
recurso.Se pueden especificar direcciones IP, nombres de
máquina, fragmentos del nombre o dirección e incluso por
variables de la petición.
All para indicar todos los clientes.
✔ Ejemplos
Allow from pruebas.instituto.es
Allow from 147.156.222.34 147.156.222.65
Deny: Permite especificar quién no está autorizado para
acceder al recurso. Mismas opciones que con Allow.
✔ Ejemplos
Deny from seguridad.instituto.es
Deny from 147.156.222.34 147.156.222.65
Deny from all
Order: Permite afinar el funcionamiento de las directivas
Allow y Deny. Dos opciones:
 Order Allow, Deny
El acceso esta denegado por defecto.
Primero se evalúan las directivas Allow y luego las Deny
Sólo podrán entrar los clientes que cumplan las
especificaciones de Allow y no cumplan las de Deny.
 Order Deny, Allow
El acceso está permitido por defecto.
Primero se evalúan las directivas Deny y luego las Allow.
El acceso está permitido por defecto y sólo podrán entrar
los clientes que no cumplan las especificaciones de Deny o
cumplan las de Allow.
e.2 Control básico de acceso por usuario y contraseña
(autenticación)
Apache puede autorizar el acceso a los recursos en función de usuario
que los solicite. Para ello realiza un proceso de autenticación.
Cuando un cliente solicita una URL que requiere autenticación, el
servidor responde con un mensaje de autenticación requerida.
El navegador mostrará un cuadro de diálogo para que se introduzca el
nombre de usuario y contraseña.
El servidor chequea si las credenciales son correctas
Si lo son devuelve el recurso solicitado
Si no lo son o el usuario no tiene acceso al recurso devuelve un código
de error (Acceso no autorizado).
Apache soporta varios modos de autenticación:
Básica (mod_auth)
La contraseña es enviada por el cliente en texto plano.
Para gestionarlas se utiliza el programa htpasswd.
Digest (mod_auth_digest)
La contraseña se envía cifrada por el cliente.
Para gestionarlas se utiliza el programa htdigest.
DBM (mod_auth_dbm).
Las contraseñas se almacenan en una base de datos en ficheros BM.
Para gestionarlas se utiliza el programa dbmmanage.
También permite almacenar los usuarios y contraseñas en (con los
módulos apropiados) en:
✔ Servidores LDAP
✔ Servidores de bases de datos (Oracle, MySQL, Postgres, etc.).
Configuración para realizar una autenticación básica por usuario y
contraseña.
 Crear un fichero en el servidor donde se almacenarán los nombres de
usuarios y contraseñas utilizando el comando htpasswd.
Configurar las directivas en el recurso que se quiera proteger, incluyéndolas
en una sección (<Directory>, <File>, …)
Las principales directivas de configuración son;
➢ AuthUserFile
Sintaxis: AuthUserFile <fichero>
Permite especificar el nombre del fichero con los nombres de usuarios y
contraseñas
Se modifica utilizando el comando htpasswd
➢ AuthType
Sintaxis: AuthType Basic|Digest
Define el sistema de autentificación utilizado.
Puede ser Basic o Digest.
➢ AuthName
✔ Sintaxis: AuthName <nombre>
Define un nombre para la zona protegida.
Una vez que un usuario introduzca unas credenciales válidas para esta zona,
cualquier otro recurso dentro de esta zona podrá ser accedido con las
mismas credenciales.
Este nombre aparecerá en la ventana de autentificación donde el usuario
tiene que introducir su nombre de usuario y contraseña.
➢Require
✔ Sintaxis:
✗ Require user usuario1 [...usuarioN]
✗ Require validuser
Especifica qué usuarios y/o grupos de los que se autentiquen correctamente
tendrán acceso al recurso.
Para referirse a todos los usuarios se podrá emplear la cadena validuser.
8 Configuración de módulos
Apache es un servidor modular. Esto supone que en el núcleo del servidor
sólo está incluida la funcionalidad más básica.
Las características extendidas están disponibles a través de módulos que
se pueden cargar en Apache.
Un módulo es una manera de agrupar ciertas funcionalidades del servidor.
Una de las principales razones de emplear módulos en Apache, es que no
toda instalación requiere de las mismas funcionalidades. Si fueran incluidas
todas las funcionalidades posibles en una versión única de Apache, sería
sumamente pesado en cuanto a requerimientos de memoria y espacio en
disco.
Existen múltiples módulos de apache que ofrecen múltiples funcionalidades
✔ http://modules.apache.org/
✔ http://httpd.apache.org/docs/2.2/mod/
Cada módulo ofrece un conjunto de directivas para configurar las
funcionalidades que ofrece.
Ejemplos
 mod_access: Permite control de acceso basado en
diferentes características (hostname, IP, tipo de cliente...).
Proporciona las directivas Allow, Deny, Order.
 mod_alias: Permite el mapeo entre URL's y directorios en
el sistema de ficheros.
Proporciona las directivas Alias, AliasMatch, Redirect,
RedirectMatch, RedirectPermanent, RedirectTemp,
ScriptAlias, ScriptAliasMatch.
 mod_auth: ✗ Permite autenticación de usuarios usando
ficheros de texto.
Proporciona las directivas AuthAuthoritative,
AuthGroupFile, AuthUserFile.
Existen dos tipos de módulos
 Los que se compilan de forma "estática" cada vez que se
compila Apache2.
 Los que se cargan dinámicamente. Esto permite que Apache2
cambie dinámicamente los módulos cada vez que se inicia, sin
necesidad de recompilar todo el programa de nuevo. Esta
opción se denomina DSO o Dynamic Shared Object (Objeto
Compartido Dinámico) y los archivos correspondientes a estos
módulos tienen extensión .so.
De forma predeterminada, durante la compilación se incluye un juego básico
de módulos en el servidor.
 Si el servidor se compila para que use módulos cargables
dinámicamente (DSO), los módulos se podrán compilar por separado y
se podrán añadir posteriormente usando la directiva LoadModule.
 En caso contrario, habrá que recompilar Apache para añadir o quitar
módulos.
 Debian/Ubuntu compila Apache2 para que permita la carga
dinámica de módulos.
Es posible instalar módulos adicionales usando apt-get.
Las directivas específicas de los módulos se incluyen dentro de la directiva
contenedora <IfModule nombremodulo> </IfModule>
8.1 Configuración de módulos
8.1.1Directivas
 Load module
 Indican al servidor los módulos opcionales y no compilados en su
interior que deben incluirse para proporcionar más opciones de
funcionamiento.
 Se pueden utilizar tantas directivas LoadModule como módulos se
quieran cargar.
LoadModule alias_module /usr/lib/apache2/modules/mod_alias.so
9. Ficheros de configuración personalizada de
directorios (.htaccess)
Para permitir una configuración personalizada de cada directorio apache
permite incluir ficheros especiales dentro del árbol de directorios del sitio web.
Estos archivos suelen denominarse .htaccess (ese nombre no es obligatorio,
y puede modificarse cambiando el valor en la directiva AccessFileName).
Las directivas presentes en los ficheros .htaccess tendrán efecto sobre el
directorio en el que se encuentre el fichero y todos sus subdirectorios.
Cada vez que se produce una petición el servidor busca los archivos que
tengan alguno de los nombres especificados en AccessFileName en el path
del documento que ha solicitado el visitante Como estos ficheros se leen en
cada petición, los cambios establecidos se aplicarán inmediatamente.
Para que que tengan efecto tiene que estar habilitados en servidor con la
directiva AllowOverride.
9.1 AccessFileName.
Indica los nombres de los ficheros donde se pueden colocar las directivas
que describen el acceso a un directorio determinado.
Estos ficheros pueden pertenecer al directorio correspondiente o a los
directorios que forman su path.
Siempre se utilizará el primero de los especificados que aparezca en cada
uno de los directorios de la jerarquía.
Por defecto el valor de esta directiva se refiere a un fichero con nombre
.htaccess.
✔ Ejemplo:
✗ Para acceder al documento /var/www/html/manual/index.html se leerán
en orden los siguientes ficheros:
/.htaccess,
/var/.htaccess,
/var/www/.htaccess,
/var/www/html/.htaccess
/var/www/html/manual/.htaccess
De los que existan se tomarán las restricciones.
AccessFileName .htaccess
9.2. AllowOverride
Indica que directivas presentes en un fichero especificado en
AccessFileName sobrescriben el valor de las encontradas en el fichero de
configuración principal.
✔ Los valores que puede tomar son:
All y None: Indican que se sobrescriban todas las directivas o que no se
sobrescriba ninguna.
Options: Permite que se sobrescriba la directiva Options.
Indexes: Permite que se sobrescriban todas las directivas relacionadas con
la indexación de los directorios (Ej. AddDescription, AddIcon,
AddIconByEncoding, AddIconByType, DefaultIcon, DirectoryIndex,
FancyIndexing, HeaderName, IndexIgnore, IndexOptions,
ReadmeName, etc.)
Limit: Permite la sobrescritura de directivas que controlan el acceso por
máquina (Order, Allow y Deny).
AuthConfig: Permite el uso de directivas que controlan el acceso por
autenticación
(Ej. AuthDBMGroupFile, AuthDBMUserFile, AuthGroupFile,
AuthName, AuthType, AuthUserFile, Require, etc.).
FileInfo: Permite la sobrescritura de las directivas que controlan el tipo de
documentos (Ej. AddEncoding, AddLanguage, AddType, DefaultType,
ErrorDocument, LanguagePriority, etc.).

Más contenido relacionado

Similar a Contenidos.pdf

Similar a Contenidos.pdf (20)

Unidad_2
Unidad_2Unidad_2
Unidad_2
 
Servidor web
Servidor webServidor web
Servidor web
 
Linux y-windows
Linux y-windowsLinux y-windows
Linux y-windows
 
Guia LAPP
Guia LAPPGuia LAPP
Guia LAPP
 
SEVIDORES WEB 1 DE MARZO.docx
SEVIDORES WEB 1  DE MARZO.docxSEVIDORES WEB 1  DE MARZO.docx
SEVIDORES WEB 1 DE MARZO.docx
 
Reporte servicios web
Reporte servicios webReporte servicios web
Reporte servicios web
 
Introducción a Tomcat
Introducción a TomcatIntroducción a Tomcat
Introducción a Tomcat
 
Base de datos ii apache
Base de datos ii apacheBase de datos ii apache
Base de datos ii apache
 
Presentacion 3 archivos
Presentacion 3 archivosPresentacion 3 archivos
Presentacion 3 archivos
 
Server 2008
Server 2008Server 2008
Server 2008
 
dotCMS: un Web CMS Open Source de perfil empresarial
dotCMS: un Web CMS Open Source de perfil empresarialdotCMS: un Web CMS Open Source de perfil empresarial
dotCMS: un Web CMS Open Source de perfil empresarial
 
Granja de servidores publicacion
Granja de servidores   publicacionGranja de servidores   publicacion
Granja de servidores publicacion
 
Cuestionario sobre servidores
Cuestionario sobre servidoresCuestionario sobre servidores
Cuestionario sobre servidores
 
Servidorweb casero
Servidorweb caseroServidorweb casero
Servidorweb casero
 
Sq llite
Sq lliteSq llite
Sq llite
 
Preguntas clase 07
Preguntas clase 07Preguntas clase 07
Preguntas clase 07
 
Laboratorio Nº 9.1.pdf
Laboratorio Nº 9.1.pdfLaboratorio Nº 9.1.pdf
Laboratorio Nº 9.1.pdf
 
Actividad n 5.3 http ftp
Actividad n 5.3 http ftpActividad n 5.3 http ftp
Actividad n 5.3 http ftp
 
Actividad n 5.3 http ftp
Actividad n 5.3 http ftpActividad n 5.3 http ftp
Actividad n 5.3 http ftp
 
Fundamentos de servicios informáticos
Fundamentos de servicios informáticosFundamentos de servicios informáticos
Fundamentos de servicios informáticos
 

Último

Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIACarlos Campaña Montenegro
 
GLOSAS Y PALABRAS ACTO 2 DE ABRIL 2024.docx
GLOSAS  Y PALABRAS ACTO 2 DE ABRIL 2024.docxGLOSAS  Y PALABRAS ACTO 2 DE ABRIL 2024.docx
GLOSAS Y PALABRAS ACTO 2 DE ABRIL 2024.docxAleParedes11
 
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxTIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxlclcarmen
 
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFAROJosé Luis Palma
 
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSjlorentemartos
 
Manual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfManual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfMaryRotonda1
 
RETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxRETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxAna Fernandez
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PCCesarFernandez937857
 
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptx
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptxPRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptx
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptxinformacionasapespu
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arteRaquel Martín Contreras
 
EXPECTATIVAS vs PERSPECTIVA en la vida.
EXPECTATIVAS vs PERSPECTIVA  en la vida.EXPECTATIVAS vs PERSPECTIVA  en la vida.
EXPECTATIVAS vs PERSPECTIVA en la vida.DaluiMonasterio
 
Informatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosInformatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosCesarFernandez937857
 
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Lourdes Feria
 
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.pptDE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.pptELENA GALLARDO PAÚLS
 
programa dia de las madres 10 de mayo para evento
programa dia de las madres 10 de mayo  para eventoprograma dia de las madres 10 de mayo  para evento
programa dia de las madres 10 de mayo para eventoDiegoMtsS
 
Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.José Luis Palma
 

Último (20)

Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
 
GLOSAS Y PALABRAS ACTO 2 DE ABRIL 2024.docx
GLOSAS  Y PALABRAS ACTO 2 DE ABRIL 2024.docxGLOSAS  Y PALABRAS ACTO 2 DE ABRIL 2024.docx
GLOSAS Y PALABRAS ACTO 2 DE ABRIL 2024.docx
 
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxTIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
 
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
 
Defendamos la verdad. La defensa es importante.
Defendamos la verdad. La defensa es importante.Defendamos la verdad. La defensa es importante.
Defendamos la verdad. La defensa es importante.
 
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
 
Manual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfManual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdf
 
RETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxRETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docx
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PC
 
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptx
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptxPRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptx
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptx
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arte
 
EXPECTATIVAS vs PERSPECTIVA en la vida.
EXPECTATIVAS vs PERSPECTIVA  en la vida.EXPECTATIVAS vs PERSPECTIVA  en la vida.
EXPECTATIVAS vs PERSPECTIVA en la vida.
 
Informatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosInformatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos Básicos
 
Sesión de clase: Defendamos la verdad.pdf
Sesión de clase: Defendamos la verdad.pdfSesión de clase: Defendamos la verdad.pdf
Sesión de clase: Defendamos la verdad.pdf
 
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...
 
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.pptDE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
 
programa dia de las madres 10 de mayo para evento
programa dia de las madres 10 de mayo  para eventoprograma dia de las madres 10 de mayo  para evento
programa dia de las madres 10 de mayo para evento
 
Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.
 

Contenidos.pdf

  • 2. 1.Introducción Apache (www.apache.org) es una fundación que proporciona soporte a la comunidad con un numeroso conjunto de proyectos “open source”. Es una comunidad de desarrolladores y usuarios caracterizados por ser un grupo colaborativo, con el deseo de crear software de alta calidad. Se pueden encontrar proyectos como: HTTP Server, Ant, Cocoon, DB, Excalibur, Forrest, Geronimo, Jakarta, SpamAssassin, Struts, Web Services, XML, etc. Uno de los principales proyectos es el HTTP Server (http://httpd.apache.org), un servidor web “open source”. En la actualidad es el servidor web más popular en Internet. 2.Versiones Existen tres versiones de apache  Versión 2.2  Versión 2.0  Versión 1.3 Las tres versiones se están en desarrollo activo. La versión 1.x está muy extendida, y aunque es posible migrar de Apache 1.x hacia Apache 2.x , no muchas instituciones o empresas están dispuestas a migrar toda su infraestructura de producción a una versión mayor, optando mejor por realizar actualizaciones graduales a su versión instalada, razón por la que Apache 1.x es desarrollado activamente aún con la presencia de Apache 2. La configuración de la versión 2.2 tiene cambios significativos con respecto a las versiones 1.3 y 2.0. 3.Características Es un servidor Web potente, flexible y ajustado al HTTP/1.1 Es altamente configurable y extensible. Puede ser ajustado a través de la definición de módulos empleando su propio
  • 3. API (Aplication Programming Interface). Provee todo su código fuente de forma libre y se distribuye bajo una licencia no restrictiva. Se ejecuta en diversos sistemas operativos: Windows 9x/NT, Macintosh, Novell NetWare, OS/2, Linux y la mayoría de los Unix existentes: IRIX, Solaris, HP UX, SCO, FreeBSD, NetBSD, AIX, Digital Unix, etc. Se desarrolla de forma acelerada estimulando la retroalimentación desde sus usuarios a través de nuevas ideas, reportes de errores y parches. 4.Servidores principal y servidores virtuales En Apache es posible diferenciar entre  Servidor principal: Servidor que atiende las peticiones si no se configuran servidores virtuales. Su configuración se define a nivel general en los ficheros de configuración.  Servidores virtuales: Apache soporta servir diversos sitios web con un sólo servidor. Para ello proporciona facilidades de creación de servidores virtuales en función de direcciones IP, puertos y nombres de dominio. Si se activan los servidores virtuales por nombre para una ip (NameVirtualHost) el servidor principal no tiene efecto para esa IP. La configuración de cada servidor virtual se realiza utilizado la directiva <VirtualHost> … <VirtualHost> 5.Instalación del servidor Instalación del servidor usado apt (ejecutarlo con privilegios de root) apt-get install apache2 Se instala la versión 2.2 con los principales ('core') módulos habilitados (apache2-common) 7. Ficheros y directorios de configuración  Introducción La configuración de apache se basa en directivas que escriben en ficheros de texto. Para que los cambios realizados en los ficheros de configuración tengan efecto hay que reiniciar el servidor
  • 4.  Directorio que contiene todos los ficheros de configuración  En las distribuciones de Linux basadas en debian todos los ficheros de configuración de Apache2 se encuentran en el directorio /etc/apache2.  En Windows las configuración se encuentra en C:Program Files (x86)Apache Software FoundationApache2.2conf  En la mayoría de los sistemas se utiliza un fichero denominado httpd.conf en el que se almacenan todas las directivas de configuración.  En las distribuciones basadas en Debian se suele utilizar como fichero principal de configuración apache2.conf,  Ficheros de Configuración El fichero de configuración se divide en tres secciones (las directivas pueden aparecer mezcladas y desordenadas esta organización es a nivel puramente organizativo, no es una división estricta)  Sección 1: Directivas globales: Define los aspectos globales del servidor. Por ejemplo: el número máximo de clientes concurrentes, los timeouts, el directorio raíz del servidor, etc.  Sección 2: Directivas de funcionamiento del servidor principal: Agrupa las directivas que definen el comportamiento del servidor principal. También definen el comportamiento por defecto de todos los servidores virtuales que se configuren más adelante (incluido un posible servidor virtual por defecto)  Sección 3: Directivas de configuración de los servidores virtuales: Agrupa las directivas relacionadas con los servidores virtuales que se definan.  Directivas Como se ha explicado la configuración del servidor queda determinada por un conjunto de directivas que se escriben en los ficheros de configuración. Dependiendo del entorno en el que se escriban determinadas directivas de configuración, éstas afectarán al comportamiento del servidor en general, sólo a un directorio de la raíz de documentos, a un sitio virtual,… Aunque la mayoría de las directivas pueden aparecer en cualquier sección hay algunas que no tienen sentido en determinados contextos.
  • 5. Existen directivas (Ej.:<Directory></Directory> , <Files> </Files>, …) que actúan como contenedores de otras directivas (secciones) y permiten configurar ámbitos del servidor concretos. d.1. Directivas globales de funcionamiento Son directivas que afectan al comportamiento global de Apache o ServerRoot: Especifica el directorio raíz del servidor donde se encuentran los: ✗ Ficheros de configuración ✗ Ficheros de logs ✗ Ficheros de error No añadir / al final del directorio o Listen: Especifica en qué Ip y puertos se atenderán las peticiones. La especificación de la dirección IP es opcional y si no se indica, o bien es un asterisco, el servidor escuchará las peticiones de todos los interfaces de red existentes en el servidor. Pueden utilizarse múltiples directivas Listen para especificar distintos interfaces de red y/o puertos. d. 2 Directivas de configuración del servidor/servidores virtuales: Permiten definir el comportamiento del servidor principal por defecto y de los servidores virtuales. Las directivas que no se incluyan dentro de la directiva <VirtualHost> de un servidor virtual concreto se aplican al servidor principal y a todos los servidores virtuales donde no se especifiquen con mas detalle (dentro de la sección definida por <VirtualHost>) . d.2.1. DocumentRoot: Directorio raíz desde donde se sirven las paginas web del servidor. Lo que esa “por encima” en árbol de directorios no es visible por ningún cliente ( a no se que se configuren Alias). Si el servidor recibe una petición (Ej.: http/localhost) buscara en dicho directorio. d.2.2 Directivas de sección (contenedores)  <Directory directorio/s>… </Directory>: Las directivas encapsuladas dentro de <Directory> se aplican al directorio especificado y a todos sus subdirectorios excepto que existan directivas mas especificas para alguno de los subdirectorios.
  • 6. El directorio en el que se hacen efectivas estas directivas debe expresarse como una ruta absoluta dentro del sistema de ficheros. ✔ Ejemplos <Directory /> Options FollowSymLinks </Directory> Indica que las directivas se aplican a todos los directorios. <Directory /var/www/> Options Indexes FollowSymLinks AllowOverride None Order allow,deny Allow from all </Directory> Indica que las directivas se aplican a al directorio /var/www/ y sus subdirectorios.  <Files fichero/s > … </Files> Las directivas encapsuladas dentro <Files> se aplican a los ficheros especificados. d.2.3. Opciones sobre directorios. Options Permite indicar que características están disponibles cuando se sirve el directorio correspondiente al cliente. Sintaxis: Options [+|-]<opción> [+|-]<opción> ... Ejemplo <Directory /var/www/> Options Indexes FollowSymLinks AllowOverride None </Directory> Estas características son:  FollowSymLinks: Indica que se pueden seguir los enlaces simbólicos presenten el directorio.  ExecCGI: Indica que se pueden ejecutar los scripts de tipo CGI.  Includes: Indica que se permita el mecanismo SSI (Server Side Include).  Indexes: Indica que si el cliente solicita un directorio donde no exista ninguno de los ficheros especificados en DirectoryIndex se le devuelva una lista con formato del contenido del directorio.
  • 7.  SymLinksIfOwnerMatch Indica que se sigan los enlaces simbólicos solo si el fichero o directorio enlazado posee el mismo dueño que el enlace.  IncludeNoExec: Es similar a Includes con la diferencia de que no se permiten los comandos SSI include y exec para programas CGI.  MultiViews: Indica que se “negocie'' entre el servidor y el cliente el documento a mostrar cuando existen varias posibilidades. Por ejemplo, si se solicita el documento /images/map y existe el directorio images con la opción habilitada pero no existe /images/map, entonces el servidor busca todos los documentos con nombre map.* y “negocia'' con el cliente cual de estos, de existir alguno, retorna al cliente.  None: Ninguna funcionalidad está activa.  All: Incluye todas las opciones con excepción de MultiViews. Este es el valor por defecto. Cuando varias directivas Option son aplicables a un directorio se toma la más específica, o sea no se mezclan salvo que estas se indiquen precedidas por un + o un -, en cuyo caso se añade la opción o se elimina respectivamente. Por ejemplo en la declaración siguiente: <Directory /var/www/html/documents> Options Indexes FollowSymLinks </Directory> <Directory /var/www/html/documents/linux> Options Includes ExecCGI </Directory> Las opciones aplicadas al directorio /var/www/html/documents/Linux son solamente: Includes y ExecCGI. <Directory /var/www/html/documents> Options Indexes FollowSymLinks </Directory> <Directory /var/www/html/documents/linux> Options +Includes +ExecCGI -FollowSymLinks </Directory> Las opciones aplicadas al directorio /var/www/html/documents/Linux serían: Indexes, Includes y ExecCGI.
  • 8. d.2.4. Directorios Virtuales Los directorios virtuales son directorios que no cuelgan del directorio raíz (DocumentRoot) del servidor Se utiliza la directiva Alias que permite hacer alias para ficheros o directorios a través de un URL. Tiene que estar activo el modulo mod_alias (por defecto lo está en Debian/Ubuntu) De esta forma se puede acceder a recursos fuera del directorio raíz ( DocumentRoot). Sintaxis es la siguiente: Alias url directorio|fichero. d.2.5.ErrorLog: Especifica el fichero donde se escriben las trazas de error del servidor. Sintaxis: ErrorLog <fichero> | <tubería> | syslog[:facilidad] En Debian/Ubuntu por defecto por defecto /var/log/apache2/error.log Si el argumento de la directiva comienza con un carácter “|'' expresará que las envidas por una tubería al comando siguiente. Se puede expresar que se use el servicio syslog. d.2.6 LogLevel: Indica a partir de que prioridad se guardan las trazas Sintaxis: LogLevel <prioridad> Las prioridades son las mismas definidas en el servicio syslog: emerg: Sólo se registran las emergencias crit: Sólo se registran los problemas críticos. alert: Se registra cualquier situación que genera una alerta. error: Todos los errores son registrados. Este es el nivel predeterminado. warn: Todos los errores y avisos son registrados notice: Cualquier situación significativa es registrada info: Se registra toda la información relativa al servidor. debug: Los mensajes de depuración son registrados. Siempre una prioridad incluye a las superiores. Por defecto en Debian/Ubuntu , se indica la prioridad warn. d.2.7 DirectoryIndex: Ficheros a servir por defecto :
  • 9. Especifica el fichero que se servirá por defecto para cada directorio en el caso de que no se especifique ninguno en la URL. Por defecto es index.html. Si por ejemplo se pone en el navegador: www.instituto.es el servidor por defecto enviará www.instituto.es/index.html. Se puede especificar más de un fichero y el orden con el que se especifica dicho nombre determinará la prioridad para decidir cuál se sirve. Cuando no se encuentra ninguna de las páginas de inicio especificadas, Apache crea de manera automática la página de examen de directorio, si se encuentra activa la opción Indexes. El examen de directorios consiste en un listado de las carpetas ficheros del directorio pedido.  Control de acceso a páginas del servidor e.1.Control de acceso por IP Es posible definir que IPs pueden acceder a un recurso del servidor utilizando las directivas que se especifican a continuación dentro de secciones Directory, File, Location, ficheros .htaccess, etc. Cuando se realiza la conexión desde la máquina el servidor comprueba si el acceso al recurso está autorizado para es IP. Si está autorizada devuelve el recurso solicitado y si no está autorizada devuelve un código de error (Acceso no autorizado). Allow: Permite especificar quién está autorizado a acceder al recurso.Se pueden especificar direcciones IP, nombres de máquina, fragmentos del nombre o dirección e incluso por variables de la petición. All para indicar todos los clientes. ✔ Ejemplos Allow from pruebas.instituto.es Allow from 147.156.222.34 147.156.222.65 Deny: Permite especificar quién no está autorizado para acceder al recurso. Mismas opciones que con Allow. ✔ Ejemplos Deny from seguridad.instituto.es Deny from 147.156.222.34 147.156.222.65 Deny from all
  • 10. Order: Permite afinar el funcionamiento de las directivas Allow y Deny. Dos opciones:  Order Allow, Deny El acceso esta denegado por defecto. Primero se evalúan las directivas Allow y luego las Deny Sólo podrán entrar los clientes que cumplan las especificaciones de Allow y no cumplan las de Deny.  Order Deny, Allow El acceso está permitido por defecto. Primero se evalúan las directivas Deny y luego las Allow. El acceso está permitido por defecto y sólo podrán entrar los clientes que no cumplan las especificaciones de Deny o cumplan las de Allow. e.2 Control básico de acceso por usuario y contraseña (autenticación) Apache puede autorizar el acceso a los recursos en función de usuario que los solicite. Para ello realiza un proceso de autenticación. Cuando un cliente solicita una URL que requiere autenticación, el servidor responde con un mensaje de autenticación requerida. El navegador mostrará un cuadro de diálogo para que se introduzca el nombre de usuario y contraseña. El servidor chequea si las credenciales son correctas Si lo son devuelve el recurso solicitado Si no lo son o el usuario no tiene acceso al recurso devuelve un código de error (Acceso no autorizado). Apache soporta varios modos de autenticación: Básica (mod_auth) La contraseña es enviada por el cliente en texto plano. Para gestionarlas se utiliza el programa htpasswd. Digest (mod_auth_digest) La contraseña se envía cifrada por el cliente. Para gestionarlas se utiliza el programa htdigest. DBM (mod_auth_dbm). Las contraseñas se almacenan en una base de datos en ficheros BM. Para gestionarlas se utiliza el programa dbmmanage. También permite almacenar los usuarios y contraseñas en (con los módulos apropiados) en: ✔ Servidores LDAP ✔ Servidores de bases de datos (Oracle, MySQL, Postgres, etc.).
  • 11. Configuración para realizar una autenticación básica por usuario y contraseña.  Crear un fichero en el servidor donde se almacenarán los nombres de usuarios y contraseñas utilizando el comando htpasswd. Configurar las directivas en el recurso que se quiera proteger, incluyéndolas en una sección (<Directory>, <File>, …) Las principales directivas de configuración son; ➢ AuthUserFile Sintaxis: AuthUserFile <fichero> Permite especificar el nombre del fichero con los nombres de usuarios y contraseñas Se modifica utilizando el comando htpasswd ➢ AuthType Sintaxis: AuthType Basic|Digest Define el sistema de autentificación utilizado. Puede ser Basic o Digest. ➢ AuthName ✔ Sintaxis: AuthName <nombre> Define un nombre para la zona protegida. Una vez que un usuario introduzca unas credenciales válidas para esta zona, cualquier otro recurso dentro de esta zona podrá ser accedido con las mismas credenciales. Este nombre aparecerá en la ventana de autentificación donde el usuario tiene que introducir su nombre de usuario y contraseña.
  • 12. ➢Require ✔ Sintaxis: ✗ Require user usuario1 [...usuarioN] ✗ Require validuser Especifica qué usuarios y/o grupos de los que se autentiquen correctamente tendrán acceso al recurso. Para referirse a todos los usuarios se podrá emplear la cadena validuser. 8 Configuración de módulos Apache es un servidor modular. Esto supone que en el núcleo del servidor sólo está incluida la funcionalidad más básica. Las características extendidas están disponibles a través de módulos que se pueden cargar en Apache. Un módulo es una manera de agrupar ciertas funcionalidades del servidor. Una de las principales razones de emplear módulos en Apache, es que no toda instalación requiere de las mismas funcionalidades. Si fueran incluidas todas las funcionalidades posibles en una versión única de Apache, sería sumamente pesado en cuanto a requerimientos de memoria y espacio en disco. Existen múltiples módulos de apache que ofrecen múltiples funcionalidades ✔ http://modules.apache.org/ ✔ http://httpd.apache.org/docs/2.2/mod/ Cada módulo ofrece un conjunto de directivas para configurar las funcionalidades que ofrece. Ejemplos  mod_access: Permite control de acceso basado en diferentes características (hostname, IP, tipo de cliente...). Proporciona las directivas Allow, Deny, Order.  mod_alias: Permite el mapeo entre URL's y directorios en el sistema de ficheros. Proporciona las directivas Alias, AliasMatch, Redirect, RedirectMatch, RedirectPermanent, RedirectTemp, ScriptAlias, ScriptAliasMatch.  mod_auth: ✗ Permite autenticación de usuarios usando ficheros de texto. Proporciona las directivas AuthAuthoritative, AuthGroupFile, AuthUserFile.
  • 13. Existen dos tipos de módulos  Los que se compilan de forma "estática" cada vez que se compila Apache2.  Los que se cargan dinámicamente. Esto permite que Apache2 cambie dinámicamente los módulos cada vez que se inicia, sin necesidad de recompilar todo el programa de nuevo. Esta opción se denomina DSO o Dynamic Shared Object (Objeto Compartido Dinámico) y los archivos correspondientes a estos módulos tienen extensión .so. De forma predeterminada, durante la compilación se incluye un juego básico de módulos en el servidor.  Si el servidor se compila para que use módulos cargables dinámicamente (DSO), los módulos se podrán compilar por separado y se podrán añadir posteriormente usando la directiva LoadModule.  En caso contrario, habrá que recompilar Apache para añadir o quitar módulos.  Debian/Ubuntu compila Apache2 para que permita la carga dinámica de módulos. Es posible instalar módulos adicionales usando apt-get. Las directivas específicas de los módulos se incluyen dentro de la directiva contenedora <IfModule nombremodulo> </IfModule> 8.1 Configuración de módulos 8.1.1Directivas  Load module  Indican al servidor los módulos opcionales y no compilados en su interior que deben incluirse para proporcionar más opciones de funcionamiento.  Se pueden utilizar tantas directivas LoadModule como módulos se quieran cargar. LoadModule alias_module /usr/lib/apache2/modules/mod_alias.so 9. Ficheros de configuración personalizada de directorios (.htaccess) Para permitir una configuración personalizada de cada directorio apache permite incluir ficheros especiales dentro del árbol de directorios del sitio web.
  • 14. Estos archivos suelen denominarse .htaccess (ese nombre no es obligatorio, y puede modificarse cambiando el valor en la directiva AccessFileName). Las directivas presentes en los ficheros .htaccess tendrán efecto sobre el directorio en el que se encuentre el fichero y todos sus subdirectorios. Cada vez que se produce una petición el servidor busca los archivos que tengan alguno de los nombres especificados en AccessFileName en el path del documento que ha solicitado el visitante Como estos ficheros se leen en cada petición, los cambios establecidos se aplicarán inmediatamente. Para que que tengan efecto tiene que estar habilitados en servidor con la directiva AllowOverride. 9.1 AccessFileName. Indica los nombres de los ficheros donde se pueden colocar las directivas que describen el acceso a un directorio determinado. Estos ficheros pueden pertenecer al directorio correspondiente o a los directorios que forman su path. Siempre se utilizará el primero de los especificados que aparezca en cada uno de los directorios de la jerarquía. Por defecto el valor de esta directiva se refiere a un fichero con nombre .htaccess. ✔ Ejemplo: ✗ Para acceder al documento /var/www/html/manual/index.html se leerán en orden los siguientes ficheros: /.htaccess, /var/.htaccess, /var/www/.htaccess, /var/www/html/.htaccess /var/www/html/manual/.htaccess De los que existan se tomarán las restricciones. AccessFileName .htaccess 9.2. AllowOverride Indica que directivas presentes en un fichero especificado en AccessFileName sobrescriben el valor de las encontradas en el fichero de configuración principal. ✔ Los valores que puede tomar son:
  • 15. All y None: Indican que se sobrescriban todas las directivas o que no se sobrescriba ninguna. Options: Permite que se sobrescriba la directiva Options. Indexes: Permite que se sobrescriban todas las directivas relacionadas con la indexación de los directorios (Ej. AddDescription, AddIcon, AddIconByEncoding, AddIconByType, DefaultIcon, DirectoryIndex, FancyIndexing, HeaderName, IndexIgnore, IndexOptions, ReadmeName, etc.) Limit: Permite la sobrescritura de directivas que controlan el acceso por máquina (Order, Allow y Deny). AuthConfig: Permite el uso de directivas que controlan el acceso por autenticación (Ej. AuthDBMGroupFile, AuthDBMUserFile, AuthGroupFile, AuthName, AuthType, AuthUserFile, Require, etc.). FileInfo: Permite la sobrescritura de las directivas que controlan el tipo de documentos (Ej. AddEncoding, AddLanguage, AddType, DefaultType, ErrorDocument, LanguagePriority, etc.).