Firewall Iptables

24
Redes de computadoras II IV Ciclo Laboratorio N o 12 “Implementación y Configuración del Servicio Firewall en Linux“

description

ff

Transcript of Firewall Iptables

Redes de computadoras IIIV CicloLaboratorio No 12

Implementacin y Configuracin del Servicio Firewall en Linux

Pg. 16Gua de LaboratorioGua de LaboratorioPg. 17Servicio Firewall en Linux

Objetivos:

Al finalizar el laboratorio el estudiante ser capaz de:Instalar y configurar un firewall en Linux.Controlar el acceso a determinados servicios de red.Publicar servidores de la red interna.Integrar el servicio Proxy con el servicio Firewall.

Introduccin:

Este laboratorio permitir comprobar el funcionamiento de IPTables y su implementacin en un entorno Linux.

Preparacin:

El alumno debe haber revisado, con anterioridad, el material del curso sobre los temas que se tratar en este laboratorio.

Durante el desarrollo de los temas de clase se realizarn ejercicios explicativos en cada uno de los puntos, ello le dar a la sesin una interaccin de la teora y la parte prctica, permitiendo al alumno comprobar todos los tems del manual en su computadora.

Seguridad:

Ubicar maletines y/o mochilas en el gabinete al final de aula de Laboratorio o en los casilleros asignados al estudiante.No ingresar con lquidos, ni comida al aula de Laboratorio.Al culminar la sesin de laboratorio apagar correctamente la computadora y el monitor; y ordenar las sillas utilizadas.

Equipos y materiales:

Dos computadoras con Windows 7 (clientes).Dos computadoras con Centos 6.3. o superior.Las computadoras deben de estar conectas a la red del laboratorio.

Procedimiento y Resultados:

PREPARACIN DE LAS MQUINAS VIRTUALES Y CONECTIVIDAD

Debido a que se va a realizar el manejo de varias mquinas virtuales es recomendable estructurar los nombres de los directorios de descompresin de las mquinas virtuales y la asignacin de etiquetas para evitar confusin.

1. Se realizar la siguiente estructura de directorios con mquinas virtuales.

No active la mquina virtual, indicaremos en la seccin los pasos previos

2. Se abrirn 4 mquinas virtuales en el mismo entorno del VMware, colocndoles las etiquetas respectivas (ClienteE, ClienteI, SA, FW).

3. Configurar los parmetros de conectividad apropiados en cada Mquina Virtual.

CONFIGURACIN DEL FIREWALL

El Firewall debe de configurarse primeramente el nivel RED. Agregando la tarjeta de Red Fsica y los parmetros de RED.

4. Se agregar una tarjeta en el (FW):

Como se observa en el diagrama de RED el (FW) debe tener 2 tarjetas de RED: (uno en host only y otra en bridge)

5. Se activar la MV. Representa a (eth0)Representa a (eth1)

6. En el (FW) configurar los parmetros de conectividad:

Proceda a eliminar (resolv.conf, network, ifcfg-eth0, ifcfg-eth1) y luego a generarlos con el comando (touch).

Editando los archivos de red:

ifcfg-eth0ifcfg-eth1

DEVICE=eth0ONBOOT=yesBOOTPROTO=staticIPADDR=192.168.11.113NETMASK=255.255.255.0DEVICE=eth1ONBOOT=yesBOOTPROTO=staticIPADDR=192.11.20.1NETMASK=255.255.255.0

network

resolv.conf

nameserver 192.168.65.43

NETWORKING=yesHOSTNAME=localhost.localdomainGATEWAY=192.168.11.1

7. En el (FW) cambiar enforcing por disabled para quitar permisos: # vi etc/selinux/config

8. En el (FW) se realizar el Forwardeo:sysctl.conf

Activando el FORWARD

*Ubique la lnea y cambie el valor de (0) a (1)

Reiniciar:# init 6

9. Realizaremos diversas pruebas para garantizar la conectividad:

En el (FW) comprobar que tenga acceso a Internet: http://www.tecsup.edu.pe

Navegacin

