Está en la página 1de 19

LABORATORIO DE SISTEMAS I

PRÁCTICA – FIREWALL IPTABLES

PRESENTADO A:
ING. JUAN SEBASTIAN BENAVIDES HERRERA

PRESENTADO POR:
NATALIA HERNÁNDEZ VARÓN
MICHAEL TROCHEZ COLLAZOS

UNIVERSIDAD DEL CAUCA


FACULTAD DE INGENIERÍA ELECTRONICA Y TELECOMUNICACIONES
TECNOLOGIA EN TELEMATICA
POPAYÁN –CAUCA
2019.
Contenido

1. Resumen ............................................................................................................. 3
2. Introducción ...................................................................................................... 3
3. Objetivos ........................................................................................................... 3
3.1. Objetivo general ......................................................................................... 3
3.2. Objetivos específicos ................................................................................. 3
4. Marco teórico. ................................................................................................... 4
4.1. Firewall en Linux ........................................................................................ 4
4.2 El cortafuegos controla las comunicaciones entre la red y el exterior ........ 5
4.3 Que es y cómo usar NMAP ........................................................................ 6
4.4 Funcionamiento de Nmap .......................................................................... 6
4.5 Conceptos importantes .............................................................................. 6
4.6 Definición de Backup.................................................................................. 7
5. Discusión de resultados .................................................................................... 8
5.1 Pasos (practica) ......................................................................................... 8
I. CONFIGURACIÓN DE FIREWALL CON IPTABLES ................................. 8
II. BACKUP DE FIREWALL ........................................................................... 17
6. Observaciones ................................................................................................ 19
7. Conclusiones .................................................................................................. 19
8. Referencias..................................................................................................... 19
1. Resumen

Para la solución del trabajo, se hizo uso de los conocimientos adquirimos hasta el
momento en el laboratorio de sistemas telemáticos 1 y cursos como sistemas
telemáticos 1.Aplicándolos de tal forma que se pueda obtener solución correcta a
los objetivos o lo planteado, apoyándose a su vez en distintas herramientas
académicas como lo son los libros, páginas web e incluso la máquina virtual, entre
otros programas para complementar lo propuesto.

2. Introducción
Un firewall también conocido como muro de fuego, o cortafuegos, controlaremos las
redes conectadas permitiendo o denegando las comunicaciones entre dichas redes.
También un firewall es considerado un filtro que controla el tráfico de varios
protocolos como TCP/UDP/ICMP que pasan por él para permitir o denegar algún
servicio, el firewall examina la petición y dependiendo de este, la puede bloquear o
permitirle el acceso. Un firewall puede ser un dispositivo de tipo Hardware como por
ejemplo un router, o software que se instala entre la conexión a Internet y las redes
conectadas en el lugar.

3. Objetivos

3.1. Objetivo general:

• Instalación y configuración de Firewall con iptables.

3.2. Objetivos específicos:


• Estudiar y conocer los dominios.
• Complementar nuestros conocimientos teóricos con la práctica.
4. Marco teórico.

4.1. Firewall en Linux.

En Linux existe gran variedad de herramientas que nos permite controlar nuestro
firewall desde un servidor que esté conectado a Internet y a la red local. La más
potente y difundida que suele venir por defecto en las distribuciones Linux
es iptables(antes llamada ipchains). Aunque también existen otras herramientas
comoShorewall que es una herramienta muy flexible, rápida y sencilla que permite
crear reglas iptables usando archivos, o ufw que es un herramienta que nos permite
crear reglas iptables de una forma muy simple dentro de distribuciones debian,
ubuntu y derivados.
4.2 El cortafuegos controla las comunicaciones entre la red y el
exterior
Para crear las reglas, podemos analizar muchos aspectos de los paquetes de datos.
Podemos filtrar paquetes en función de:

Tipo de paquete de datos:

• Tipo INPUT: paquetes que llegan a nuestra máquina


• Tipo OUTPUT: paquetes que salen de nuestra máquina
• Tipo FORWARD: paquetes que pasan por nuestra máquina

Interfaz por la que entran (-i = input) o salen (-o = output) los paquetes

• eth0, eth1, wlan0, ppp0, ...

IP origen de los paquetes (-s = source)

• IP concreta, ej: 10.0.1.3


• Rango de red, ej: 10.0.1.0/8

IP destino de los paquetes (-d = destination)

• IP concreta, ej: 10.0.1.3


• Rango de red, ej: 10.0.1.0/8

