Está en la página 1de 27

UNIVERSIDAD NACIONAL DE SAN CRISTBAL DE HUAMANGA

FACULTAD DE INGENIERA DE MINAS, GEOLOGA Y CIVIL ESCUELA DE FORMACIN PROFESIONAL DE INGENIERA DE SISTEMAS

IMPLEMENTACIN DE UN FIREWALL LGICO

CURSO SEMESTRE PROFESOR FECHA INTEGRANTES

: : : : :

SEGURIDAD INFORMTICA (IS-444) 2009-II LAGOS BARZOLA, Manuel. 29/06/10 BERMUDO HEREDIA, Abel F. HINOSTROZA FERNNDEZ, Yuri RAMOS QUISPE, Rubn Yuri

AYACUCHO PER 2010

I. TITULO IMPLEMENTACIN DE UN FIREWALL LGICO II. OBJETIVOS Implementar el Firewall en Software Libre. Configurar un Firewall con iptables. Proteger el acceso al servidor de usuarios no autorizados. Restringir a los usuarios de acuerdo a las polticas de seguridad. Implementar la confidencialidad, integridad y disponibilidad mediante el Firewall. Comprobar el nivel de seguridad que ofrece un Firewall a una red conectada a internet. III. JUSTIFICACIN Un firewall es un dispositivo que filtra el trfico entre redes, como mnimo entre dos redes. El firewall puede ser un dispositivo fsico o un software sobre un sistema operativo. En general debemos verlo como una caja con dos o ms interfaces de red en la que se establecen una reglas de filtrado con las que se decide si una conexin determinada puede establecerse o no. Existen dos tipos de FIREWALL: Firewall de Filtrado de Paquetes. Firewall proxy. En Linux, la funcionalidad de Firewalls a travs de filtrado de paquetes, se lleva a cabo por medio del paquete Netfilter (que est compilado en el Kernel) e iptables (que es la parte que utiliza el usuario). Ambos tienen funciones muy semejantes, ambos requieren supervisin y alguna reconfiguracin ocasional. El firewall por proxy tiene la caracterstica que puede analizar el contenido del paquete, mientras que el de filtrado de paquete no lo hace. El Firewall por filtrado de paquetes es basado en la instruccin iptables la

cual permite aplicar varios criterios diferentes a los paquetes. Los criterios se pueden aplicar a paquetes de entrada, de salida o a paquetes que atraviesen el Firewall. Estas decisiones se pueden basar en: de que direccin vienen los paquetes, a que direccin van, por cual puerto van. Se pueden aplicar diferentes reglas, dependiendo de si son paquetes TCP, UDP o ICMP. La forma de funcionamiento de netfilter tambin permite manipular el post y preencadenamiento de los paquetes, y puede filtrar conexiones que sean nuevas, establecidas o relacionadas. Esquema de firewall tpico entre red local e internet

Esquema tpico de firewall para proteger una red local conectada a internet a travs de un Router. El firewall debe colocarse entre el Router con un nico cable) y la red local (conectado al switch o al hub de la LAN). Zona donde opera un Firewall

Los cortafuegos de filtrado de paquetes IP, suelen implementarse dentro del sistema operativo y funcionan en las capas de transporte y red, trabajando sobre la informacin de las cabeceras de los paquetes IP, es decir, que no analizarn el rea de datos3, sino que nicamente utilizan la informacin que puede obtenerse de una cabecera IP. Hay dos maneras de implementar un firewall: Poltica por defecto ACEPTAR: en principio todo lo que entra y sale por el firewall se acepta y solo se denegar lo que se diga explcitamente. Poltica por defecto DENEGAR: todo esta denegado, y solo se permitir pasar por el firewall aquellos que se permita explcitamente. Si la poltica por defecto es ACEPTAR, se facilita mucho la gestin del firewall, ya que simplemente nos tenemos que preocupar de proteger direcciones que sabemos que nos interesa. Si la poltica por defecto es DENEGAR, a no ser que lo permitamos explcitamente, el firewall se convierte en un autntico MURO infranqueable. El problema es que es mucho ms difcil preparar un firewall as. Flujo del paquete en un Firewall aquellos puertos o