En el (SA,UI) comprobar que tenga conectividad al FIREWALL, enviando ping:PING 192.11.20.1No tendr acceso a Internet aun. Falta polticas . ms adelante lo configuraremos

PING 192.168.11.113

En el (ClienteE) Comprobar que tenga conectividad al FIREWALL y acceso a INTERNET http://www.tecsup.edu.pe:

Navegacin

PING 192.168.11.113

Entregable 1:Capture las pantallas donde se muestre la Conectividad entre los clientes y los 2 servidores Linux y tambin los accesos externos.

CREACIN DE POLTICAS

Las polticas controlaran el trfico de entrada y salida. El software IPTABLES implementa la capacidad de Firewall en Linux. Iptables es parte del Sistema Operativo, est integrado en el Kernel. Todo Linux lo incorpora. No necesita instalar

10. En el (FW) se verificar la existencia del programa.iptables

Info: http://www.netfilter.org/

11. En el (FW) se generar el archivo de polticas:

La configuracin est basada en comandos que pueden ejecutarse en consola que al reiniciar se perdern. Se recomienda que registremos las polticas en un archivo para luego ejecutarlos. Generaremos un archivo.# touch poli.sh

Para darle el permiso de ejecucin:Realizaremos el proceso en varios PASOS que ira cumpliendo determinada accin. Sigamos estos pasos# chmod +x poli.sh

PASO 1 (LIMPIEZA, PREDETERMINAR) En el (FW) agregar polticas:poli.sh Se ha separado por bloques solo por didctica.Respete las maysculas y minsculas

