Está en la página 1de 13

Administracin y Seguridad en Linux

Capitulo N 15
TEMAS

Servicio HTTP (Apache)

OBJETIVOS
Al finalizar el captulo el alumno podr

Instalar apache

Aplica directivas de autenticacin y seguridad

Reconoce y configura los hosts virtuales

Reconoce y configura soporte SSL

RECURSOS

Una Computadora Personal

Material Educativo

Servidor WEB Apache


1. Instalacin del servidor Apache
|

Administracin y Seguridad en Linux


2

Primero verificamos que el paquete correspondiente est instalado

En este caso ya est instalado el paquete httpd, si no devolviera ningn


resultado, eso quiere decir que no est instalado si fuera el caso se instala
con el siguiente comando:

2. Parada/Reinicio

3. Configuracin
El
archivo
de
configuracin
principal
se
encuentra
/etc/httpd/conf/httpd.conf controla los parmetros generales
servidor web.

en
del

Administracin y Seguridad en Linux


3

La configuracin de los diferentes mdulos estn en la ubicacin


/etc/httpd/conf.d/, los mdulos estn presentes en /etc/httpd/modules/
Los registros (logs) estn referenciados al directorio logs que es un acceso
directo a /var/log/httpd
El directorio run contiene el archivo httpd.pid, cuyo contenido es el ID del
proceso padre httpd

4. Directivas generales
httpd.conf est compuesto por tres bloques fundamentales:
-

Directivas generales: Todos los parmetros que se establecen en


esta seccin son globales para el funcionamiento del servidor, por lo
que no admiten estar dentro de ninguna directiva

Directivas de funcionamiento

Hosts virtuales

Directivas generales:
En esta seccin del archivo de configuracin de httpd encontramos algunos
parmetros importantes:
-

ServerTokens: Delimita la informacin que mostrara el servidor sobre los


componentes que estn ejecutando. Sus posibles valores son: OS,
Minimal, ProductOnly y Full
|

Administracin y Seguridad en Linux


4
-

ServerRoot: Ubicacin de los archivos de configuracin

PidFile: Archivo cuyo contenido ser el ID del proceso padre httpd

TimeOut: Tiempo mximo de espera de una solicitud

KeepAlive: Utilizar conexiones persistentes

MaxKeepAliveRequest: Nmero mximo de usuarios concurrentes si


KeepAlive est en on

KeepAliveTimeout: Tiempo de espera en segundos entre peticiones del


usuario

Modulos Multiproceso (MPM): son los responsables de iniciar los


procesos del servidor y de servir las solicitudes va procesos hijos

MPM prefork: Cada proceso hijo tiene solamente un hilo donde cada
hijo puede hacerse cargo de una solicitud

MPM worker: cada proceso hijo puede tener un nmero determinado


de hilos, donde cada hilo puede hacerse cargo de una solicitud

Listen: Puertos en los cuales escucha el servidor apache, por defecto el


puerto es 80

LoadModule: Directiva que sirve para cargar modulos que incluyen


distintas funcionalidades. La sintaxis es:
LoadModule nombre_modulo ubicacin_fichero

Include: Permite que se incluyan otro archivos de configuracin

User: Nombre del usuario del proceso

Group: Nombre de grupo del proceso

Directivas de funcionamiento:
-

ServerAdmin: Email del webmaster

ServerName: Nombre del Servidor

UseCanonicalName: Si est en on, apache va responder utilizando la


informacin de ServerName y Port, y no la opcin mandada por el cliente
ejemplo: un http://192.168.1.250 se transforma en http://dominio.com
|

Administracin y Seguridad en Linux


5
-

DocumentRoot: Ubicacin de las pginas web a publicar (html,php,etc)

Directory: Crea un contenedor que se utiliza para cercar un grupo de


directrices de configuracin que solo se aplican a un directorio y sus
subdirectorios.
Podemos encontrar la siguiente informacin

Options FollowSymLinks: El servidor sigue los vnculos simblicos,


otro valor para Options puede ser Indexes: si no encuentra ninguna
pgina index, se mostrara el contenido del directorio

AllowOverride None: Puede o no ignorar cualquiera de las opciones


por las declaraciones en un archivo .htaccess por defecto, no se le
permite

Order: Controla el orden en el cual las directrices allow y deny son


evaluadas
- Allow: Declara cual cliente puede acceder a un directorio
- Deny: Declara a quien se le niega el acceso.

