SóProvas


ID
1055068
Banca
CESPE / CEBRASPE
Órgão
BACEN
Ano
2013
Provas
Disciplina
Redes de Computadores
Assuntos

Com relação à proteção de rede com iptables, julgue os itens que se seguem.

Mediante a regra abaixo, bloqueiam-se pacotes que tenham origem na rede 192.168.0.0/24 e retorna-se uma mensagem ao host informando que foi recebido o bloqueio do tipo ICMP.
iptables -t filter -A INPUT -p tcp -s 192.168.0.0/24 -j DROP

Alternativas
Comentários
  • Questão errada de começo a fim.

    Drop --> Significa que o pacote sera descartado, sem passar po mais nenhuma regra ou chain. O remetente do pacote não sera avisado que ele foi descartado.

    Reject --> Atua da mesma forma que o DROP, mas ele avisa o remetente que o pacote foi descartado.


    Para bloquear pacotes que tenha origem a rede 192.168.0.0/24, seria uma regra de saída ou seja OUTPUT.


    iptables -A OUTPUT -p tcp -s 192.168.0.0/24 -j REJECT

  • Ei de descordar do colega! 

    A questão realmente está errada, porém o motivo é exclusivo devido ao trecho: "e retorna-se uma mensagem ao host informando que foi recebido o bloqueio do tipo ICMP." Pois, realmente para que o host que enviou o pacote seja notificado deve-se usar a opção -j REJECT e não -j DROP. Porém, a opção -A INPUT está correta para filtrar os pacotes que tem origem em 192.168.0.0. já que INPUT filtra todos os pacotes de que chegam ao servidor oriundos da origem determinada no parâmetro INPUT. Vejamos as definições abaixo:

    -A INPUT: Especifica que a regra se aplica a pacotes de entrada, ou seja, pacotes recebidos pelo servidor, em qualquer interface.

    -A OUTPUT: A regra se aplica a pacotes de saída, transmitidos pelo próprio servidor.

    -A FORWARD: Este parâmetro é usado ao compartilhar a conexão com a Internet, permitindo que os micros da rede local.

    -j: É usado no final de cada regra, especificando uma ação, que pode ser:

    -j ACCEPT : Aceita o pacote. Ele é encaminhado ao destino sem passar pelas demais regras.

    -j REJECT : Rejeita educadamente o pacote, enviando um pacote de resposta ao emissor. Quando uma porta está fechada em modo reject, o emissor recebe rapidamente uma resposta como "connect to host 192.168.1.1 port 22: Connection refused".

    -j DROP: O DROP é mais enfático. O pacote é simplesmente descartado, sem aviso. O emissor fica um longo tempo esperando, até que eventualmente recebe um erro de time-out.

    -j LOG: Este último parâmetro permite logar conexões. É interessante usar esta regra principalmente em portas muito visadas, como a do SSH, pois assim você tem uma lista de todos os endereços que acessaram seu servidor na porta especificada. Para ativar o log, você deve duplicar a regra que abre a porta, usando a opção "-j LOG" na primeira e "-j ACCEPT" na segunda, como em:

    iptables -A INPUT -p tcp --dport 22 -j LOG
    iptables -A INPUT -p tcp --dport 22 -j ACCEPT
    

    As mensagens são gravadas no arquivo "/var/log/messages" de forma bastante detalhada, incluindo a data e hora da conexão, o IP e MAC do micro que fez a conexão (SRC), além da porta (DPT). Você pode ver o mesmo log, porém com as entradas escritas de forma resumida, usando o comando "dmesg".

     acessem através do servidor. Os pacotes de outros micros, encaminhados pelo servidor, são tratados como "FORWARD", diferentemente dos pacotes transmitidos pelo próprio servidor, que são tratados como "OUTPUT". Você pode definir regras diferentes para cada situação.

    Ref: http://www.hardware.com.br/dicas/resumo-iptables.html.

    Espero ter ajudado!


  • Ei de descordar do colega! 

    A questão realmente está errada, porém o motivo é exclusivo devido ao trecho: "e retorna-se uma mensagem ao host informando que foi recebido o bloqueio do tipo ICMP." Pois, realmente para que o host que enviou o pacote seja notificado deve-se usar a opção -j REJECT e não -j DROP. Porém, a opção -A INPUT está correta para filtrar os pacotes que tem origem em 192.168.0.0. já que INPUT filtra todos os pacotes de que chegam ao servidor oriundos da origem determinada no parâmetro INPUT. Vejamos as definições abaixo:

    "-A INPUT: Especifica que a regra se aplica a pacotes de entrada, ou seja, pacotes recebidos pelo servidor, em qualquer interface.

    -A OUTPUT: A regra se aplica a pacotes de saída, transmitidos pelo próprio servidor.

    -A FORWARD: Este parâmetro é usado ao compartilhar a conexão com a Internet, permitindo que os micros da rede local.

    -j: É usado no final de cada regra, especificando uma ação, que pode ser:

    -j ACCEPT : Aceita o pacote. Ele é encaminhado ao destino sem passar pelas demais regras.

    -j REJECT : Rejeita educadamente o pacote, enviando um pacote de resposta ao emissor. Quando uma porta está fechada em modo reject, o emissor recebe rapidamente uma resposta como "connect to host 192.168.1.1 port 22: Connection refused".

    -j DROP: O DROP é mais enfático. O pacote é simplesmente descartado, sem aviso. O emissor fica um longo tempo esperando, até que eventualmente recebe um erro de time-out.

    -j LOG: Este último parâmetro permite logar conexões. É interessante usar esta regra principalmente em portas muito visadas, como a do SSH, pois assim você tem uma lista de todos os endereços que acessaram seu servidor na porta especificada. Para ativar o log, você deve duplicar a regra que abre a porta, usando a opção "-j LOG" na primeira e "-j ACCEPT" na segunda, como em:

    iptables -A INPUT -p tcp --dport 22 -j LOGiptables -A INPUT -p tcp --dport 22 -j ACCEPT

    As mensagens são gravadas no arquivo "/var/log/messages" de forma bastante detalhada, incluindo a data e hora da conexão, o IP e MAC do micro que fez a conexão (SRC), além da porta (DPT). Você pode ver o mesmo log, porém com as entradas escritas de forma resumida, usando o comando "dmesg".

    Ainda é dado um exemplo para confirmar a função do -A INPUT:

    exemplo da regra que bloqueia qualquer tipo de conexão proveniente de um determinado endereço:

    iptables -A INPUT -p ALL -s 88.191.79.206 -j DROP "

    Ref: http://www.hardware.com.br/dicas/resumo-iptables.html.

    Espero ter ajudado!


  • Assertiva ERRADA. 


    O comando drop não retorna nenhuma mensagem de erro ao remetente. Para quem mandou a mensagem literalmente sumiu sem deixar rastros. 
  • -j DROP  difere de -j REJECT.  O primeiro descarta silenciosamente. O segundo é mais polido e devolve reposta ao host.

  • -A INPUT: Especifica que a regra se aplica a pacotes de entrada, ou seja, pacotes recebidos pelo servidor, em qualquer interface.

    -A OUTPUT: A regra se aplica a pacotes de saída, transmitidos pelo próprio servidor.

    -A FORWARD: Este parâmetro é usado ao compartilhar a conexão com a Internet, permitindo que os micros da rede local.

     

    -j: É usado no final de cada regra, especificando uma ação, que pode ser:

    -j ACCEPT : Aceita o pacote. Ele é encaminhado ao destino sem passar pelas demais regras.

    -j REJECT : Rejeita educadamente o pacote, enviando um pacote de resposta ao emissor. Quando uma porta está fechada em modo reject, o emissor recebe rapidamente uma resposta como "connect to host 192.168.1.1 port 22: Connection refused".

    -j DROP: O DROP é mais enfático. O pacote é simplesmente descartado, sem aviso. O emissor fica um longo tempo esperando, até que eventualmente recebe um erro de time-out.

    -j LOG: Este último parâmetro permite logar conexões.

     

     

    I FORWARD   (-I: insere uma REGRA p/ forward - Se nenhum argumento fosse especificado a regra seria inserida no topo da corrente)
    –s 10.10.10.10 (-s: define a fonte (source); Se fosse "-d" seria destino (destination) seguido do IP )
    –p udp             (-p: define o protocolo - que pode ser qualquer protocolo listado no arquivo /etc/protocols)
    --sport 53        (--sport: define a port de origem - sendo 53 a porta padrão do DNS; dever ser usado ANTES DE UMA AÇÃO -j )

    --dport 
    –j DENY         (-j: ação que será executada - temos ACCEPT, DROP, QUEUE, RETURN, REJECT, LOG, DNAT, MASQUERADE..)