Para escribir algn comentario usamos el smbolo (#)

LIMPIEZA#LOCALiptables F INPUTiptables F OUTPUTiptables F FORWARD

#NATiptables t nat -F PREROUTINGiptables -t nat -F POSTROUTINGiptables -t nat -F OUTPUT

Limpiando todos los bloques que borrara configuraciones anteriores

(F) Parmetro de limpieza

PREDETERMINAR#LOCALiptables P INPUT ACCEPTiptables P OUTPUT ACCEPTiptables P FORWARD ACCEPT

# NATiptables t nat -P PREROUTING ACCEPTiptables -t nat -P POSTROUTING ACCEPTiptables -t nat -P OUTPUT ACCEPT

Accin predeterminada en ACCEPT

Con la accin de limpieza no borra la accin predeterminada. Predeterminaremos la accin de ACCEPT(P) Parmetro de predeterminar

Aplicando la politica:# sh poli.sh No deber de obtener ningn mensaje de error, de lo contrario revise

Visualizando listado: Observamos que los bloques estn predeterminados en ACCEPT y no hay polticas

# iptables t nat -L# iptables -L

BLOQUES

Relacin de polticas

Accin predeterminada

Entregable 2:Capture las pantallas donde se muestra el resultado de los listados.

En el (ClienteI) compruebe que no puede an acceder a INTERNET. Hasta ahora hemos avanzado limpiando las tablas:Navegacin

nowww.cisco.com

PASO 2 (ENMASCARAMIENTO) En el (FW) se configurar para que la red (inside) pueda acceder a Internet pero con libre acceso: Agregar al final del archivopoli.sh

ENMASCARAMIENTO

#ENMASCARAMIENTOiptables t nat A POSTROUTING s 192.11.20.0/255.255.255.0 j MASQUERADE

Accin que enmascara el trafico de la Red Inside con la IP publica del Firewall (192.168.11.113) cuando accedan a Internet

La Red INSIDE

Mascara de la Red INSIDE

Aplique la politica:# _______________

En el (ClienteI) compruebe que s puede acceder a INTERNET. Navegacin

SI

www.cisco.com

Entregable 3:Capture la pantalla donde se muestra el acceso a Internet, debe mostrarse que esta accin se realiza desde el cliente ClienteI.

PASO 3 (BLOQUEO DEL FIREWALL)

En el (FW) se va a bloquear toda conexin hacia el Firewall:

Agregar al final del archivopoli.sh

BLOQUEO FIREWALL

#BLOQUEO FIREWALLiptables P INPUT DROP

Predeterminando la poltica

Accin de bloqueo

Aplique la politica# sh poli.sh

Comprobando la aplicacin de la poltica: Navegacinwww.cisco.com

SI

no

no

ping al firewall 192.11.20.1

ping al firewall 192.168.11.113

Entregable 4:Capture las pantallas donde se muestra que desde ningn cliente ClienteI y ClienteE no tienen acceso al Firewall, debe mostrarse que esta accin se realiza desde cada cliente.

PASO 4 (PERMITIENDO TRAFICO LOCALHOST) En el (FW) se permitir la conexin local del Firewall:poli.sh

Agregar al final del archivo

PERMITIR LOCALHOST

#PERMITIR LOCALHOSTiptables A INPUT i lo -j ACCEPT

La ip 127.0.0.1 es conocida como local host en forma abreviada (lo)

Indicar interface

Aplique la politicaVarios procesos de Linux necesitan conectarse localmente, por eso es necesario habilitar el localhost

En el (FW) compruebe que s puede acceder localmente:

SI

ping127.0.0.1

Entregable 5:Capture la pantalla donde se comprueba la conectividad localmente al Firewall.

PASO 5 (BLOQUEAR TRAFICO DE SALIDA) En el (FW) se bloquear el trfico de acceso a Internet:

poli.sh Agregar al final del archivo

BLOQUEAR

#BLOQUEAR TRAFICOiptables t nat P PREROUTING DROP

Predeterminado bloque

Aplique la politica

Comprobando la aplicacin de la poltica: Navegacinwww.cisco.com

no

Entregable 6:Capture la pantalla donde se muestra la negacin del acceso a Internet, debe mostrarse que esta accin se realiza desde el cliente UI.

PASO 6 (PERMITIR DNS) En el (FW) permitir el trfico DNS:Parmetro de protocolo de transporte

Agregar al final del archivo

poli.sh

PERMISO DNS

Origen de la conexin

Nota: Estamos indicando la RED

#PERMITIR DNSiptables t nat A PREROUTING p _____s 192.11.20.0/255.255.255.0 --sport 1024:65535d any/0 --dport ___ j ACCEPT

Lnea continua

Destino de la conexin

Nota: Cualquier red es representada por (any/0) e Internet est incluida en esta red.

Puerto destino de la conexin

Nota: El puerto del DNS es (___)Puerto de origen de la conexin

Nota: Cuando un cliente solicita una conexin usa un puerto aleatorio en el rango de 1024:65535.

Aplique la politica

Comprobando la aplicacin de la poltica: SI

Hemos permitido resolucin, nicamente pruebe conectarse a una pgina WEB comprobara que no accede.

> _____ www.intel.com

Comprobando, est resolviendo. Resolvera pero no responder el PING porque esta bloqueado solo se habilito DNS

Entregable 7:Capture la pantalla donde se muestra la negacin del acceso a Internet, y la resolucin del nombre.

PASO 7 (PERMITIR HTTP) En el (FW) se permitir trfico http:Parmetro de protocolo de transporte

Agregar al final del archivo

poli.sh

PERMISO DNS

#PERMITIR WEBiptables t nat A PREROUTING p tcps 192.11.20.0/255.255.255.0 --sport 1024:65535d any/0 --dport 80 j ACCEPT

Aplique la politica

Comprobando la aplicacin de la poltica: Navegacinwww.cisco.com

Tome como referencia el patrn que hemos aplicado para permitir otros Servicios, segn la necesidad.SI

Entregable 8:Capture la pantalla donde se muestra el acceso a Internet, y se note el ingreso desde el cliente UI.

PASO 8 (PERMITIR WEB SEGURAS HTTPS)Realice la aplicacin de este paso en forma de ejercicio complete los valores en la tabla y compruebe el acceso.

Ingrese a www.viabcp.com Ingresa a tus cuentas Puede ingresar? Si o No Por qu? ______________________________________________________________________________________________________

En el (FW) se permitir el trfico https: Agregar al final del archivo

poli.sh

PERMISO HTTPS

#PERMITIR WEB SEGURA__________________________________________________________________

__________________________________________________________________

Aplique la politica

Comprobando la aplicacin de la poltica, en el (ClienteI): Accediendo a pgina WEB HTTP

13

Ingresando a seccin segura donde usa HTTPS

23

Pgina WEB Segura accedida

Bloquear el acceso al juego DOTA en lnea. (escribir la regla)___________________________________________________________________________

___________________________________________________________________________

Entregable 9:Capture la pantalla donde se muestra el acceso a Internet (https), y el bloqueo al dota en lnea, se note el ingreso desde el cliente UI.

NATEO

El acceso desde el exterior hacia la red Interna se establece con la propiedad de NAT. El NAT aplicado en el Firewall redireccionar las peticiones del lado pblico (OUTSIDE)al lado privado (INSIDE).

Informacin de referencia, que en los siguientes pasos se configurara

SERVIDOR WEB

El diagrama muestra el objetivo, donde el usuario externo al solicitar una conexin WEB a la ip publica el Firewall, va el NAT lo llevara a la IP PRIVADA del Servidor WEB. Sigamos ya falta poco

8080

IP PBLICA192.168.11.113

NATIP PRIVADA192.11.20.5

12. En el (SA) se configurar la Pgina de Inicio:

index.htmlEl archivo no existe

Pgina WEB de [Apellido][Nombre]

Reiniciando el servicio de WEB:# ________________________

Se comprobar el acceso local:

Acceso al WEBhttp://192.11.20.5

80

IP PRIVADA192.11.20.5

Entregable 10:Capture la pantalla donde se muestra el acceso a al servicio Web y se note que se est realizando desde el ClienteI.

13. Asignacin de IP pblica:

El FIREWALL asume la representacin de las IP Pblicas de los Servicios. En la tarjeta de red pblica del FIREWALL agregaremos la IP Pblica del Servidor WEB.

En el (FW) se agregar una IP adicional:

El archivo no existeifcfg-eth0:0

DEVICE=eth0:0ONBOOT=yesBOOTPROTO=staticIPADDR=192.168.11.116NETMASK=255.255.255.0

Reiniciando el servicio de Red:# ___________________________

PASO 9 (PERMITIR ACCESO AL SERVIDOR) En el (FW) permitir el acceso al servicio Web desde la Red externa:

poli.sh Agregar al final del archivoACCESO WEB PRIVADO

Accin de traslacin (DNAT)

Puerto trasladado

IP a trasladar

#NAT SERVICIO WEBiptables t nat A PREROUTING p tcpd 192.168.11.116 --dport 80 j DNAT-to 192.11.20.5:80

IP trasladada

Puerto a trasladar

Aplique la politica

Comprobando la aplicacin de la poltica: Navegacinhttp://192.168.11.117

NAT

IP PBLICA192.168.11.117IP PRIVADA192.11.20.5

Entregable 11:Capture la pantalla donde se muestra el acceso a al servicio Web (dentro de nuestra red) desde el cliente externo pasando por el Firewall.

PASO 10 (PERMITIR QUE EL SERVIDOR SALGA CON SU IP)En situaciones que el Servidor realice conexin a Internet se recomienda que salga con su direccin IP asignada. La opcin ENMASCARAMIENTO ocasiona que todas las conexiones de salida salgan con la primera IP del FIREWALL, para asignar otra IP de Salida se usa la opcin SNAT.

En el (FW) se realizar el proceso para que el Servidor Web salga con su direccin Pblica:Accin de traslacin (DNAT)

poli.shIP a trasladar

Agregar antes de la poltica de enmascaramiento (MASQUERADE)

TRASLADO

#NAT SERVICIO WEBiptables t nat A POSTROUTING s 192.11.20.5 o eth0 j SNAT -to 192.168.11.116

Interface pblica

IP publica trasladada

Aplique la politica

Comprobando la aplicacin de la poltica:

Navegacinhttp://www.cisco.com

SNAT

IP PRIVADA192.11.20.5IP PBLICA192.168.11.117

Entregable 12:Capture la pantalla donde se muestra el acceso del servicio Web hacia el exterior, pasando por el Firewall.

ACTIVACION DE POLITICAS PERMANENTE

El archivo de polticas es un SCRIPT, para que se ejecute siempre al reiniciar, indicaremos la accin en el archivo de inicio (rc.local)

14. En el (FW) se invocar al script:

Agregar al final del archivo

rc.local

/root/poli.sh

Directorio donde se encuentra el script de polticas

Reiniciar.# ______________________________

Comprobar que las POLITICAS estan activas. Cmo realizara esta comprobacin?.

PROXY TRANSPARENTE

La integracin del PROXY en el FIREWALL permitir el control del contenido de pginas WEB lo que no puede hacer el FIREWALL.

15. En el (FW) se comprobar la existencia del paquete: ________________

16. En el (FW) se realizar la configuracin: Instalar el servicio Squid. Borrar el archivo de configuracin /etc/squid/squid.conf Crear un nuevo archivo squid.conf con el siguiente contenido:

Personalizando un nuevo archivo :Opcin que habilita al Proxy para soportar el modo transparente

squid.conf

IDENTIFICACION

http_port 8080 transparentvisible_hostname 192.11.20.1

CACHE

cache_dir ufs /var/spool/squid 100 16 256cache_access_log /var/log/squid/access.logcache_log /var/log/squid/cache.logcache_store_log nonelogfile_rotate 9

POLITICAS

acl all src 0.0.0.0/0.0.0.0acl redlocal src 192.11.20.0/255.255.255.0

ACCION

http_access allow redlocalhttp_access deny all

Archivo de configuracin preparado

17. En el (FW) se generar la Cach:La letra (z) en minsculas

Mensaje que confirma la generacin de la cache

Nota: Si obtiene error revise el archivo de configuracin (squid.conf)

# squid -z

18. En el (FW) se activar el servicio:

Activando SQUID:# chkconfig squid on

# service squid restart

19. Se configurarn las polticas.Para realizar las pruebas del Proxy Transparente y evitar percances de bloqueos del FIREWALL, en un primer momento el archivo de poltica tendr libre acceso. Luego lo limitaremos.

En el (FW) se configurar: Solo debe mostrar este contenido, lo dems comentar

poli.sh

LIMPIEZA#LOCALiptables F INPUTiptables F OUTPUTiptables F FORWARD

#NATiptables t nat -F PREROUTINGiptables -t nat -F POSTROUTINGiptables -t nat -F OUTPUT

PREDETERMINAR#LOCALiptables P INPUT ACCEPTiptables P OUTPUT ACCEPTiptables P FORWARD ACCEPT

# NATiptables t nat -P PREROUTING ACCEPTiptables -t nat -P POSTROUTING ACCEPTiptables -t nat -P OUTPUT ACCEPT

ENMASCARAMIENTO#ENMASCARAMIENTOiptables t nat A POSTROUTING s 192.11.20.0/255.255.255.0 j MASQUERADE

REDIRECCIONAMIENTO#REDIRECCIONARiptables t nat A PREROUTING i eth1 p tcp -dport 80 j REDIRECT -to-port 8080

Puerto destino de la conexin a redireccionar

Accin que captura la conexin y lo redirecciona localmente

Puerto local del FIREWALL que recibe la conexin

Nota: En el puerto 8080 est esperando el PROXYInterface de entrada de la conexin

Aplique la politica

En el (FW) se realizar un monitoreo para poder visualizar la actividad: Mantener esta consola, no cerrarla al visitar pginas WEB ms adelante, visualizara actividad.

# tail f /var/log/squid/access.log

20. En el (ClienteI) se acceder en forma transparente:

Desactive cualquier configuracin del PROXY del navegador:

Visite pginas WEB:

21. En el (FW) en la ventana de monitoreo del los eventos del PROXY, chequear:

Entregable 13:Capture la pantalla donde se muestra el evento generado por el ingreso a travs del proxy transparente.

Gua de LaboratorioPg. 1