Com relação à proteção de rede com iptables, julgue os itens...
Caso um servidor que atua como firewall e roteador entre duas redes tenha pacotes que passam de uma rede para outra e necessite filtrar esses pacotes, devem-se utilizar a tabela Filter e a chain Input.
Acredito que o erro esteja na chain, que deve ser FORWARD.
Errado !
Seria o gancho FORWARD, que permite processar pacotes que passam pelo gateway, entrando por uma interface e saindo por outra.
Só o que importa.
Segundo Nakamura(2010,p.428),"O modo de funcionamento do iptables pode ser resumido da seguinte maneira:
Se o destino for o próprio equipamento, o pacote é passado para a cadeia INPUT. Se ele passar pelas regras dessa cadeia, ele será repassado para o processo de destino local,que está esperando pelo pacote.
(...)
Se o forwarding estiver habilitado para outra interface de rede, o pacote irá para a cadeia FORWARD. Se o pacote passar pelas regras dessa cadeia, ele será aceito e repassado adiante. Normalmente,essa é a cadeia utilizada quando o Linux funciona como um firewall."
Bibliografia:
SEGURANÇA DE REDES EM AMBIENTES COOPERATIVOS-NAKAMURA-2010.
Alguém com uma explicação mais clara desta questão?O que se deve observar na questão é a parte "pacotes que passam de uma rede para outra". Isso indica que deverá ser usado o FORWARD. O INPUT é usado quando vc quer filtrar pacotes que vêm de um host diferente com destino ao próprio host. O OUTPUT é usado quando o emissor é o próprio host com destino a um host diferente. No caso da questão, o emissor e o receptor do pacote são hosts diferentes. Neste caso, usa-se o FORWARD.
Na documentação do IPTABLES, isso fica bem claro. Os itens 1, 2, 3 e 4 deste link explicam isso muito bem: http://www.netfilter.org/documentation/HOWTO/packet-filtering-HOWTO-6.html
Correto Diego olhando somente para o chain mata a questãoERRADO.
"...devem-se utilizar a tabela Filter e a chain Input."
Chain FORWARD seria o correto.
Assumindo que a questão trata da arquitetura do firewall linux netfilter, segue algumas observações:
Quando o pacote chega ao firewall ele passa inicialmente pela chain PREROUTING da tabela NAT. Na PRETOUTING é realizado o DNAT, ou seja é alterado o endereço IP de destino do pacote. Se o endereço IP de destino for o próprio firewall, ele será roteado para a chain INPUT da tabela FILTER, se o endereço IP de destino for outra rede, ele será roteado para a chain FORWARD também ta tabela FILTER.
Antes do roteamento o pacote sempre passa pela PREROUTING, pois só após a troca do IP de destino é possivel saber para onde envia-lo.
Tabela FILTER
Input : Filtra os pacotes que podem entrar no firewall.
Output : Filtra os pacotes que podem sair do firewall.
Forward: Filtra os pacotes que podem entrar e/ou sair entre as redes, ou seja que passam de uma rede para outra atravessando o firewall.
Tabela NAT
Prerouting (DNAT): Altera endereço IP de destino de um pacote.
Postrouting (SNAT): Altera endereço IP de origem de um pacote.
GABARITO ERRADO!
.
.
Tabela filter do IPTables:
São três, as possíveis chains:
--> INPUT: utilizada quando o destino final é a própria máquina filtro;
--> OUTPUT: qualquer pacote gerado na máquina filtro e que deva sair para a rede será tratado pela chain OUTPUT;
--> FORWARD: qualquer pacote que atravessa o filtro, oriundo de uma máquina e direcionado a outra, será tratado pela chain FORWARD.
.
.
http://eriberto.pro.br/iptables/3.html
Gabarito: E
A alternativa correta é a letra Errado.
Vamos entender o porquê.
Tema da questão: A questão aborda a utilização do iptables para filtragem de pacotes em um servidor que atua como firewall e roteador entre duas redes.
Conceitos-chave:
- iptables: uma ferramenta de linha de comando usada para configurar regras de filtragem de pacotes em sistemas Linux.
- Tabelas do iptables: Filter, Nat, Mangle, entre outras. A tabela Filter é a tabela padrão utilizada para filtragem de pacotes.
- Chains (correntes): são conjuntos de regras em uma tabela, como INPUT, FORWARD, e OUTPUT.
Análise da questão:
O enunciado menciona que um servidor atua como firewall e roteador entre duas redes e que pacotes precisam ser filtrados ao passar de uma rede para outra. A questão sugere a utilização da tabela Filter e da chain Input para realizar essa filtragem.
Explicação:
Dentro do iptables, a tabela Filter é realmente a correta para realizar a filtragem de pacotes. No entanto, a chain (corrente) utilizada depende da direção do tráfego:
- INPUT: Utilizada para filtrar pacotes que são destinados ao próprio servidor (localhost).
- OUTPUT: Utilizada para filtrar pacotes que estão saindo do servidor.
- FORWARD: Utilizada para filtrar pacotes que estão passando pelo servidor, mas não são destinados a ele, ou seja, pacotes que são roteados de uma rede para outra.
Portanto, para filtrar pacotes que estão passando de uma rede para outra, a chain correta a ser utilizada não é INPUT, mas sim FORWARD.
Conclusão:
A afirmação está incorreta porque, apesar de a tabela correta ser Filter, a chain correta para pacotes que passam de uma rede para outra é FORWARD, e não INPUT.
Espero que essa explicação tenha ajudado! Se precisar de mais alguma coisa, estou à disposição.