DirectoryIndex: Pagina por defecto que entrega el servidor

AccessFileNAme: Denomina el archivo que el servidor utilizara para


informacin de control de acceso en cada directorio.

CustomLog: Ubicacin del archivo de registro de acceso y el tipo de


formato del registro

ErrorLog: Ubicacin del arhivo de registro de errores

LogLevel: Cantidad de informacin a guardar sus posibles valores son:


warm,debug,info,warn,error,crit, alert y emerg

LogFormat: Formato en el que se guardaran los registros tales como


fecha, hora o direccin IP

Administracin y Seguridad en Linux


6

Hosts virtuales
Se refiere a hacer funcionar ms de un sitio web (tales como
www.utp.edu.pe y www.cetis.edu.pe.com) en una sola mquina. Los
sitios web virtuales pueden estar "basados en direcciones IP", lo
que significa que cada sitio web tiene una direccin IP diferente, o
"basados en nombres diferentes", lo que significa que con una
sola direccin IP estn funcionando sitios web con diferentes
nombres (de dominio). El hecho de que estn funcionando en la
misma mquina fsica pasa completamente desapercibido para el
usuario que visita esos sitios web

Configuracin de Autenticacin de Usuarios

Administracin y Seguridad en Linux


7
En el siguiente ejemplo validaremos el acceso a un usuario para que se conecte a
nuestro sitio web ubicado en /var/www/html/prueba el usuario a conectarse a
este sitio deber autenticarse.
Pasos:
Crear el archivo de contraseas para apache

Configurar el servidor para que solicite una contrasea y el usuario que desea
otorgarle el permiso. Abrir el archivo de configuracin principal de apache

Probando la configuracin desde un cliente.

Permitir el acceso a un grupo de usuarios


Pasos:

Administracin y Seguridad en Linux


8

Crear un archivo que contenga el nombre de los grupos y lo usuarios

En /etc/httpd/conf/httpd.conf

Para este ejemplo solo los usuarios que pertenecen al grupo1 podrn
acceder.

Mquinas Virtuales Basadas en IP


Cada sitio web tiene una direccin IP diferente en el mismo equipo
Verificamos las IPs
|

Administracin y Seguridad en Linux


9

En la configuracin en la seccin Virtual Host

Mquinas Virtuales Basadas en Nombres


Con una sola direccin IP funcionan varios sitios web con diferentes
nombres

Administracin y Seguridad en Linux


10

Encapsulado de Servicio WEB SSL


El Modulo mod_ssl es un mdulo de seguridad para el servidor web.
Aade la caracterstica al servidor web de tener comunicaciones
encriptadas.

Administracin y Seguridad en Linux


11

Usando un servidor normal (sin SSL), las comunicaciones entre el


navegador y el servidor se dan en texto plano, lo cual puede ser
interceptado y ledo por un usuario no autorizado.
El archivo de configuracin para agregar soporte de SSL al servidor web
est ubicado en:
/etc/httpd/conf.d/ssl.conf
Para implementar un servidor web con soporte SSL se debe tener en
cuenta los siguientes paquetes:
Examinando Certificados X.509

Configuracin de SSL:
Paso I:
Verificar los paquetes necesarios para WEB-SSL
|

Administracin y Seguridad en Linux


12

Paso II:
Ubicar la ruta donde ubicaremos nuestro certificado de seguridad.
Abrimos el archivo de configuracin SSL:
/etc/httpd/conf.d/ssl.conf
Buscamos las lneas siguientes para conocer las rutas donde poner nuestro
certificado privado y publico

Laboratorio: Servidor Web


1. Configurar un servidor web con 2 interfaces de modo que las paginas
publicadas en /var/www/html/test1 sean vista a travs de la
primera interfaz por su puerto 80 y la publicacin de pginas en
/var/www/html/test2 son vistas a travs de la segunda interface en
su puerto 81(Crear subinterfaces si las PCs solo tuvieran una sola
tarjeta de red)
|

Administracin y Seguridad en Linux


13

2. Del Ejercicio 1 modificar los puertos de escucha ahora ambas


interfaces deben escuchar por el puerto 80
3. Del ejercicio 1 modificar con lo siguiente, esta vez solo desde una
interfaz de red se publicaran las 2 rutas. (Virtual host)
4. Las paginas publicadas en la ruta /var/www/html/test2 se deben
acceder autenticndose
5. Genere un par de llaves para un servidor web seguro y aplique la
respectiva configuracin para el funcionamiento