Firewalld 1.0 хувилбар

nftables болон iptables пакет шүүлтүүрүүд дээр боодол хэлбэрээр хэрэгжсэн, динамик удирдлагатай галт ханын галт ханын 1.0 хувилбарыг танилцуулж байна. Галт хана нь багц шүүлтүүрийн дүрмийг дахин ачаалах эсвэл тогтоосон холболтыг таслахгүйгээр D-Bus-ээр дамжуулан пакет шүүлтүүрийн дүрмийг динамикаар өөрчлөх боломжийг олгодог суурь процесс хэлбэрээр ажилладаг. Уг төсөл нь RHEL 7+, Fedora 18+, SUSE/openSUSE 15+ зэрэг олон Linux түгээлтэд аль хэдийн ашиглагдаж байна. Галт ханын код нь Python дээр бичигдсэн бөгөөд GPLv2 лицензтэй.

Галт ханыг удирдахын тулд галт хана-cmd хэрэгслийг ашигладаг бөгөөд дүрмийг бий болгохдоо IP хаяг, сүлжээний интерфейс, портын дугаар дээр биш харин үйлчилгээний нэр дээр суурилдаг (жишээлбэл, SSH хандалтыг нээхийн тулд та SSH-г хаахын тулд "галт хана-cmd -add -service= ssh"-г ажиллуулаарай - "галт хана-cmd -remove -service=ssh"). Галт ханын тохиргоог өөрчлөхийн тулд галт ханын тохиргоо (GTK) график интерфэйс болон галт хана-аплет (Qt) апплетыг бас ашиглаж болно. D-BUS API галт ханаар дамжуулан галт ханын удирдлагын дэмжлэгийг NetworkManager, libvirt, podman, docker, fail2ban зэрэг төслүүдэд ашиглах боломжтой.

Хувилбарын дугаарын мэдэгдэхүйц өөрчлөлт нь хоцрогдсон нийцтэй байдлыг эвдэж, бүстэй ажиллах зан төлөвийг өөрчилсөн өөрчлөлтүүдтэй холбоотой юм. Бүсэд тодорхойлсон шүүлтүүрийн бүх параметрүүд нь одоо зөвхөн галт хана ажиллаж байгаа хост руу чиглэсэн урсгалд хэрэглэгдэх бөгөөд дамжин өнгөрөх урсгалыг шүүх нь бодлогыг тохируулах шаардлагатай. Хамгийн мэдэгдэхүйц өөрчлөлтүүд:

  • Энэ нь iptables дээр ажиллах боломжийг олгосон backend нь хуучирсан гэж зарлагдлаа. Iptables-ийн дэмжлэгийг ойрын ирээдүйд хадгалах боловч энэ арын хэсгийг хөгжүүлэхгүй.
  • Бүс дотор дамжуулах горим нь бүх шинэ бүсүүдэд анхдагчаар идэвхжсэн бөгөөд нэг бүсийн (нийтийн, блок, итгэмжлэгдсэн, дотоод гэх мэт) сүлжээний интерфэйсүүд эсвэл хөдөлгөөний эх үүсвэрүүдийн хооронд пакетуудыг чөлөөтэй шилжүүлэх боломжийг олгодог. Хуучин үйлдлийг буцаан авч, пакетуудыг нэг бүс дотор дамжуулахаас сэргийлэхийн тулд та "галт хана-cmd - байнгын - бүс нийтийн - устгах - урагшлуулах" командыг ашиглаж болно.
  • Хаягийн орчуулгатай (NAT) холбоотой дүрмийг "inet" протоколын гэр бүлд шилжүүлсэн (өмнө нь "ip" болон "ip6" гэр бүлд нэмэгдсэн нь IPv4 болон IPv6-д зориулсан дүрмийг давхардуулах шаардлагатай болсон). Өөрчлөлт нь ipset-ийг ашиглах үед давхардлаас ангижрах боломжийг бидэнд олгосон - ipset оруулгуудын гурван хуулбарын оронд одоо нэг нь ашиглагдаж байна.
  • "--set-target" параметрт заасан "анхдагч" үйлдэл нь одоо "татгалзах" -тай тэнцүү байна, i.e. Тухайн бүсэд тодорхойлсон дүрмийн дагуу ороогүй бүх пакетууд анхдагчаар хаагдах болно. Зөвхөн ICMP пакетуудад үл хамаарах зүйл хийгдсэн бөгөөд тэдгээр нь нэвтрэхийг зөвшөөрсөн хэвээр байна. Олон нийтэд нээлттэй "итгэмжлэгдсэн" бүсийн хуучин үйлдлийг буцаахын тулд та дараах дүрмийг ашиглаж болно: галт хана-cmd —байнгын —шинэ-бодлого allowForward галт хана-cmd —байнгын — бодлого allowForward —тогтоох-зорилтот ACCEPT галт хана-cmd —байнгын — бодлого allowForward —нэмэлт оруулах -бүс нийтийн галт хана-cmd —байнгын —бодлого allowForward —add-egress-бүс итгэмжлэгдсэн галт хана-cmd —дахин ачаалах
  • Эерэг тэргүүлэх бодлого нь одоо "--set-target catch-all" дүрмийг хэрэгжүүлэхээс өмнө шууд хэрэгждэг, өөрөөр хэлбэл. эцсийн уналтыг нэмэхээс өмнө "--set-target drop|reject|accept"-г ашигладаг бүсүүдийг оруулаад, татгалзах эсвэл зөвшөөрөх.
  • ICMP блоклох нь одоо зөвхөн одоогийн хост руу (оролт) хаягласан ирж буй пакетуудад хамаарах бөгөөд бүсүүдийн хооронд дахин чиглүүлсэн пакетуудад нөлөөлөхгүй.
  • TFTP протоколын холболтыг хянах зориулалттай tftp-клиент үйлчилгээг устгасан боловч ашиглах боломжгүй хэлбэртэй байсан.
  • "Шууд" интерфэйс нь хуучирсан бөгөөд бэлэн пакет шүүлтүүрийн дүрмийг шууд оруулах боломжийг олгосон. Дахин чиглүүлсэн болон гарч буй пакетуудыг шүүх боломжийг нэмсний дараа энэ интерфейсийн хэрэгцээ алга болсон.
  • Анхдагчаар "үгүй" болж өөрчлөгдсөн CleanupModulesOnExit параметрийг нэмсэн. Энэ параметрийг ашигласнаар та галт хана унтарсны дараа цөмийн модулиудыг буулгах ажиллагааг хянах боломжтой.
  • Зорилтот системийг (очих газрыг) тодорхойлохдоо ipset ашиглахыг зөвшөөрнө.
  • WireGuard, Kubernetes болон netbios-ns үйлчилгээний тодорхойлолтуудыг нэмсэн.
  • zsh-д автоматаар бөглөх дүрмийг хэрэгжүүлсэн.
  • Python 2-ын дэмжлэгийг зогсоосон.
  • Хамааралтай байдлын жагсаалтыг богиносгосон. Галт ханыг ажиллуулахын тулд Линукс цөмөөс гадна цорын ганц питон номын сан dbus, gobject болон nftables шаардлагатай болсон бөгөөд ebtables, ipset, iptables багцуудыг нэмэлт гэж ангилдаг. Питон номын сангийн чимэглэл болон slip нь хамаарлаас хасагдсан.

Эх сурвалж: opennet.ru

сэтгэгдэл нэмэх