Firewall — podstawy
Nauczysz się, po co używa się firewalla, jak rozumieć dopuszczanie i blokowanie ruchu oraz jak sprawdzać podstawowy stan firewalld w Rocky Linux.
Wróć do listy lekcji1. Krótka teoria
Firewall kontroluje ruch sieciowy przychodzący i wychodzący zgodnie z regułami. Dla początkującego administratora najważniejsze jest rozumienie, że usługa może działać i nasłuchiwać na porcie, ale ruch z zewnątrz nadal może być zablokowany przez firewall. Dopuszczenie ruchu oznacza, że reguły pozwalają pakietom dotrzeć do usługi. Blokowanie oznacza, że firewall odrzuca lub ignoruje ruch, zanim aplikacja będzie mogła odpowiedzieć. W systemach z rodziny RHEL, w tym Rocky Linux, często używa się firewalld. Narzędzie firewall-cmd pozwala sprawdzać aktywne strefy, usługi i porty. Strefa opisuje poziom zaufania dla interfejsu lub źródła ruchu. W podstawowej administracji warto najpierw sprawdzić, czy firewalld działa, jaka jest strefa domyślna i jakie usługi są dopuszczone. Dopiero potem zmienia się reguły. W laboratorium można dodać usługę tymczasowo, bez opcji --permanent, aby zobaczyć efekt do następnego przeładowania konfiguracji.
2. Przykłady komend
systemctl status firewalld
Sprawdza, czy usługa firewalld działa.
$ systemctl status firewalld
sudo firewall-cmd --state
Pokazuje prosty stan firewalld.
$ sudo firewall-cmd --state
sudo firewall-cmd --get-default-zone
Wyświetla domyślną strefę firewalld.
$ sudo firewall-cmd --get-default-zone
sudo firewall-cmd --get-active-zones
Pokazuje aktywne strefy i przypisane do nich interfejsy.
$ sudo firewall-cmd --get-active-zones
sudo firewall-cmd --list-all
Wyświetla reguły aktywnej strefy, w tym usługi i porty.
$ sudo firewall-cmd --list-all
sudo firewall-cmd --add-service=http
Tymczasowo dopuszcza usługę HTTP w aktywnej strefie.
$ sudo firewall-cmd --add-service=http
sudo firewall-cmd --remove-service=http
Usuwa tymczasowe dopuszczenie usługi HTTP.
$ sudo firewall-cmd --remove-service=http
3. Zadanie praktyczne
systemctl status firewalld, sudo firewall-cmd --state, sudo firewall-cmd --get-default-zone i sudo firewall-cmd --list-all. Zapisz, które usługi są dopuszczone w aktywnej strefie. Jeśli to bezpieczne środowisko testowe, dodaj tymczasowo usługę HTTP przez sudo firewall-cmd --add-service=http, ponownie wykonaj --list-all, a potem cofnij zmianę przez sudo firewall-cmd --remove-service=http.
4. Typowe błędy
- Zakładanie, że działająca usługa automatycznie jest dostępna z sieci.
- Dodawanie reguł bez sprawdzenia aktywnej strefy.
- Mylenie usługi firewalld z konkretną usługą aplikacji, na przykład HTTP.
- Wprowadzanie zmian permanentnych bez wcześniejszego testu tymczasowego.
- Otwieranie portów bez wiedzy, jaki proces na nich nasłuchuje.
- Diagnozowanie firewalla bez sprawdzenia portów przez ss.
5. Podsumowanie
Firewall decyduje, jaki ruch jest dopuszczony albo blokowany. W Rocky Linux typowym narzędziem jest firewalld, sprawdzany przez systemctl status firewalld i firewall-cmd. Przed zmianą reguł warto sprawdzić stan, strefę, listę usług oraz to, czy aplikacja naprawdę nasłuchuje na danym porcie.