Reject ou Drop sur iptables

Bonjour,

techniquement je pense qu’à la base on utilise drop pour passer inaperçu, mais désormais ya pas plus louche qu’un drop, parce que c’est forcément du filtré alors que si on envoi un reject on peut faire passer un port filtré pour un port fermé…
Vous en pensez quoi?

DROP, c’est malpoli mais ça peut ralentir un peu le scan de ports, qui va perdre du temps à attendre des réponses. Si le but est de faire croire que la machine est absente, alors il faut le faire pour tout paquet entrant non lié à une connexion existante sinon ça va se voir. Mais il y a des moyens de savoir si une machine est présente même si elle ne répond pas aux paquets IP, en exploitant les réponses ARP (ou leur équivalent NDP en IPv6) ou l’absence de message d’erreur ICMP “destination unreachable”.

REJECT, c’est plus poli puisqu’il y a une réponse. Attention néanmoins : si on veut que ça ressemble à une réponse normale, il faut le spécifier explicitement pour certains protocoles avec l’option --reject-with. Par exemple la réponse par défaut (ICMP port unreachable) n’est pas celle renvoyée par un port TCP fermé, il faut renvoyer un TCP Reset. Et il y a des types de paquets pour lesquels il ne faut pas renvoyer de réponse sinon cela prouve qu’il y a un pare-feu.

Bonsoir, je te remercie, donc quand on à un serveur apache qui tourne, forcément autant utiliser REJECT, ca sera plus utile pour les utilisateurs lambda?

Par contre tout à l’heure j’ai essayé de remplacer un iptables -P OUTPUT DROP par un REJECT sans règles autre qu’autorisation sur la loopback et pour les connexion déjà établies, et alors qu’avec le DROP je n’avais pas accès aux mise à jour (je n’avais pas autorisé les connexion http sortante ni udp) avec le iptables -P OUTPUT REJECT tout passait comme s’il n’y avait pas de parefeu.

Du coup le REJECT s’utilise exactement comme le DROP, ou bien l’erreur venait de moi même?

La cible REJECT est une extension qui ne peut être utilisée que dans les règles. On ne peut pas l’utiliser comme politique par défaut avec -P, le choix est entre DROP et ACCEPT.

merci

Et pour répondre (partiellement) à ton autre question,

Dans le cas d’un serveur on ne peut guère invoquer la nécessité de “passer inaperçu” pour justifier l’emploi de DROP.