Que fait exactement la ligne -A INPUT -j REJECT --reject-with icmp-host-allowed-prohibed Iptables?

35

J'ai lu la documentation de redhat iptables mais je ne peux pas comprendre ce que font les lignes suivantes:

... -j REJECT **--reject-with icmp-host-prohibited**   
... -j REJECT **--reject-with icmp-host-prohibited** 
David
la source

Réponses:

37

La REJECTcible rejette le paquet. Si vous ne spécifiez pas le message ICMP à rejeter, le serveur renverra par défaut le port ICMP inaccessible (type 3, code 3).

--reject-withmodifie ce comportement pour renvoyer un message ICMP spécifique à l'hôte source. Vous pouvez trouver des informations sur --reject-withet les messages de rejet disponibles dans man iptables:

REJETER

Ceci est utilisé pour renvoyer un paquet d'erreur en réponse au paquet mis en correspondance: sinon, il équivaut à DROP. Il s'agit donc d'un TARGET de terminaison, clôturant le parcours de la règle. Cette cible n'est valide que dans les chaînes INPUT, FORWARD et OUTPUT, ainsi que dans les chaînes définies par l'utilisateur, appelées uniquement à partir de ces chaînes. L'option suivante contrôle la nature du paquet d'erreur renvoyé:

--reject-with type

Le type donné peut être:

  • icmp-net-inaccessible
  • icmp-host-inaccessible
  • icmp-port-inaccessible
  • icmp-proto-inaccessible
  • icmp-net-interdit
  • icmp-host-interdit ou
  • icmp-admin-prohibé (*)

qui renvoient le message d'erreur ICMP approprié (port-inaccessible est la valeur par défaut). L'option tcp-reset peut être utilisée sur des règles ne correspondant qu'au protocole TCP: un paquet RST TCP est renvoyé. Ceci est principalement utile pour bloquer les sondes ident (113 / tcp) qui se produisent fréquemment lors de l'envoi de courrier à des hôtes de messagerie endommagés (qui autrement n'acceptera pas votre courrier).

(*) L'utilisation de icmp-admin-prohib avec des noyaux qui ne le supportent pas donnera un DROP simple au lieu de REJECT

Chris Down
la source