Você está na página 1de 27

IPV – Instituto Politécnico de Viseu

ESTGV – Escola Superior de Tecnologia e Gestão de Viseu


Departamento de Informática

Licenciatura de Engenharia Informática

Trabalho Prático Nº5: Firewall - IPTABLES

Realizado em
Segurança Informática

Por
Cristina Santos 15247
Maria Beatriz 18726
Pedro Fernandes 18733
Tiago Fonseca 18718

Viseu, janeiro 2022


IPV – Instituto Politécnico de Viseu
ESTGV – Escola Superior de Tecnologia e Gestão de Viseu
Departamento de Informática

Licenciatura de Engenharia Informática

Trabalho Prático Nº5: Firewall - IPTABLES

Realizado em
Segurança Informática

de
20 de dezembro a 10 de janeiro

Por
Cristina Santos 15247
Maria Beatriz 18726
Pedro Fernandes 18733
Tiago Fonseca 18718

Viseu, janeiro 2022


Índice

Índice
Índice ................................................................................................................................... III

Índice de Figuras ................................................................................................................... V

1 Introdução ...................................................................................................................... 1

1.1 Contextualização .................................................................................................... 1

1.2 Estrutura do Relatório ............................................................................................. 1

2 Execução do trabalho ..................................................................................................... 3

2.1 Topologia de rede ................................................................................................... 3

2.2 Configurações das máquinas ................................................................................... 4

2.2.1 Máquina A ........................................................................................................ 4

2.2.2 Máquina B ........................................................................................................ 4

2.2.3 Máquina C ........................................................................................................ 5

2.2.4 Máquina D ........................................................................................................ 6

2.2.5 Verificar a boa implementação .......................................................................... 7

2.3 IP TABLES ............................................................................................................ 8

2.3.1 Limpar as filas de base da firewall .................................................................... 8

2.3.2 Bloquear todas as conexões............................................................................... 8

2.3.3 Permitir apenas o tráfico vindo da Máquina A................................................... 9

2.3.4 Permitir tráfego ICMP da Máquina D para a rede interna apenas para a Máquina
C 9

2.3.5 Bloquear todas as conexões de Telnet vindas do exterior, mas permitir para fora
10

2.3.6 Permitir que apenas a Máquina B tenha acesso à internet na rede interna ........ 10

2.3.7 Colocar as políticas a aceitarem todos os pacotes ............................................ 10

2.3.8 Permitir apenas o tráfego vindo da Máquina A ................................................ 11

III
Índice

2.3.9 Permitir o tráfego ICMP da Máquina D apenas para a Máquina C na rede interna
11

2.4 Utilizar FWBuilder ............................................................................................... 12

2.4.1 Instalação e iniciação do FWBuilder ............................................................... 12

2.4.2 Configuração do FWBuilder ........................................................................... 12

2.4.3 Utilizar FWBuilder ......................................................................................... 15

2.4.3.1 Bloquearem por defeito todos os pacotes ................................................. 15

2.4.3.2 Permitir tráfego SSH entre o FWBuilder .................................................. 15

2.4.3.3 Bloquear todas as conexões Telnet vindas do exterior, mas permitir para fora
15

2.4.3.4 Bloquear todas as conexões Telnet vindas do exterior, mas permitir a partir
da rede interna .......................................................................................................... 16

2.4.3.5 Permitir o tráfego TCP para os portos 80 e 25 .......................................... 16

2.4.3.6 Aceitar tráfego DNS vindas das máquinas na rede interna ........................ 17

2.4.3.7 Verificar a diferença entre o bloqueio ou o rejeitar ................................... 17

2.4.3.8 Nova regra ............................................................................................... 18

3 Conclusão ......................................................................................................................... 19

IV
Índice de Figuras

Índice de Figuras
Figura 1 - Topologia de rede .................................................................................................. 3

Figura 2 - Network Máquina A .............................................................................................. 4

Figura 3 - Configurações Máquina A ..................................................................................... 4