Protocolo de los paquetes (-p = protocol)

• Tcp, udp, icmp...

Hacer NAT (modificar IP origen y destino para conectar nuestra red a otra red
o a Internet) y...

• Filtrar antes de enrutar: PREROUTING


• Filtrar después de enrutar: POSTROUTING
4.3 Que es y cómo usar NMAP
Nmap (de Network Mapper) es una utilidad de software libre para explorar,
administrar y auditar la seguridad de redes de ordenadores. Detecta hosts online,
sus puertos abiertos, servicios y aplicaciones corriendo en ellos, su sistema
operativo, que firwalls/filtros corren en una red y de que tipo son. Es excelente para
hacer trabajos de auditoria de res y fue diseñado para llevar acabo escaneos
rápidos en una gran cantidad de redes, pero es igualmente usable en hosts
individuales. Es reconocido como el scanner de puertos mas poderoso. Y se lo usa
basicamente para 3 cosas:

• Auditorias de seguridad.
• Pruebas rutinarias de redes.
• Recolector de informacion para futuros ataques. (hackers)

Nmap es software libre y por lo tanto gratuito. Y basicamente existe una version
para cada sistema operativo que conozcas: MacOSX, Microsoft Windows,
GNU/Linux, OpenBSD, Solaris, etc.

4.4 Funcionamiento de Nmap


Es capaz se utilizar diferentes técnicas de evasión de detección como escaneo
sealth. Soporta escaneos sobre ciertos puertos específicos, entre rangos IP
específicos, uso se paquetes Null, FIN, Xmas y ACK, además SYN que es el
paquete por defecto. Esto significa que se mandan cierto tipo de paquetes a cada
puerto y estos responderán con alguna señal que permitirá a scanner encontrar
versiones y servicios.

4.5 Conceptos importantes


¿Que es un puerto?: Un puerto es una zona en la que dos ordenadores (hosts)
intercambian información
¿Que es un servicio?: Un servicio es el tipo de información que se intercambia con
una utilidad determinada como ssh o telnet.
¿Que es un Firewall?: Un firewall acepta o no el trafico entrante o saliente de un
ordenador.
¿Que son paquetes SYN?: Así por encima, pueden ser paquetes que abren un
intento de establecer una conexión TCP.
Debemos tener en cuenta que para Nmap un puerto puede estar de tres maneras:

open: el puerto es accesible y hay un demonio escuchando.


closed: el puerto es accesible pero no hay un demonio escuchando.
filtered: el puerto no es accesible, un firewall filtra el puerto.
4.6 Definición de Backup

El backup es una palabra inglesa que en ámbito de la tecnología y de la


información, es una copia de seguridad o el proceso de copia de seguridad. Backup
se refiere a la copia y archivo de datos de la computadora de modo que se puede
utilizar para restaurar la información original después de una eventual pérdida de
datos. La forma verbal es hacer copias de seguridad en dos palabras, mientras que
el nombre es copia de seguridad.

Los respaldos tiene dos propósitos diferentes, el primer propósito es la recuperación


de datos después de su pérdida ya sea por la eliminación o corrupción de datos, la
pérdida de datos puede ser una experiencia común de los usuarios de
computadoras. Una encuesta de 2008 encontró que el 66 % de los encuestados
había perdido los archivos en su ordenador doméstico.

El segundo propósito de las copias de seguridad es la recuperación de los datos de


una época anterior, de acuerdo con una política de retención de datos definidos por
el usuario, que por lo general es configurado en una aplicación de copia de
seguridad de cómo se requieren largos copias de los datos, aunque las copias de
seguridad representan popularmente una forma simple de recuperación de
desastres y deben formar parte de un plan de recuperación de desastres por sí
mismos.Una de las razones de esto es que no todos los sistemas de copia de
seguridad o aplicaciones de copia de seguridad son capaces de reconstruir un
sistema informático u otras configuraciones complejas, como un clúster de
ordenadores, que son servidores de directorio activo o un servidor de base de datos,
mediante la restauración de sólo los datos de una copia de seguridad.
5. Discusión de resultados

5.1 Pasos (practica)


I. CONFIGURACIÓN DE FIREWALL CON IPTABLES