ALGUNOS FIREWALLS EXISTENTES EN EL MERCADO NOMBRE Check Point Express ISA Server Firebox-1 Sun Screen IPTABLES SQUID IPTABLES Iptables es un sistema de firewall vinculado al kernel de linux que se ha extendido enormemente a partir del kernel 2.4 de este sistema operativo. Al igual que el anterior sistema ipchains, un firewall de iptables no es como un servidor que lo iniciamos o detenemos o que se pueda caer por un error de programacin Iptables est integrado con el kernel, es parte del sistema operativo. Cmo se pone en marcha? Realmente lo que se hace es aplicar reglas. Se ejecuta el comando iptables, con el que aadimos, borramos, o creamos reglas. Un firewall de iptables no es sino un simple script de shell en el que se van ejecutando las reglas de firewall. CADENAS Hay tres cadenas bsicas INPUT, OUTPUT y FORWARD: ENTRADA, SALIDA y REENVO. TABLAS Hay tres tablas ya incorporadas, cada una de las cuales contiene ciertas cadenas predefinidas. Es posible crear nuevas tablas mediante mdulos de extensin. El administrador puede crear y eliminar cadenas definidas por usuarios dentro de cualquier tabla. Inicialmente, todas las cadenas estn vacas y tienen una poltica de destino que permite que todos los paquetes pasen sin ser bloqueados o alterados EMPRESA Check Point Microsoft Watchguard Sun Software Libre Software libre

1. FILTER TABLE (Tabla de filtros)

Esta tabla es la responsable del filtrado (es decir, de bloquear o permitir que un paquete contine su camino). Todos los paquetes pasan a travs de la tabla de filtros. Contiene las siguientes cadenas predefinidas y cualquier paquete pasar por una de ellas:

INPUT chain (Cadena de ENTRADA)


Todos los paquetes destinados a este sistema atraviesan esta cadena (y por esto se la llama algunas veces

LOCAL_INPUT

ENTRADA_LOCAL)

OUTPUT chain (Cadena de SALIDA)


Todos los paquetes creados por este sistema atraviesan esta cadena (a la que tambin se la conoce como

LOCAL_OUTPUT

SALIDA_LOCAL)

FORWARD chain (Cadena de REDIRECCIN)


Todos los paquetes que meramente pasan por este sistema para ser encaminados a su destino recorren esta cadena.

2. NAT TABLE (Tabla de traduccin de direcciones de red)

Esta tabla es la responsable de configurar las reglas de reescritura de direcciones o de puertos de los paquetes. El primer paquete en cualquier conexin pasa a travs de esta tabla; los veredictos determinan como van a reescribirse todos los paquetes de esa conexin. Contiene las siguientes cadenas redefinidas: PREROUTING chain (Cadena de PRERUTEO) Los paquetes entrantes pasan a travs de esta cadena antes de que se consulte la tabla de ruteo local, principalmente para DNAT (destination-NAT o traduccin de direcciones de red de destino) POSTROUTING chain (Cadena de POSRUTEO) Los paquetes salientes pasan por esta cadena despus de haberse tomado la decisin del ruteo, principalmente para SNAT (source-NAT o traduccin de direcciones de red de origen)

OUTPUT chain (Cadena de SALIDA) Permite hacer un DNAT limitado en paquetes generados localmente
3. MANGLE TABLE (Tabla de destrozo)

Esta tabla es la responsable de ajustar las opciones de los paquetes, como por ejemplo la calidad de servicio. Todos los paquetes pasan por esta tabla. Debido a que est diseada para efectos avanzados, contiene todas las cadenas predefinidas posibles:
o

PREROUTING chain (Cadena de PRERUTEO)


Todos los paquetes que logran entrar a este sistema, antes de que el ruteo decida si el paquete debe ser reenviado (cadena de REENVO) o si tiene destino local (cadena de ENTRADA)