Figura 4 - Network Máquina B............................................................................................... 5

Figura 5 – Configurações Máquina B ..................................................................................... 5

Figura 6 - Network Máquina C............................................................................................... 5

Figura 7 - Configurações Máquina C ...................................................................................... 6

Figura 8 - Configurações Máquina D ..................................................................................... 6

Figura 9 - Ping da Máquina D para as restantes ...................................................................... 7

Figura 10 - Ping para a Máquina D......................................................................................... 7

Figura 11 - Limpar regras base da Firewall ............................................................................ 8

Figura 12 - Regra e Ping de confirmação ................................................................................ 8

Figura 13 - Ping para a Máquina C ......................................................................................... 8

Figura 14 - Regra da alínea b) ................................................................................................ 9

Figura 15 - Testar alínea b) .................................................................................................... 9

Figura 16 - Regras do tráfego ICMP....................................................................................... 9

Figura 17 - Conexões Telnet ................................................................................................ 10

Figura 18 - Acesso à internet ................................................................................................ 10

Figura 19 - Aceitar todos os pacotes ..................................................................................... 10

Figura 20 - Tráfego da Máquina A ....................................................................................... 11

Figura 21 - Ping ................................................................................................................... 11

Figura 22 - Tráfego ICMP .................................................................................................... 11

Figura 23 - Firewall Builder ................................................................................................. 12

Figura 24 - Criar Firewall ..................................................................................................... 12

V
Índice de Figuras

Figura 25 - Interna ............................................................................................................... 13

Figura 26 - Externa .............................................................................................................. 13

Figura 27 - Privada............................................................................................................... 13

Figura 28 - Publica ............................................................................................................... 13

Figura 29 - Hosts ................................................................................................................. 14

Figura 30 - Livraria Standard ............................................................................................... 14

Figura 31 - Bloquear todos os pacotes .................................................................................. 15

Figura 32 - Tráfego SSH ...................................................................................................... 15

Figura 33 - Conexões Telnet ................................................................................................ 16

Figura 34 - Telnet e tráfego da rede interna .......................................................................... 16

Figura 35 - Tráfego TCP ...................................................................................................... 17

Figura 36 - Tráfego DNS ..................................................................................................... 17

Figura 37 - Deny e Reject .................................................................................................... 18

Figura 38 - Regra criada pelo grupo ..................................................................................... 18

VI
1 Introdução

1 Introdução
O presente Relatório enquadra-se no método de avaliação da cadeira Segurança Informática, da
Licenciatura em Engenharia Informática da Escola Superior de Tecnologia e Gestão de Viseu.

1.1 Contextualização

No âmbito desta disciplina, realizaremos trabalhos práticos, sendo este sobre firewalles.

As firewalles são uma solução de segurança que através de um conjunto de regras ou instruções
analisam o tráfego de rede para determinar quais operações de transmissão ou receção de dados
podem ser executadas.

1.2 Estrutura do Relatório

Este Relatório desenvolve-se em dois capítulos, que se descrevem sucintamente de seguida.

No capítulo dois é feita uma descrição de como foram abordados os exercícios apresentados e
os resultados obtidos.

No capítulo três é feita uma pequena conclusão.

1
2 Execução do trabalho

2 Execução do trabalho
No presente trabalho serão feitas configurações de uma firewall em ambiente Linux através
do IPTABLES.
Será configurada uma pequena rede com 4 máquina virtuais com sistema operativo Ubuntu
16.04 desktop, em a terceira máquina, Máquina C, funciona como gateway firewall e fará
a interligação da rede privada da empresa com a rede publica.

2.1 Topologia de rede

Na topologia de rede a utilizar neste trabalho irão existir duas redes: a rede privada
10.10.3.0/24 e a rede publica que terá o IP dado pela rede de casa. Como referido
anteriormente, serão utilizadas inicialmente quatro máquinas: Máquina A, Máquina B,
Máquina C e Máquina D, em que a C será configurada como a Firewall e as outras serão
PCs. Na parte final do trabalho será criada uma outra máquina ubuntu para a utilização do
FWBuilder.

