Środowisko, w którym działam, to hosting na dużą skalę (kilkaset zarządzanych serwerów, prawie ogólnodostępne adresowanie itp. - więc wszystko, co mówi o zarządzaniu linkami ADSL, prawdopodobnie nie zadziała dobrze), a my „ szukam czegoś, co będzie wygodne w zarządzaniu zarówno podstawowym zestawem reguł (około 12 000 wpisów w iptables według bieżącej liczby), jak i zestawem reguł opartych na hoście, którymi zarządzamy dla klientów. Nasz podstawowy zestaw reguł routera zmienia się kilka razy dziennie, a zestawy reguł oparte na hoście zmieniają się może 50 razy w miesiącu (na wszystkich serwerach, więc może jedna zmiana na pięć serwerów miesięcznie).
Obecnie używamy filtergen (który jest ogólnie kulkami i super-kulkami w naszej skali działania), a w przeszłości korzystałem z zapory przy innych pracach (które byłyby lepsze niż filtergen, ale myślę, że trzeba być coś lepszego niż to).
„Musts”, które wymyśliliśmy dla każdego systemu zastępczego to:
- Musisz wygenerować zestaw reguł dość szybko (uruchomienie filtru na naszym zestawie reguł zajmuje 15-20 minut; to jest po prostu szalone) - jest to związane z następnym punktem:
- Musi wygenerować plik stylu iptables-restore i załadować go w jednym trafieniu, a nie wywoływać iptables dla każdej wstawki reguły
- Nie wolno zdejmować zapory na dłuższy czas, gdy zestaw reguł się ładuje (ponownie, jest to konsekwencja powyższego punktu)
- Musi obsługiwać IPv6 (nie wdrażamy niczego nowego, co nie jest kompatybilne z IPv6)
- Musi być wolny od DFSG
- Musi korzystać z plików konfiguracyjnych w postaci zwykłego tekstu (ponieważ wszystko uruchamiamy za pomocą kontroli wersji i za pomocą standardowych narzędzi do manipulacji tekstem w Uniksie są nasze SOP)
- Musi obsługiwać zarówno RedHata, jak i Debiana (preferowane w pakiecie, ale przynajmniej nie może być jawnie wrogi w stosunku do standardów obu dystrybucji)
- Musi obsługiwać możliwość uruchamiania dowolnych poleceń iptables w celu obsługi funkcji, które nie są częścią „języka ojczystego” systemu
Wszystko, co nie spełnia wszystkich tych kryteriów, nie będzie brane pod uwagę. Oto nasze „przyjemne do zrobienia”:
- Powinien obsługiwać „fragmenty” plików konfiguracyjnych (to znaczy, możesz upuścić stos plików w katalogu i powiedzieć zaporze ogniowej: „uwzględnij wszystko w tym katalogu w zestawie reguł”; intensywnie korzystamy z zarządzania konfiguracją i chcielibyśmy użyć tej funkcji do automatycznie dostarczaj reguły dotyczące usług)
- Powinny obsługiwać surowe tabele
- Powinno umożliwić określenie konkretnego ICMP zarówno w pakietach przychodzących, jak i regułach ODRZUCANIA
- Powinien z wdziękiem wspierać nazwy hostów, które kończą się na więcej niż jednym adresie IP (kilka razy przyłapaliśmy go na filtrach; to raczej królewski ból w tyłku)
- Im więcej opcjonalnych / dziwnych funkcji iptables obsługiwanych przez narzędzie (natywnie lub za pośrednictwem istniejących lub łatwo zapisywalnych wtyczek), tym lepiej. Od czasu do czasu używamy dziwnych funkcji iptables, a im więcej tych, które „po prostu działają”, tym lepiej dla wszystkich.
Odpowiedzi:
Jeśli być może chcesz przejść od podejścia opartego na regułach do sposobu „opisywania wymaganego stanu końcowego”, zajrzyj do fwbuildera.
Plusy:
Cons:
Link: http://www.fwbuilder.org
źródło
Napisz swoje własne. poważnie - w tej skali jest to uzasadnione.
używaj ipset i / lub wielu iptable tabel / podtabeli. w miarę możliwości przeładuj tylko niektóre podtabele / niektóre zestawy ipset - przyspieszy to rekonfigurację.
prawdopodobnie już to robisz, ale nadal warto o tym wspomnieć - użyj zagnieżdżonych tabel, aby zmniejszyć obciążenie routera i średnią liczbę wyszukiwań potrzebnych do pakietów ustanawiających nowe połączenia. oczywiście-DO PRZODU -m stan - stan USTANOWIONY, POWIĄZANY jest twoją najwyższą regułą.
źródło
święte kule (utrzymywanie tematu przy życiu!) człowiek ... 12.000 podstawowych zasad?
Zakładam, że rozważałeś wszystkie proste opcje, takie jak po prostu upuszczenie zestawów do CVS? Lalek czy CFengine?
Szczerze mówiąc, z szerokiego przeglądu, który podałeś, zdecydowanie zalecam ponowną ocenę projektu sieci. Prawdopodobnie jestem trochę zbyt uproszczony, ale po prostu nie mogę pojąć projektu, który wymagałby 12k reguł iptables. To naprawdę brzmi jak coś, co skorzystałoby bardziej na rozwiązaniu typu SLB niż lepszy sposób zarządzania regułami zapory.
Na marginesie, w jaki sposób dodać komentarz do dodania „odpowiedzi”?
źródło
12000 zasad? jesteś szalony? Czy nie masz problemów z wydajnością przy takiej ilości filtrowania? Nie rozumiem, dlaczego potrzebujesz 12 000 reguł? Jak sprawdzisz, czy zestaw reguł faktycznie egzekwuje zasady?
Jakie są zasady?
Jak testujesz swoją polisę?
12 000 reguł prawdopodobnie łamie każdą zasadę bezpieczeństwa w książce.
źródło
możesz także wypróbować rozwiązanie SAAS do zarządzania iptables -> https://www.efw.io/Forum . Może także integrować się z chmurą AWS.
źródło