INPUT chain (Cadena de ENTRADA)


Todos los paquetes destinados para este sistema pasan a travs de esta cadena

FORWARD chain (Cadena de REDIRECCIN)


Todos los paquetes que exactamente pasan por este sistema pasan a travs de esta cadena OUTPUT chain (Cadena de SALIDA) Todos los paquetes creados en este sistema pasan a travs de esta cadena

POSTROUTING chain (Cadena de POSRUTEO)


Todos los paquetes que abandonan este sistema pasan a travs de esta cadena

DESTINOS DE REGLAS El destino de una regla puede ser el nombre de una cadena definida por el usuario o uno de los destinos ya incorporados ACCEPT, DROP, QUEUE, o RETURN (aceptar, descartar, encolar o retornar, respectivamente).

Caractersticas bsicas de un paquete Las caractersticas bsicas de un paquete, que van a servir para identificarlo son: Direccin de origen Indica quien es el emisor del paquete, de qu ordenador viene. Lo podremos especificar con una direccin IP, un nombre de host o una direccin de red en formato CIDR (192.168.0.0/24) o en notacin clasica (192.168.0.0/255.255.255.0). En iptables podemos especificar la direccin origen con la opcin "-s". Si en una regla omitimos la direccin origen equivale a poner 0/0 es decir cualquier direccin. Por ejemplo "-s 192.168.0.0/24" indicara cualquier direccin con origen en la red de clase C (24 bits de red) 192.168.0.0. Si delante de la direccin aadimos "!" entonces hacemos referencia a cualquier direccin salvo la especificada, es decir, que no sea esa direccin. Direccin de destino Indica a quien va dirigido el paquete, a qu ordenador via. Tambin lo podremos especificar con una direccin IP, un nombre de host o una direccin de red en formato CIDR (192.168.0.0/24) o en notacin clasica (192.168.0.0/255.255.255.0). En iptables podemos especificar la direccin destino con la opcin "-d". Si en una regla omitimos la direccin origen equivale a poner 0/0 es decir cualquier direccin. Por ejemplo "-s 192.168.0.0/24" indicara cualquier direccin con destino a la red de clase C (24 bits de red) 192.168.0.0. Si delante de la direccin aadimos "!" entonces hacemos referencia a cualquier direccin salvo la especificada, es decir, que no sea esa direccin. Protocolo Podemos establecer filtros sobre protocolos concretos, ser obligatorio si adems especificamos algn puerto. La opcin para especificar un protocolo es "-p" y los valores posibles son TDP, UDP e ICMP. El signo "!" antes del nombre del protocolo tambin se utiliza para negar.

Interfaz de entrada Podemos especificar un dispositivo de entrada de red concreto con la opcin "-i". Por ejemplo "-i eth0" indicara un paquete que proviene de eth0. Se puede usar un "!". Evidentemente no podremos usar un interfaz de entrada con una regla de salida (OUTPUT). Interfaz de salida Podemos especificar un dispositivo de salida de red concreto con la opcin "-o". Por ejemplo "-o eth0" indicara un paquete que sale por eth0. Se puede usar un "!". Evidentemente no podremos usar un interfaz de salida con una regla de entrada (INTPUT). Puerto origen Mediente la opcin "--sport" podemos especificar un puerto o un rango de puertos si los separamos por ":", por ejemplo [1024:65535] indicara desde 1025 hasta 65535. Los puertos los podemos especificar por su nmero o tambin por el nombre asociado en el fichero /etc/services. Es necesario especificar -p TCP o -p UDP para poder especificar un puerto origen. Puerto destino Mediente la opcin "--dport" podemos especificar un puerto o un rango de puertos. Las consideraciones son iguales que para el puerto origen Circuito de filtrado. Cuando un paquete llega a nuestros cortafuegos primero pasa unos filtros. En primer lugar pasamos al filtro de PREROUTING donde podemos manipular el paquete modificando sus datos de destino, por ejemplo redirigir a otra mquina o a otro puerto. Esto se conoce como DNAT (destination network address translation). Una vez que el paquete de entrada est preparado se comprueba si va dirigido al propio ordenador en cuyo caso pasa al filtro de entrada (INPUT), o bien si va dirigido a otra mquina, en cuyo caso se dirige al filtro de reenvo (FORWARD). Si el paquete iba destinado a la mquina local y ha pasado el filtro de entrada se le entrega al proceso local que lo solicit.