Figura 1 - Topologia de rede

3
2 Execução do trabalho

2.2 Configurações das máquinas

2.2.1 Máquina A

Ao fim de criadas todas as máquinas, configuraram-se todos os IPs das máquinas e a ligação
à máquina Firewall. Começou-se pela Máquina A e por colocar a placa de rede em Bridge.

Figura 2 - Network Máquina A

De seguida, já no terminal, definiu-se o IP para a rede interna 10.10.3.3/24 e alterou-se o


gateway para o IP da máquina firewall, como mostra a Figura 3.

Figura 3 - Configurações Máquina A

2.2.2 Máquina B

Para a Máquina B, efetuaram-se as mesmas alterações que a Máquina A com a diferença do


IP dado, que neste caso, foi 10.10.3.2/24. A Figura 4 e a Figura 5 mostram as configurações.

4
2 Execução do trabalho

Figura 4 - Network Máquina B

Figura 5 – Configurações Máquina B

2.2.3 Máquina C

Na Máquina C, são necessárias duas placas de rede em Bridge, como mostra a Figura 6.

Figura 6 - Network Máquina C

5
2 Execução do trabalho

Depois disso, definiu-se o IP da interface enp0s3 com a rede interna, ou seja, o IP passa a
10.10.3.1/24 e a enp0s8 permaneceu com a rede publica, com o IP 192.168.1.123.

Figura 7 - Configurações Máquina C

2.2.4 Máquina D

Para terminar as configurações das máquinas, por último, configurou-se a máquina D que terá
o IP da rede externa.

Figura 8 - Configurações Máquina D

6
2 Execução do trabalho

2.2.5 Verificar a boa implementação

De forma a verificar se as configurações foram bem feitas, utilizou-se o comando Ping para
verificar as conexões da Máquina D para todas as outras e de uma das outras máquinas para
ela.

Figura 9 - Ping da Máquina D para as restantes

Figura 10 - Ping para a Máquina D

Conclui-se assim que a implementação está concluída.

7
2 Execução do trabalho

2.3 IP TABLES

2.3.1 Limpar as filas de base da firewall

Antes de iniciar a introdução das redes e inicializar a firewall, limpou-se todas as regras das
filas base da firewall. A mostra os comandos utilizados para isso.

Figura 11 - Limpar regras base da Firewall

2.3.2 Bloquear todas as conexões

Para a implementação da regra para bloquear todas as conexões por defeito é necessário utilizar
o INPUT DROP. A regra completa encontra-se na figura seguinte.

Figura 12 - Regra e Ping de confirmação

Pode-se observar também na Figura 12 que não é possível pingar para nenhuma das outras
máquinas e a Figura 13 mostra que também não é possível pingar para a Máquina C.

Figura 13 - Ping para a Máquina C

8
2 Execução do trabalho

2.3.3 Permitir apenas o tráfico vindo da Máquina A

Esta alínea tem como objetivo executar uma regra que permita apenas o tráfego vindo da
Máquina A, Figura 14, e testar para a máquina D, Figura 15.

Figura 14 - Regra da alínea b)

Figura 15 - Testar alínea b)

2.3.4 Permitir tráfego ICMP da Máquina D para a rede interna apenas para
a Máquina C

Para permitir o tráfego ICMP vindo da Máquina D apenas para a Máquina C foi necessário
fazer duas regras, uma para permitir que o tráfego ICMP saia da Máquina D e outra para
permitir que entre na Máquina D, como mostra a Figura 16.

Figura 16 - Regras do tráfego ICMP

9
2 Execução do trabalho

2.3.5 Bloquear todas as conexões de Telnet vindas do exterior, mas


permitir para fora

Tal como na alínea anterior foi necessário criar duas regras, para bloquear todas as conexões de
Telnet vindas do exterior para a firewall, mas permitir se for da firewall para o exterior, também
é necessário implementar duas regras.

