Die Umgebung, in der ich tätig bin, ist ein umfangreicher Webhosting-Vorgang (mehrere hundert verwaltete Server, fast alle öffentlichen Adressen usw. - alles, was über das Verwalten von ADSL-Links spricht, funktioniert wahrscheinlich nicht gut). Wir suchen nach einer Lösung, mit der Sie sowohl den zentralen Regelsatz (derzeit ca. 12.000 Einträge in iptables) als auch die hostbasierten Regelsätze, die wir für Kunden verwalten, komfortabel verwalten können. Unser zentraler Router-Regelsatz ändert sich einige Male am Tag, und die hostbasierten Regelsätze ändern sich möglicherweise 50 Mal im Monat (auf allen Servern, also möglicherweise eine Änderung pro fünf Server pro Monat).
Wir verwenden derzeit Filtergen (das sind Bälle im Allgemeinen und Super-Bälle in unserem Maßstab) und ich habe in der Vergangenheit bei anderen Jobs Shorewall verwendet (was Filtergen vorzuziehen wäre, aber ich denke, es muss sein etwas da draußen, das besser ist).
Die "Musts", die wir uns für jedes Ersatzsystem ausgedacht haben, sind:
- Muss ziemlich schnell einen Regelsatz generieren (ein Filter-Lauf in unserem Regelsatz dauert 15-20 Minuten; das ist einfach verrückt) - das hängt mit dem nächsten Punkt zusammen:
- Es muss eine Iptables-Restore-Stildatei generiert und diese in einem Treffer geladen werden, und nicht für jede Regeleinfügung muss Iptables aufgerufen werden
- Die Firewall darf nicht über einen längeren Zeitraum heruntergefahren werden, während der Regelsatz neu geladen wird (dies ist wiederum eine Konsequenz aus dem obigen Punkt).
- Muss IPv6 unterstützen (wir stellen nichts Neues bereit, das nicht IPv6-kompatibel ist)
- Muss DFSG-frei sein
- Muss Nur-Text-Konfigurationsdateien verwenden (da wir alles über die Revisionskontrolle ausführen und die Verwendung von Standard-Unix-Tools zur Textbearbeitung unsere SOP sind)
- Muss sowohl RedHat als auch Debian unterstützen (bevorzugt verpackt, aber zumindest nicht offen gegen die Standards der beiden Distributionen sein)
- Muss die Möglichkeit unterstützen, beliebige iptables-Befehle auszuführen, um Funktionen zu unterstützen, die nicht Teil der "Muttersprache" des Systems sind.
Alles, was diese Kriterien nicht erfüllt, wird nicht berücksichtigt. Folgendes sind unsere "nice to haves":
- Sollte die Konfigurationsdatei "Fragmente" unterstützen (das heißt, Sie können einen Stapel von Dateien in ein Verzeichnis ablegen und der Firewall sagen, "alles in diesem Verzeichnis in den Regelsatz aufnehmen"; wir verwenden das Konfigurationsmanagement ausgiebig und möchten diese Funktion nutzen, um dienstspezifische Regeln automatisch bereitstellen)
- Sollte rohe Tabellen unterstützen
- Ermöglicht die Angabe eines bestimmten ICMP sowohl in eingehenden Paketen als auch in REJECT-Regeln
- Sollte Hostnamen, die sich zu mehr als einer IP-Adresse auflösen, mit Würde unterstützen (wir wurden von dieser ein paar Mal mit filtergen erwischt; es ist ein ziemlich königlicher Schmerz im Hintern)
- Je mehr optionale / seltsame iptables-Funktionen das Tool unterstützt (entweder nativ oder über vorhandene oder einfach zu beschreibende Plugins), desto besser. Wir verwenden ab und zu seltsame Funktionen von iptables, und je mehr davon "nur funktionieren", desto besser für alle.
Antworten:
Wenn Sie vielleicht einen Schritt von einem regelbasierten Ansatz zu einer Methode zur Beschreibung des erforderlichen Endzustands machen möchten, schauen Sie sich fwbuilder an.
Vorteile:
Nachteile:
Link: http://www.fwbuilder.org
quelle
schreibe dein Eigenes. ernsthaft - in dieser Größenordnung ist es vernünftig.
benutze ipset und / oder viele iptable Tabellen / Untertabellen. Laden Sie nach Möglichkeit nur einige Untertabellen / einige Sätze von ipset neu - dies beschleunigt die Neukonfiguration.
Wahrscheinlich tun Sie es bereits, aber es ist trotzdem erwähnenswert - verwenden Sie verschachtelte Tabellen, um die Auslastung des Routers und die durchschnittliche Anzahl von Suchvorgängen zu verringern, die zum Einrichten neuer Verbindungen für Pakete erforderlich sind. Offensichtlich - A FORWARD - m state - state ESTABLISHED, RELATED ist Ihre oberste Regel.
quelle
Heilige Bälle (das Thema am Leben erhalten!) Mann ... 12.000 Grundregeln?
Ich nehme an, Sie haben alle einfachen Optionen in Betracht gezogen, wie einfach die Sets in CVS abzulegen. Puppet oder CFengine?
In Anbetracht der von Ihnen gegebenen allgemeinen Übersicht würde ich dringend empfehlen, Ihr Netzwerkdesign neu zu bewerten. Ich bin wahrscheinlich ein bisschen zu simpel, aber ich kann einfach kein Design ergründen, das 12k-Iptables-Regeln erfordern würde. Dies hört sich wirklich nach etwas an, das von einer SLB-Lösung mehr profitiert als von einer besseren Verwaltung der Firewall-Regeln.
Wie fügt man einen Kommentar oder eine "Antwort" hinzu?
quelle
12000 Regeln? bist du verrückt? Haben Sie keine Leistungsprobleme mit dieser Filterung? Ich kann nicht sehen, warum Sie 12.000 Regeln benötigen würden? Wie vergewissern Sie sich, dass Ihr Regelsatz die Richtlinie tatsächlich erzwingt?
Was ist die Politik?
Wie testen Sie Ihre Richtlinie?
12.000 Regeln brechen möglicherweise jede Sicherheitsregel im Buch.
quelle
Sie können auch eine SAAS-Lösung zum Verwalten von iptables ausprobieren -> https://www.efw.io/Forum. Sie kann auch die AWS-Cloud-Integration durchführen.
quelle