Question iptables: changer de politique ou utiliser une règle fourre-tout?


Que faites-vous lorsque vous configurez iptables: changez la politique par défaut (iptables -P INPUT DROP, par exemple) ou ajouter une règle fourre-tout à la fin du jeu de règles (iptables -A INPUT DROP)? Si vous en préférez un en particulier, quelle est la raison de votre préférence?

C’est peut-être une question trop subjective pour ce forum, mais il ya peut-être de bonnes raisons difficiles de choisir l’une sur l’autre que je ne connais pas.

Contrairement à la politique que j'ai, il est probablement plus facile de se verrouiller hors du serveur en raison d'un optimisme excessif. iptables -F. Pour cela, il est probablement plus facile de supprimer la règle fourre-tout sans s'en rendre compte, en laissant le serveur grand ouvert (cela m’est arrivé par le passé).

Il est vrai que vous ne devez pas compter sur le pare-feu comme seule protection contre Internet (la plupart du temps, vous pouvez associer des services réseau internes uniquement à localhost ou au réseau interne, par exemple), mais vous devez parfois exposer services publics vers un réseau source spécifique, etc.

Personnellement, j'ai tendance à préférer le premier si vous écrivez un jeu de règles à partir de rien, mais vous vous en tenez à tout ce qui est déjà en place si vous en mettez à jour un existant.


5
2018-05-09 14:31


origine




Réponses:


J'utilise les deux, définir la politique et une règle de suppression finale, parce que je suis hardcore comme ça.

J'ai mes règles définies dans un script que j'appelle et met à jour. Je n’ai jamais appelé directement iptables directement d’autre part pour lister occasionnellement les règles / statistiques. Je n'ai jamais vraiment vu la raison pour laquelle l'un est meilleur que l'autre.


4
2018-05-09 15:56



Merci pour votre réponse, c'est ce que je pensais. Et vous avez raison - aucune raison de ne pas utiliser les deux non plus, probablement. - Eduardo Ivanec
En fait, il y a une raison d'utiliser les deux. Il n'y a pas REJECTla politique, donc si vous êtes un gars sympa la dernière capture tous règle est REJECT (ce qui est bien car cela échouera vite!), et si vous êtes redoutable (comme moi) vous ajoutez un politique de DROP - serverhorror


En termes de compromis, je préférerais avoir une machine sans pare-feu pendant un certain temps, par accident (ce qui est le risque d'avoir -P PERMET si vous effacez vos règles et oubliez ou similaire) que d'avoir une machine. déposer le réseau par accident (conséquence d'un vidage si la règle est DROP). Mon raisonnement est que le pare-feu n’est pas la seule méthode de sécurisation de mes serveurs, le dysfonctionnement du pare-feu est donc une erreur plutôt que une catastrophe. Un service indisponible le plus souvent pour les utilisateurs est une catastrophe.


2
2018-05-20 12:51



C'est également vrai, mais que préféreriez-vous avoir: une heure d'indisponibilité du serveur pendant que quelqu'un du site redémarre le serveur, ou quelques mois de disponibilité Internet complète de chaque port lorsque vous éliminez les règles sans le remarquer? Cela dépend peut-être du nombre de ports que vous êtes obligés de laisser ouverts, bien sûr. - Eduardo Ivanec
C'est une question de préférence. Je préférerais le dernier point, car il s'agit d'un risque théorique plutôt que d'un problème réel ayant un impact sur les services. - jmtd


Voici deux raisons pour lesquelles avoir une règle fourre-tout peut être préférable:

  1. La stratégie par défaut a des options limitées. Si vous ne voulez pas que le paquet passe, vous avez un choix: DROP (le paquet frappe le sol). Dans la règle générale, vous pouvez utiliser REJECT qui peut envoyer une réponse ICMP.
  2. Si vous avez des scripts qui analysent la sortie de iptables -L, la règle fourre-tout apparaît dans le même format que toutes les autres règles, ce qui facilite l'analyse.

2
2018-05-27 16:38



Points intéressants, merci. - Eduardo Ivanec


Quelque chose que je viens de remarquer: la stratégie DROP vous permet d’ajouter des règles au jeu de règles en utilisant iptables -A après coup. Cela peut être pratique car cela vous permet de garder le jeu de règles ordonné facilement et peut être particulièrement utile lorsque vous construisez le jeu de règles à la volée (en le sauvegardant ensuite avec iptables-save ou quelque chose comme ça).


1
2018-06-20 12:53