Figura 17 - Conexões Telnet

2.3.6 Permitir que apenas a Máquina B tenha acesso à internet na rede


interna

Para permitir que na rede interna apenas o Host B tenha acesso à internet, foi necessário
adicionar ao iptables “ - - dport http” e o protocolo TCP. Para além disso, é essencial identificar
o IP da máquina B, Figura 18.

Figura 18 - Acesso à internet

2.3.7 Colocar as políticas a aceitarem todos os pacotes

Inicialmente, implementou-se uma política que bloqueava todas as conexões e as regras


seguintes foram executadas tendo isto em conta. Desta vez, colocou-se as politicas a aceitarem
todos os pacotes como na Figura 19.

Figura 19 - Aceitar todos os pacotes

10
2 Execução do trabalho

2.3.8 Permitir apenas o tráfego vindo da Máquina A

Como agora todos os pacotes são aceites, para que apenas passe tráfego da Máquina A, é
necessário bloquear todos os outros pacotes dos IPs das duas redes, à exceção do IP 10.10.3.3
que é o que pertence à Máquina A.

Figura 20 - Tráfego da Máquina A

Na Figura 21 podemos observar que a conexão com a Máquina D é efetuada.

Figura 21 - Ping

2.3.9 Permitir o tráfego ICMP da Máquina D apenas para a Máquina C na


rede interna

Para terminar as políticas implementadas através do IPTABLES, voltou-se a realizar uma regra
que permitisse o tráfego ICMP apenas com origem na Máquina D para o 10.10.3.1, Figura 22.

Figura 22 - Tráfego ICMP

11
2 Execução do trabalho

2.4 Utilizar FWBuilder

2.4.1 Instalação e iniciação do FWBuilder

Neste ponto do trabalho, foi criada outra máquina para utilizar a aplicação de implementação
de regras. Para efetuar a instalação da aplicação Firewall Builder executou-se o comando “apt-
get install fwbuilder”.

Depois de instalado, para iniciar a aplicação, no terminal, escreveu-se “fwbuilder” e o resultado


deste comando está na Figura 23.

Figura 23 - Firewall Builder

2.4.2 Configuração do FWBuilder

Após a instalação concluída, já com a aplicação aberta serão efetuadas as configurações


necessárias para criar a rede interna e externa, os Hosts, etc.

Em primeiro, criou-se a Firewall nomeada de Firewall na versão 2.4/2.6 (Figura 24).

Figura 24 - Criar Firewall

12
2 Execução do trabalho

O próximo passo, foi a configuração das duas placas de rede, a interna e a externa, a enp0s3 e
a enp0s8, respetivamente. A enp0s3 corresponde à rede 10.10.3.0/24 e a enp0s8 à
192.168.1.0/24 (Figura 26 e Figura 25).

Figura 25 - Interna Figura 26 - Externa

De seguida, criaram-se as duas networks com as respetivas gamas de endereço ligadas à firewall
(Figura 27 e Figura 28).

Figura 27 - Privada Figura 28 - Publica

13
2 Execução do trabalho

Para terminar a configuração, criaram-se quatro Hosts que correspondem a quatro máquinas
para depois efetuar as regras. A Figura 29 mostra as quatros máquinas criadas.

Figura 29 - Hosts

Quando forem implementadas as regras mais à frente, serão precisos serviços, protocolos e
portos, para isso é necessário recorrer à livraria Standard onde se encontram todos os essenciais
para o desenvolvimento do trabalho, como mostra a Figura 30.

Figura 30 - Livraria Standard

14
2 Execução do trabalho

2.4.3 Utilizar FWBuilder

Na aplicação FWBuilder, para criar as regras basta ir a RULES e INSER NEW RULE.

Quando inseridas novas políticas, cria-se uma lista com todas as criadas até então. Para que
sejam executadas da forma pretendida, é necessário listar por ordem de prioridade conforme
queremos que sejam atendidas.

