0% encontró este documento útil (0 votos)
419 vistas

Lab01-Firewall Iptables

Este documento presenta un laboratorio sobre la configuración de un firewall utilizando iptables en Linux. El objetivo es aprender a crear reglas de firewall e implementar un servidor firewall. Se explica cómo instalar e iptables y configurar reglas básicas como permitir/denegar tráfico, así como configurar NAT. Finalmente, se presenta un ejercicio práctico donde se pide habilitar/denegar diferentes servicios y protocolos siguiendo una tabla de especificaciones.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
419 vistas

Lab01-Firewall Iptables

Este documento presenta un laboratorio sobre la configuración de un firewall utilizando iptables en Linux. El objetivo es aprender a crear reglas de firewall e implementar un servidor firewall. Se explica cómo instalar e iptables y configurar reglas básicas como permitir/denegar tráfico, así como configurar NAT. Finalmente, se presenta un ejercicio práctico donde se pide habilitar/denegar diferentes servicios y protocolos siguiendo una tabla de especificaciones.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 11

PROGRAMA DE FORMACIÓN

REGULAR
REDES Y COMUNICACIONES DE
DATOS

SEGURIDAD PERIMETRAL

Laboratorio N° 1

“FIREWALL IPTABLES”

Integrantes:
Gómez Villanueva Darío Gabriel
Quispe Mamani Flor Angela
Sucasaire Castillo Jamilet Pamela
“FIREWALL IPTABLES”

OBJETIVOS
 Aprender a usar iptables para la creación de reglas
 Implementar un servidor FIREWALL en Linux

TOPOLOGIA

1.- INSTALACIÓN

IPTABLES es un
poderoso firewall
integrado en el kernel de
Linux y que forma parte
del proyecto netfilter.
Para la creación de reglas
usaremos el comando
iptables, que viene dentro
de un pquete RPM del
mismo nombre.
Generalmente ya viene
instalado. El hostname de
su servidor debe llevar
su nombre. Ejemplo:
rrodriguez.tecsup.edu.pe

Verificación:

2.- CONFIGURACIÓN

a) FILTRADO

Sintaxis: iptables –t [tabla] operación cadena parámetros acción


Operaciones:
-A Agrega
-D Elimina
-I Inserta una regla al inicio de la cadena
-L Lista todas las reglas
-F Borra todas las reglas

Para empezar a crear reglas se requiere que se entienda el concepto detrás de las cadenas de
NetFilter
Cadenas:

2
Parámetros:
-p Sirve para especificar el protocolo que se utiliza
-s Sirve para especificar la dirección IP de origen
-d Sirve para especificar la dirección IP de destino
-i Especifica la interfaz de entrada
-o Especifica la interfaz de salida

Acciones:

ACCEPT Se acepta el paquete


DROP Se elimina el paquete
REJECT Elimina el paquete y además notifica al origen

A continuación, se muestran algunas reglas más usadas.

Bloquea todo (TCP/UDP/ICMP) el tráfico que sale del firewall.


#iptables -P OUTPUT DROP -

Bloquea todo (TCP/UDP/ICMP) el tráfico que pasa por firewall.


#iptables -P FORWARD DROP

Bloquea todo (TCP/UDP/ICMP) el tráfico que ingresa al firewall.


#iptables -P INPUT DROP

Habilita el tráfico de salida para el protocolo ICMP por la interfaz loopback.


#iptables -A OUTPUT -p icmp -d 0.0.0.0/0 -o lo -j ACCEPT

Habilita el tráfico de entrada para el protocolo ICMP por la interfaz loopback.


#iptables -A INPUT -p icmp -s 0.0.0.0/0 -i lo -j ACCEPT

Habilita todo tráfico (UDP, TCP e ICMP) de salida del firewall hacia internet; para
conexiones nuevas, relacionadas o establecidas.
#iptables -A OUTPUT -d 0.0.0.0/0 -o ens160 -m state --state NEW, ESTABLISHED,
RELATED -j ACCEPT

