50 votes

ufw pare-feu Linux différence entre rejet et refus

Utiliser le pare-feu simple ufw Je peux définir des ports/services à rejeter et à refuser.

Par exemple :

ufw deny www

ufw reject www

Quelqu'un peut-il m'expliquer la différence entre ces deux approches ?

82voto

thkala Points 36148

"deny" utilise la fonction DROP iptables qui rejette silencieusement les paquets entrants.

"reject" utilise la cible REJECT d'iptables, qui renvoie un paquet d'erreur à l'expéditeur du paquet rejeté.

A partir de la page de manuel ufw :

Il est parfois souhaitable de laisser le s plutôt que de l'ignorer. Dans ce cas, il convient d'utiliser rejeter au lieu de deny.

Du point de vue de l'utilisateur/du programme qui tente de se connecter à votre serveur :

  • L'option "deny" permet au programme de rester en attente jusqu'à ce que la tentative de connexion soit interrompue, un peu plus tard.

  • "rejeter" produira un message immédiat et très informatif "Connexion refusée".

EDIT :

Du point de vue de la sécurité, le "refus" est légèrement préférable. Il forcera chaque connexion d'un attaquant potentiel à dépasser le temps imparti, ce qui ralentira l'exploration de votre serveur.

Les attaquants expérimentés et/ou déterminés ne seront pas vraiment affectés - ils sont généralement patients et il existe de toute façon plusieurs façons de gérer le ralentissement. Cela pourrait décourager les aspirants occasionnels qui n'ont même pas pris la peine de lire les nmap Mais il n'y a pas de page de manuel.

"deny" permet également d'économiser un peu de bande passante sur la liaison montante en n'envoyant pas le paquet d'erreurs. Cela peut être important sur des connexions réseau asymétriques où une attaque DoS pourrait simplement saturer la liaison montante - généralement plus étroite - avec des paquets d'erreur.

D'un autre côté, il est un peu plus poli de faire savoir aux gens que vous rejetez leurs connexions. Une connexion refusée permet aux gens de savoir qu'il s'agit très probablement d'une décision politique permanente, plutôt que d'une question de réseau à court terme, par exemple.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X