web-dev-qa-db-fra.com

Que fait exactement -A INPUT -j REJECT --reject-with icmp-Host-prohibed Iptables line?

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

... -j REJECT **--reject-with icmp-Host-prohibited**   
... -j REJECT **--reject-with icmp-Host-prohibited** 
36
David

La cible REJECT 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-with modifie ce comportement pour renvoyer un message ICMP spécifique à l'hôte source. Vous pouvez trouver des informations sur --reject-with et les messages de rejet disponibles dans man iptables :

REJETER

Ceci est utilisé pour renvoyer un paquet d'erreur en réponse au paquet correspondant: sinon c'est équivalent à DROP donc c'est un TARGET de terminaison, mettant fin à la traversée de règle. Cette cible n'est valide que dans les chaînes INPUT, FORWARD et OUTPUT et les chaînes définies par l'utilisateur qui ne sont appelées qu'à 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-prohibé
  • icmp-Host-prohibé ou
  • icmp-admin-prohibé (*)

qui renvoient le message d'erreur ICMP approprié (le port inaccessible est la valeur par défaut). L'option tcp-reset peut être utilisée sur des règles qui ne correspondent qu'au protocole TCP: cela provoque un TCP paquet RST à renvoyer. 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 cassés (qui n'accepteront pas votre courrier autrement).

(*) L'utilisation d'icmp-admin-prohibé avec des noyaux qui ne le prennent pas en charge entraînera un DROP simple au lieu de REJECT

38
Chris Down