Si un proceso local genera un paquete que tiene que enviar a la red primero pasa por el filtro de salida (OUTPUT). El filtro de salida podra manipular el paquete modificando el destino. Si el paquete ha pasado el filtro de reenvo (FORWARD) pasara el filtro de POSTROUTING. Igualmente si el paquete local pasa el filtro de salida tambin pasa al filtro de POSTROUTING). En el filtro de POSTROUTING se pueden manipular los datos de origen de un paquete. En esta fase podemos realizar SNAT (source network address translation), es decir, manipular los datos de origen del paquete. Cada vez que tengamos que configurar un filtro tenemos que tener muy en cuenta este esquema. Caractersticas de un servidor proxy a. Almacenamiento en cache La mayora de los PROXYS tienen una cach, es decir, la capacidad de guardar en memoria (en cach) las pginas que los usuarios de la red de rea local visitan comnmente para poder proporcionarlas lo ms rpido posible. Como sabemos, el trmino "cach" se utiliza con frecuencia en informtica para referirse al espacio de almacenamiento temporal de datos (a veces tambin denominado "bfer"). Un servidor proxy con la capacidad de tener informacin en cach (neologismo que significa: poner en memoria oculta) generalmente se denomina servidor "proxy-cach". Esta caracterstica, implementada en algunos servidores proxy, se utiliza para disminuir tanto el uso de ancho de banda en Internet como el tiempo de acceso a los documentos de los usuarios. Sin embargo, para lograr esto, el proxy debe comparar los datos que almacena en la memoria cach con los datos remotos de manera regular para garantizar que los datos en cach sean vlidos.

b. Filtrado

Por otra parte, al utilizar un servidor proxy, las conexiones pueden rastrearse a Internet. Gracias a esto, las conexiones de Internet pueden filtrarse al analizar tanto las solicitudes del cliente como las respuestas del servidor. El filtrado que se realiza comparando la solicitud del cliente con una lista de solicitudes autorizadas se denomina lista blanca; y el filtrado que se realiza con una lista de sitios prohibidos se denomina lista negra. Finalmente, el anlisis de las respuestas del servidor que cumplen con una lista de criterios (como palabras clave) se denomina filtrado de contenido. Ventajas Con una nica cuenta en un proveedor de Internet se puede conectar toda la red. Se pueden seguir utilizando las direcciones IP que se estuvieran usando anteriormente. El servidor proxy puede tener la funcin de cach. Transferencia automtica de correo electrnico (si el software del proxy lo contempla). Puede asumir funciones de firewall o cortafuegos. Desventajas Abuso. Al estar dispuesto a recibir peticiones de muchos usuarios y responderlas, es posible que haga algn trabajo que no toque. Por tanto, ha de controlar quin tiene acceso y quin no a sus servicios, cosa que normalmente es muy difcil. Carga. Un proxy ha de hacer el trabajo de muchos usuarios. Intromisin. Es un paso ms entre origen y destino, y algunos usuarios pueden no querer pasar por el proxy. Y menos si hace de cach y guarda copias de los datos. Incoherencia. Si hace de cach, es posible que se equivoque y d una respuesta antigua cuando hay una ms reciente en el recurso de destino. al crear

registros

de

actividad

(logs)

para

guardar

sistemticamente las peticiones de los usuarios cuando solicitan conexiones

En realidad este problema no existe con los servidores proxy actuales, ya que se conectan con el servidor remoto para comprobar que la versin que tiene en cache sigue siendo la misma que la existente en el servidor remoto. Irregularidad. El hecho de que el proxy represente a ms de un usuario da problemas en muchos escenarios, en concreto los que presuponen una comunicacin directa entre 1 emisor y 1 receptor (como TCP/IP).