2.4.3.1 Bloquearem por defeito todos os pacotes

Para bloquear todos os pacotes por defeito, quando adicionada uma nova regra, não foi
necessário efetuar alterações porque o default de uma nova regra já bloqueia todo o tráfego.
Esta regra será sempre a última da lista.

Figura 31 - Bloquear todos os pacotes

2.4.3.2 Permitir tráfego SSH entre o FWBuilder

A próxima regra criada, permite o tráfego SSH entre o FWBuilder. Esta regra terá de
permanecer em primeiro mesmo que depois se criem outras. Neste caso, foi necessário
adicionar o serviço SSH na coluna Service e mudar a Action para Accept.

Figura 32 - Tráfego SSH

2.4.3.3 Bloquear todas as conexões Telnet vindas do exterior, mas


permitir para fora

Depois da primeira e da segunda regra que têm as posições definidas, as regras seguintes serão
postas entre elas. A próxima regra acrescentada foi uma que bloqueasse todas as conexões
Telnet vindas da rede externa para a Firewall, mas que permitisse conexões do Firewall para o
exterior.

15
2 Execução do trabalho

Foram criadas duas políticas, ambas com o serviço Telnet. A que tinha como objetivo bloquear
as conexões do exterior, foi necessário mudar a Direction para Inbound e a que permitia o
tráfego para o exterior mudou-se para Outbound.

Figura 33 - Conexões Telnet

2.4.3.4 Bloquear todas as conexões Telnet vindas do exterior, mas


permitir a partir da rede interna

De seguida, criaram-se novamente duas novas regras. A primeira bloqueia as conexões, também
Telnet, do exterior para a rede interna e a segunda permite todas as conexões a partir da rede
interna para o exterior.
Tal como na anterior, foi necessário mudar a Direção para Inbound e Outbound. Neste caso, a
segunda regra não possui o serviço Telnet porque inclui todas as conexões, Figura 34.

Figura 34 - Telnet e tráfego da rede interna

2.4.3.5 Permitir o tráfego TCP para os portos 80 e 25

Nesta política, o objetivo era deixar passar tráfego TCP para os portos 80 e 25, protocolo http
e smtp, que será definido no serviço, isto apenas para a máquina A, ou seja, o Destination será
o Host A e o Source pode ser qualquer um.

16
2 Execução do trabalho

Figura 35 - Tráfego TCP

2.4.3.6 Aceitar tráfego DNS vindas das máquinas na rede interna

Na presente alínea, realizou-se uma regra que permite o tráfego da rede interna (Source) para o
Servidor DNS (Destination), Figura 36.

Figura 36 - Tráfego DNS

2.4.3.7 Verificar a diferença entre o bloqueio ou o rejeitar

A diferença entre o bloqueio (Deny) e o rejeitar (Reject) é que no caso do bloqueio o utilizador
não é notificado que tentou enviar pacotes para a rede e que o seu pedido não foi aceite, no caso
de ser rejeitado, é possível configurar o aviso que o utilizador vai receber ao fim de enviar o
pacote. Na Figura 37 pode-se observar o que aparece quando se altera de Deny para Reject
numa regra.

17
2 Execução do trabalho

Figura 37 - Deny e Reject

2.4.3.8 Nova regra

Para terminar, foi proposto criar uma regra numa situação especifica. A regra que o grupo
decidiu criar, foi uma que bloqueasse todo o tráfego ICMP apenas vindo do Host B para toda a
rede Pública.

Figura 38 - Regra criada pelo grupo

18
3 Conclusão

3 Conclusão
O desenvolvimento da presente ficha, permitiu-nos perceber a importância e a necessidade das
firewalles.

As firewalles são soluções importantes de seguranças, no entanto, não são capazes de proteger
totalmente uma rede de computadores. Tendo isso em conta, deve ser utilizado em conjunto
com elas outros recursos como as VPNs, antivírus ou sistema de deteção de a intrusos.

19

Você também pode gostar