Habilita todo tráfico (UDP, TCP e ICMP) de entrada al firewall, que venga de internet;
solo para conexiones establecidas o relacionadas.
#iptables -A INPUT -s 0.0.0.0/0 -i ens160 -m state --state ESTABLISHED, RELATED -j
ACCEPT
Habilita el protocolo HTTP y HTTPS para la red LAN con destino hacia internet; para
conexiones nuevas, relacionadas o establecidas.
#iptables -A FORWARD -p tcp -m multiport --dport 80,443 -s 192.168.1.0/24 -i ens192 -d
0.0.0.0/0 -o ens160 -m --state NEW, ESTABLISHED, RELATED –j ACCEPT

3
Habilita el protocolo HTTP y HTTPS, que venga de internet, con destino hacia la red
LAN; solo para conexiones relacionadas o establecidas.
#iptables -A FORWARD -p tcp -m multiport --sport 80,443 -s 0.0.0.0/0 -i ens160 -d
192.168.1.0/24 -o ens192 -m --state ESTABLISHED, RELATED –j ACCEPT

Verificar las reglas ingresadas de toda la tabla filter


#iptables -L

Verificar las reglas ingresadas, con mayor detalle, de toda la tabla filter.
#iptables -L -nv

Verificar las reglas ingresadas, con mayor detalle, de toda la tabla nat.
#iptables -t nat -L -nv

Permite añadir numeración a las reglas.


# iptables -L -nv --line-numbers

Eliminación de la regla número 1 de la cadena OUTPUT


# iptables –D OUTPUT 1

Revisar y probar las opciones generales

b) NAT

Configurar NAT para que toda la red LAN salga hacia internet con una IP Pública
específica. Además, agregando un comentario haciendo uso el módulo comment.

#iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o ens160 -m comment --comment


“Regla que habilita NAT para la red privada” -j SNAT --to 192.168.86.10

Configurar un NAT de tipo PAT para publicar el puerto 80 y 443, de un servidor web,
hacia internet; con una IP Pública específica.
#iptables -t nat -A PREROUTING -p tcp -m multiport --dport 80,443 -s 0.0.0.0/0 -i ens160 -j
DNAT --to 10.10.10.10
Configurar NAT para que toda la red LAN salga hacia internet con la IP Pública
configurada en la tarjeta de rede WAN.
#iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o ens160 -j MASQUERADE

-------------------------------------------------

4
ACTIVIDADES.

A continuación, se da una tabla de los servicios que deben ser habilitados, y los demás deben
ser bloqueados.
 Los clientes de la LAN deben poder hacer consultas DNS hacia servidores públicos en
internet.
o iptables -A FORWARD -i ens33 -p tcp --dport 53 -d ens38 -j ACCEPT
 Los clientes de la LAN deben poder acceder (HTTP y HTTPS) al servidor web de la DMZ.
 El servidor web debe ser visible desde internet. Por lo tanto, publicar los puertos
necesarios para los servicios HTTP y HTTPS.
 Se debe publicar el servicio de “escritorio remoto” para que sea accesible desde
internet; para el servidor Terminal Server.
 Solo la IP 192.168.X.100 puede acceder por escritorio remoto al servidor terminal
server.
 Los clientes de la LAN deben tener habilitado los servicios HTTP, HTTPS, SMTP, POP3,
IMAP, FTP, SFTP; hacia internet.
 La IP 192.168.X.100 y 192.168.X.200 no deben tener ninguna restricción cuando
navegan hacia internet.
 Solo la IP 192.168.X.100 puede acceder por SSH al servidor web de la DMZ.
 El WebServer debe tener habilitado los servicios HTTP, HTTPS, SSH; hacia internet.
