Firewall 1.0 kiadás

Megjelenik a dinamikusan vezérelt tűzfal tűzfal 1.0 kiadása, amely az nftables és az iptables csomagszűrők feletti wrapper formájában van megvalósítva. A Firewalld háttérfolyamatként fut, amely lehetővé teszi a csomagszűrő szabályok dinamikus megváltoztatását D-buszon keresztül anélkül, hogy újra kellene töltenie a csomagszűrő szabályokat, vagy meg kellene szakítania a létrehozott kapcsolatokat. A projektet már számos Linux disztribúció használja, beleértve az RHEL 7+, a Fedora 18+ és a SUSE/openSUSE 15+. A tűzfalkód Python nyelven íródott, és a GPLv2 licenc alatt található.

A tűzfal kezelésére a firewall-cmd segédprogramot használják, amely a szabályok létrehozásakor nem IP-címeken, hálózati interfészeken és portszámokon alapul, hanem a szolgáltatások nevein (például az SSH eléréséhez szükséges futtassa a „firewall-cmd —add —service= ssh” parancsot az SSH bezárásához – „firewall-cmd –remove –service=ssh”). A tűzfal konfigurációjának megváltoztatásához a firewall-config (GTK) grafikus felület és a firewall-applet (Qt) kisalkalmazás is használható. A tűzfalkezelés támogatása a D-BUS API tűzfalon keresztül elérhető olyan projektekben, mint a NetworkManager, libvirt, podman, docker és fail2ban.

A verziószám jelentős változása olyan változásokkal jár, amelyek megszakítják a visszafelé kompatibilitást és megváltoztatják a zónákkal való munkavégzés viselkedését. A zónában meghatározott összes szűrési paraméter mostantól csak a tűzfalat futtató gazdagépnek címzett forgalomra vonatkozik, és a tranzitforgalom szűréséhez házirendek megadása szükséges. A legszembetűnőbb változások:

  • A háttérprogramot, amely lehetővé tette, hogy az iptables tetején működjön, elavultnak nyilvánították. Az iptables támogatása a belátható jövőben megmarad, de ez a háttér nem kerül fejlesztésre.
  • A zónán belüli továbbítási mód alapértelmezés szerint engedélyezve van és aktiválva van minden új zónánál, lehetővé téve a csomagok szabad mozgását a hálózati interfészek vagy egy zónán belüli forgalmi források között (nyilvános, blokkolt, megbízható, belső stb.). A régi viselkedés visszaállításához és a csomagok egy zónán belüli továbbításának megakadályozásához használja a „tűzfal-cmd –permanent –zone public –remove-forward” parancsot.
  • A címfordítással (NAT) kapcsolatos szabályok átkerültek az „inet” protokollcsaládba (korábban hozzáadták az „ip” és „ip6” családokhoz, ami miatt az IPv4 és az IPv6 szabályok megkettőzésére volt szükség). A változtatás lehetővé tette számunkra, hogy megszabaduljunk a duplikátumoktól az ipset használatakor – az ipset bejegyzések három példánya helyett most egyet használunk.
  • A "--set-target" paraméterben megadott "default" művelet most egyenértékű a "reject"-vel, azaz. minden olyan csomag, amely nem esik a zónában meghatározott szabályok alá, alapértelmezés szerint blokkolva lesz. Kivételt csak az ICMP-csomagok tesznek, amelyek továbbra is átengedhetők. A nyilvánosan elérhető „megbízható” zóna régi viselkedésének visszaállításához a következő szabályokat használhatja: firewall-cmd —permanent —new-policy allowForward firewall-cmd —permanent —policy allowForward —set-target ACCEPT firewall-cmd —permanent — szabályzat allowForward —add-ingress -zone public firewall-cmd —permanent —policy enableForward —add-egress-zone megbízható tűzfal-cmd —újratöltés
  • A pozitív prioritású házirendek most közvetlenül a „--set-target catch-all” szabály végrehajtása előtt kerülnek végrehajtásra, azaz. az utolsó csepp hozzáadása előtti pillanatban elutasítani vagy elfogadni a szabályokat, beleértve a „--set-target drop|reject|accept” zónákat is.
  • Az ICMP blokkolás mostantól csak az aktuális gazdagépnek címzett bejövő csomagokra vonatkozik (bemenet), és nem érinti a zónák között átirányított csomagokat (előre).
  • Eltávolították a tftp-kliens szolgáltatást, amelyet a TFTP protokollhoz tartozó kapcsolatok nyomon követésére terveztek, de használhatatlan formában.
  • A „közvetlen” interfész elavult, lehetővé téve a kész csomagszűrő szabályok közvetlen beillesztését. Ennek az interfésznek az igénye megszűnt, miután hozzáadták az átirányított és kimenő csomagok szűrésének lehetőségét.
  • Hozzáadott CleanupModulesOnExit paraméter, amely alapértelmezés szerint „no”-ra módosult. Ezzel a paraméterrel szabályozhatja a kernelmodulok kiürítését a tűzfal leállása után.
  • Engedélyezett az ipset használata a célrendszer (célállomás) meghatározásakor.
  • Meghatározások hozzáadva a WireGuard, Kubernetes és netbios-ns szolgáltatásokhoz.
  • Megvalósított automatikus kiegészítési szabályok a zsh számára.
  • A Python 2 támogatása megszűnt.
  • A függőségek listája lerövidült. A tűzfal működéséhez a Linux kernel mellett az egyetlen python könyvtárra, a dbus, gobject és nftablesra van szükség, az ebtables, ipset és iptables csomagok pedig nem kötelezőek. A python-könyvtárak dekorátora és szelvénye eltávolítva a függőségek közül.

Forrás: opennet.ru

Hozzászólás