Para comenzar abrimos la terminal ,e ingresamos el comando “sudo su” para los
derechos de super administracion y ademas es primordial para hacer nuestra
instalacion con usuario root , Posteriormente vamos a entrar a lo que es iptables
para hacer nuestra configuracion, ingresamos el comando “iptables –L”, para ver
nuestras tablas de filtrado, dichas tablas se usan por defecto para gestionar
paquetes de datos.Estas son las más usadas y son responsables del filtrado de los
paquetes según se ha configurado el cortafuegos o filtro. Todos los paquetes pasan
a través de esta tabla, y para la modificación tiene tres opciones predefinidas como:

• INPUT: para la entrada, es decir, todos los paquetes destinados a entrar en


nuestro sistema deben pasar por esta cadena.
• OUTPUT: para la salida, todos aquellos paquetes creados por el sistema y
que van a salir de él hacia otro dispositivo.
• FORWARD: Redireccionamiento, como ya debes saber, simplemente los
redirecciona a su nuevo destino, afectando a todos los paquetes que pasan
por esta cadena.

Todo lo mensionado anteriorente lo podemos ver en la Figura 1.

Fig.1. Usuario root y tablas de filtrado.


Como primera practica vamos a bloquear un puerto pero para esto necesitaremos
nuestra ip, y la obtendremos con el comando : “ifconfig”,como se observa en la
Figura 2.

Fig.2. Ifconfig.

Tambien es necesario installar Nmap, con el comando : “apt install nmap” , Figura
3.

Fig.3. apt install nmap.


Ya con Nmap instalado pondremos el comando nmap y seguido nuestra dirección
ip así: “nmap 192.168.54.104”, para averiguar todos los puertos abiertos y
servicios, Figura 4.

Fig.4. nmap 192.168.54.104.

Ahora si vamos a bloquear un puerto, en este caso el puerto 80 con el siguiente


comando: “iptables –A INPUT –p tcp - -dport 80 –j DROP”, Figura 5.
Cabe resaltar lo siente:
• -A: Añade la regla iptables al final de la cadena especificada.
• -p: Configura el protocolo IP para la regla, el cual puede ser icmp, tcp, udp,
o all, para coincidir todos los protocolos soportados. Además, se puede usar
cualquier protocolo listado en /etc/protocols. Si esta opción es omitida
cuando se esté creando una regla, la opción all es la opción por defecto.
• --dport: Configura el puerto de destino para el paquete. Use bien sea un
nombre de servicio (tal como www o smtp), número de puerto, o el rango de
números de puertos para configurar esta opción. Para hojear los nombres y
alias de los servicios de red y los números que ellos usan, visualice el
archivo /etc/services. La opción --destination-port es sinónimo con --dport.
• -j: Salta a un objetivo particular cuando un paquete coincide con una regla
particular. Los objetivos válidos a usar después de la opción -jincluyen las
opciones estándar (ACCEPT, DROP, QUEUE y RETURN) así como también
las opciones extendidas que están disponibles a través de los módulos
cargados por defecto con el paquete RPM de Red Hat Enterprise
Linux iptables, como LOG, MARK y REJECT, entre otros.
• DROP: Deja caer el paquete sin responder al solicitante. El sistema que envia
el paquete no es notificado de esta falla.

Fig.5. Bloqueo del puerto 80.


A continuación pasaremos a confirmar que el puerto 80 fue bloqueado, entrare con
la ip del servidor, en el navegador de mi máquina. Pero es importante afirmar que
el tengo mi apache2 sin editar es decir el index que trae originalmente, como se
observa no me aparece la página del apache2, se queda cargando y después de
una larga espera sale un mensaje donde dice que la conexión a caducado por que
el servidor 192.168.54.104 está tardando demasiado en responder esto nos quiere
decir que realmente fue bloqueado el puerto 80, Figura 6 y Figura 7.

Fig.6. Apache2.

Fig.7. La conexión ha caducado.


Para mirar que la regla ya aparece añadida debemos ingresar el comando:
“iptables –L”, para que nos enliste las reglas, Figura 8.

Fig.8. Reglas existentes.

Luego borro todas las reglas existentes con el comando: “iptables –F” y vuelvo a
utilizar “iptables –L” para enlistar y comprobar que ya fueron borradas todas las
reglas, Figura 9.

Fig.9. iptables –F y iptables –L.


Nuevamente ingreso la ip del servidor, en el navegador de mi máquina, para
demostrar que ahora si esta entrado a la página de apache2, debido a que se borró
la regla puesta anteriormente, porque estoy utilizando dicho puerto, Figura 10.

Fig.10. Apache2.

Si queremos hacer un rango de puertos ocuparemos “iptables –A INPUT –p tcp