ESTRUCTURA

SISTEMA OPERATIVO CENTOS 5.3

CentOS (Community ENTerprise Operating System) es un clon a nivel binario de la distribucin Linux Red Hat Enterprise Linux RHEL, compilado por voluntarios a partir del cdigo fuente liberado por Red Hat. Red Hat Enterprise Linux se compone de software libre y cdigo abierto, pero se publica en formato binario usable (CD-ROM o DVD-ROM) solamente a suscriptores pagados. Como es requerido, Red Hat libera todo el cdigo fuente del producto de forma pblica bajo los trminos de la Licencia pblica general de GNU y otras licencias. Los desarrolladores de CentOS usan ese cdigo fuente para crear un producto final que es muy similar al Red Hat Enterprise Linux y est libremente disponible para ser bajado y usado por el pblico, pero no es mantenido ni asistido por Red Hat. Existen otras distribuciones tambin derivadas de los fuentes de Red Hat. Arquitecturas CentOS soporta casi las mismas arquitecturas que Red Hat Enterprise Linux: Intel x86-compatible (32 bit) (Intel Pentium I/II/III/IV/Celeron/Xeon, AMD K6/II/III, AMD Duron, Athlon/XP/MP). Advanced Micro Devices AMD64(Athlon 64, etc) e Intel EM64T (64 bit). Las versiones 3.x y 4.x (pero no la 5.0 y posteriores) adems soportaron: Intel Itanium (64 bit). PowerPC/32 (Apple Macintosh PowerMac corriendo sobre procesadores G3 o G4 PowerPC). IBM Mainframe (eServer zSeries y S/390). Tambin se tuvo soporte para dos arquitecturas no soportadas por Red Hat Enterprise Linux. Alpha procesador (DEC Alpha) (slo en CentOS 4) SPARC (beta en CentOS 4)

DESARROLLO DEL FIREWALL Y PROXY 1. Configuracin de IPs Utilizamos dos tarjetas red una eth1 para la red local y eth0 para conectarse a internet, como lo observamos en la siguiente imagen.

2. Aplicamos las reglas con IPTABLES A continuacin se muestra las reglas que aplicaremos con los IPTABLES.

Introducimos las reglas mediante el Shell de Linux Centos.

Una vez ingresado las reglas las guardamos.

A continuacin ejecutamos iptables L para visualizar las reglas definidas, cabe destacar que las reglas se guardan en el ncleo del Sistema Operativo, ya que los impotables son parte de el.

3. Configuracin de SQUID

Como prueba se crea una lista de los host que tendrn acceso a internet.

El primer paso para configurar SQUID es definir la direccin ip de la pc en el que se encuentra el servidor Proxy.

Definimos el tamao de la memoria cache.

La lista permitidos definidos anteriormente lo definimos y lo direccionamos para que el servidor proxy lo ejecute.

A la lista de permitidos le aplicamos una poltica de permitido, para el acceso a internet.

Por ltimo ejecutamos el servidor proxy.

Ahora los efectos de la configuracin del servidor en el host de prueba: Mientras la direccin ip de la pc cliente este en la lista de permitidos, este tendr acceso a internet como lo podemos observar.

En este caso se le asigna una direccin que no se encuentra en las lista de permitidos, esto hace que el pc cliente no tenga acceso a la red mundial.

CONFIGURACIN DE SNORT Accedemos a la consola de Linux para instalar los programas necesarios para configurar el SNORT

Bibliografa http://mmc.geofisica.unam.mx/LuCAS/Manuales-LuCAS/GARL2/garl2/index.html http://es.wikipedia.org/wiki/CentOS http://www.centos.org/ http://lists.centos.org/pipermail/centos-es/2007-May/000714.html http://www.mygnet.net/manuales/linux/instalacion_de_centos.492 http://www.perulinux.com.pe/ http://www.elhacker.net/Linux.html http://ccia.ei.uvigo.es/docencia/SSI

También podría gustarte