Además, el puerto 10000/TCP hacia internet.
 La IP 192.168.X.100 tiene habilitado ICMP para todos los equipos de la DMZ.
 El firewall debe poder conectarse hacia la LAN, WAN y DMZ sin ninguna restricción.
 Habilitar los puertos 10000:2000 /UDP para la LAN hacia internet. Además, el puerto
5060/TCP-UDP.
 La IP 10.10.X.100 no debe tener ninguna restricción cuando navega hacia internet.

NOTA:
 Se debe presentar el script aplicado al firewall, con los comentarios de cada protocolo.
 Imágenes de los resultados pedidos (Sólo resultados de 5 pruebas)

Recordar: Se debe habilitar el reenvío de paquetes en el firewall.

5
Desarrollo de actividad

1. Configuración de LAN Cliente Windows

2. Configuración de Firewall NICs

#ifconfig (maquina firewall)

3. Configuración de NIC del webserver

6
WebServer

4.

5.

7
6.

7.

8.

9.

#!/bin/bash

#Limpiamos tablas
iptables -F
iptables -X
# Limpiamos NAT
iptables -t nat -F
iptables -t nat -X
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP

#Intranet LAN
intranet=ens34

#Extranet wan
extranet=ens33

# Keep state. Todo lo que ya esta conectado (establecido) lo dejamos asi


iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

# Loop device.
iptables -A INPUT -i lo -j ACCEPT

# http, https, no especificamos la interfaz por que


# queremos que sea por todas
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -j ACCEPT

# ssh solo internamente y desde este rango de ip's


iptables -A INPUT -p tcp -s 192.168.x.x/24 -i $intranet --dport 7659 -j ACCEPT

8
# monitoreo por ejemplo si tienen zabbix o algun otro servicio snmp
iptables -A INPUT -p tcp -s 192.168.x.x/24 -i $intranet --dport 10050 -j ACCEPT

# icmp, ping bueno es decisión tuya


iptables -A INPUT -p icmp -s 192.168.x.x/24 -i $intranet -j ACCEPT

#mysql con postgres es el puerto 5432


iptables -A INPUT -p tcp -s 192.168.x.x --sport 3306 -i $intranet -j ACCEPT

#sendmail bueeeh si quieres enviar algún correo


#iptables -A OUTPUT -p tcp --dport 25 -j ACCEPT

#Anti-SPOOFING 09/07/2014
#
SERVER_IP="190.x.x.x" # server IP - la ip wan real de tu servidor
LAN_RANGE="192.168.x.x/21" # Rango LAN de tu red o de tu vlan

# Ip's que no deberian entrar por la extranet nunca, es usar un poco de


# lógica si tenemos una interfaz netamente WAN no debería jamas entrar
# trafico tipo LAN por esa interfaz
SPOOF_IPS="0.0.0.0/8 127.0.0.0/8 10.0.0.0/8 172.16.0.0/12 192.168.0.0/16"

# Acción por defecto - que se realizara cuando haga match alguna regla
ACTION="DROP"

# Paquetes con la misma ip de mi servidor por la wan


iptables -A INPUT -i $extranet -s $SERVER_IP -j $ACTION
#iptables -A OUTPUT -o $extranet -s $SERVER_IP -j $ACTION

# Paquetes con el Rango LAN por la wan, lo coloco así por si tienes
# alguna red particular, pero esto es redundante con la siguiente
# regla dentro del bucle "for"
iptables -A INPUT -i $extranet -s $LAN_RANGE -j $ACTION
iptables -A OUTPUT -o $extranet -s $LAN_RANGE -j $ACTION

## Todas las Redes SPOOF no permitidas por la wan


for ip in $SPOOF_IPS
do
iptables -A INPUT -i $extranet -s $ip -j $ACTION
iptables -A OUTPUT -o $extranet -s $ip -j $ACTION
done

9
10
OBSERVACIONES Y CONCLUSIONES (MIN 3 DE CADA UNO)

11

También podría gustarte