--dport 2000:2500 –j DROP”, Figura 11.

Fig.11. rango de puertos.


Luego vamos a agregar una regla donde bloquearemos un sitio web, mediante la
ip, primero debemos ingresar el comando nslookup seguido del nombre de
dominio de la página web que deseemos bloquear en este caso Facebook, así:
“nslookup facebook.com”, esto se realiza para conocer la ip pública de un
dominio, Figura 12.

Fig.12. nslookup facebook.com .

Y antes de bloquear la página web, vamos a ingresar a ella, poniendo la dirección


ip publica de su dominio la cual es 157.240.6.35, en el navegador de mi máquina,
para que vean que si está accediendo a ella con dicha ip, Figura 13 y Figura 14.

Fig.13. página de Facebook cargando.

Fig.14. Facebook.
Después pasamos a bloquear la página de Facebook con el comando: “iptables –
A INPUT –s 157.240.6.35. - j DROP” y enlistamos con “iptables –L” para
comprobar que ya fue asignada la regla, Figura 15.

Fig.15. Bloqueo de Facebook.

Ingreso nuevamente la ip de Facebook en el explorador, se puede observar que la


página queda cargando, pero nunca la muestra como tal y al final después de
esperar un buen rato nos aparece un mensaje que dice la conexión ha caducado,
debido a que el servidor www.facebok.com está tardando demasiado en responder,
esto pasa por que bloqueamos la página, Figura 16 y Figura 17.

Fig.16. Página de Facebook cargando.


Fig.17. La conexión ha caducado.

Ahora vamos a crear la política de cerrar todo, pero sim embargo dejar entrar lo que
nosotros queramos con el comando:” iptables –A INPUT –m state --state
ESTABLISHED, RELATED -j ACCEPT” y también va a incluirse OUTPUT con el
comando:” iptables –A OUTPUT –m state –state ESTABLISHED, RELATED -j
ACCEPT”, también enlistamos con “iptables –L” para comprobar que ya fueron
asignadas las reglas, Figura 18.

Fig.18. Comandos.
II. BACKUP DE FIREWALL

Para finalizar haremos un backup, para esto nos vamos a ir al escritorio y en mi


caso mi escritorio está en la siguiente ruta: “cd /home/natalia/Escritorio” y allí
creamos nuestro backup con el comando: “iptables-save > firewall.txt” .Como se
observa en la Figura 19.

Fig.19. Backup.

Posteriormente vemos que si se crea en el escritorio nuestro backup y pasamos a


abrirlo para observar lo que hay dentro de él, Figura 20.

Fig.20. Backup.
Acá para comprobar que mi backup está funcionando, primero borrare todas las
reglas creadas con: “iptables –F”, después en listare con el comando: “iptables –
L “ ,además de mirar que mis reglas ya no están, pasare a ingresar mi backup con
el siguiente comando: “iptables-resorse < firewall .txt”, para finalizar volveré a
enlistar con “iptables –L” y observo que se encuentra otra vez todas las reglas que
cree con anterioridad debido a que cree bien mi backup, Figura 21.

Fig.21. Backup.
6. Observaciones

1. Manejar iptables desde comandos puede resultar un poco complejo, por eso
existen herramientas gráficas como firestarter que permiten gestionar
iptables con clics de ratón, aunque con limitaciones.

2. Es importante tener conocimientos previos de comandos o directorios, e


incluso de IPTABLES, para poder tener una práctica con éxito, sin ningún
inconveniente.

3. Tenga en cuenta que al utilizar las opciones -A o -I el orden de las reglas


dentro de una cadena es importante para determinar cuál regla aplica a
cuáles paquetes.

7. Conclusiones

• El comando predeterminado para listar, iptables -L, proporciona una vista


muy básica de los filtros por defecto de las cadenas actuales de la tabla.

• El firewall iptables funciona comparando el tráfico de red en relación con


un conjunto de reglas. Las reglas definen las características que un paquete
debe tener para que coincida con la regla y la acción que se debe tomar para
los paquetes que efectivamente coincidan.

• En conclusión, se puede decir que el Back up es una herramienta tecnología


que nos permite tener un marco de seguridad sobre todo aquella información
digital que tiene valor para nosotros.

8. Referencias

http://www.ite.educacion.es/formacion/materiales/85/cd/linux/m6/cortafuegos_iptab
les.html
https://paraisolinux.com/que-es-y-como-usar-nmap/
https://conceptodefinicion.de/backup/