MANIEK Logo Mój Asystent Nauki Informatyki i Egzaminów Klasyfikacyjnych
Logowanie
ASSO / Linux Server / UFW / Firewall

18 — Konfigurowanie Firewall w systemie Linux

Czas: 90 min

Cele i treść

Cele:
  • Uczeń wyjaśnia przeznaczenie usługi lub narzędzia w systemie Linux.
  • Uczeń zna najważniejsze pliki i polecenia administracyjne.
  • Uczeń wykonuje konfigurację w terminalu lub narzędziu graficznym.
  • Uczeń testuje działanie usługi i dokumentuje wynik.

Lekcja obejmuje temat: Konfigurowanie Firewall w systemie Linux.

Główne części: Wprowadzenie do ufw (Uncomplicated Firewall) – uproszczona nakładka na iptables/nftables., Podstawowe polecenia: ufw enable/disable, ufw status, ufw status verbose., Dodawanie reguł: zezwalanie (allow), blokowanie (deny), odrzucanie (reject) na porty i usługi., Zezwolenie na połączenia SSH przed aktywacją firewalla!,.

Notatka:

Import przygotowany z rozkładu klasy 2. Po imporcie można dopisać własne screeny, załączniki, zadania i kryteria oceniania.

#iptables#nftables#ufw

Punkty lekcji

1 - Wprowadzenie do ufw (Uncomplicated Firewall) – uproszczona nakładka na iptables/nftables.komenda

Do uzupełnienia.

2 - Podstawowe polecenia: ufw enable/disable, ufw status, ufw status verbose.komenda

Do uzupełnienia.

3 - Dodawanie reguł: zezwalanie (allow), blokowanie (deny), odrzucanie (reject) na porty i usługi.opis

Do uzupełnienia.

4 - Zezwolenie na połączenia SSH przed aktywacją firewalla!,komenda

Do uzupełnienia.

5 - Wprowadzenie do ufw (Uncomplicated Firewall)zadanie

Cel i idea: ufw to uproszczona nakładka (frontend) na znacznie bardziej skomplikowane narzędzia iptables (lub nftables). Jego zadaniem jest dostarczenie prostego, intuicyjnego interfejsu do zarządzania podstawowymi regułami zapory ogniowej, bez konieczności poznawania złożonej składni iptables.

Domyślna polityka: ufw domyślnie blokuje wszystkie połączenia przychodzące (deny (incoming)) i zezwala na wszystkie połączenia wychodzące (allow (outgoing)). Jest to bezpieczne ustawienie, które pozwala systemowi na inicjowanie połączeń na zewnątrz, jednocześnie blokując niepożądany ruch przychodzący, chyba że explicitnie zezwolimy na konkretne porty/usługi.

6 - Podstawowe poleceniakomenda
sudo ufw status: Wyświetla podstawowy status firewalla (włączony/wyłączony) oraz listę skonfigurowanych reguł. Bez opcji verbose nie pokazuje domyślnej polityki.
sudo ufw status verbose: Wyświetla szczegółowy status. Jest to najbardziej użyteczne polecenie diagnostyczne. Pokazuje:

Status firewalla (active/inactive).

Domyślną politykę dla ruchu przychodzącego (zwykle: deny (incoming)).

Domyślną politykę dla ruchu wychodzącego (zwykle: allow (outgoing)).

Pełną listę reguł z numerami, które pomagają w zarządzaniu.

sudo ufw enable: Włącza zaporę i uruchamia ją przy każdym starcie systemu. OSTRZEŻENIE: Przed wykonaniem tego polecenia upewnij się, że zezwoliłeś na SSH!
sudo ufw disable: Wyłącza zaporę.
7 - Dodawanie regułkomenda

Składnia: sudo ufw [POLITYKA] [PORT/USŁUGA/ADRES]

Polityki:

allow (zezwalaj): Pozwala na ruch spełniający kryteria.

deny (blokuj/odrzuć): Cicho odrzuca pakiety. Nadawca nie otrzymuje żadnej odpowiedzi, więc jego połączenie będzie timeoutować. Jest to podstawowy sposób blokowania.

reject (odrzuć): Aktywnie odrzuca pakiety, wysyłając do nadawcy pakiet reset (RST). Nadawca od razu wie, że połączenie zostało odrzucone. Jest to "grzeczniejsze", ale mniej dyskretne.

Określanie celu:

Według nazwy usługi: sudo ufw allow ssh (UFW sprawdza port w pliku /etc/services).

Według portu: sudo ufw allow 80/tcp (dokładne określenie portu i protokołu – bardziej precyzyjne).

Według adresu IP: sudo ufw deny from 192.168.1.100 (blokuje wszystko z podanego adresu źródłowego).

Określanie kierunku (opcjonalnie): Domyślnie reguły dotyczą ruchu przychodzącego (in). Można jawnie określić in lub out (np. sudo ufw allow in 443/tcp).

8 - ZŁOTA ZASADA: Zezwolenie na połączenia SSH przed aktywacją firewalla!komenda

Ryzyko: Aktywacja firewalla z domyślną polityką deny (incoming) natychmiast zerwie istniejące połączenie SSH i uniemożliwi nowe logowania.

Rozwiązanie: Zawsze jako pierwszą regułę dodaj zezwolenie na port SSH (domyślnie 22/tcp). Dzięki temu, nawet po aktywacji, będziesz mógł logować się zdalnie.

sudo ufw allow ssh

# lub precyzyjniej

sudo ufw allow 22/tcp
9 - Blokowanie wybranych stron WWWkomenda

Uwaga: ufw jest zaporą sieciową (firewall) i operuje na adresach IP, portach i protokołach. Nie filtruje ruchu na podstawie nazw domen (URL).

Jak to osiągnąć? Aby zablokować dostęp do konkretnej strony (domeny), musisz:

Znaleźć adres(y) IP powiązane z domeną (np. używając nslookup example.com lub dig example.com).

Zablokować ruch wychodzący (out) do tych adresów IP na porcie 80/443.

sudo ufw deny out to [adres_ip_strony] port 80
sudo ufw deny out to [adres_ip_strony] port 443

Ograniczenie: Jest to metoda mało skuteczna, ponieważ wiele dużych serwisów (Google, Facebook) używa wielu adresów IP i CDN, które ciągle się zmieniają.

10 - Ćwiczenia praktyczneopis

Do uzupełnienia.

11 - Sprawdzenie statusu ufw (sudo ufw status).komenda

Do uzupełnienia.

12 - Zezwolenie na połączenia SSH (sudo ufw allow ssh lub sudo ufw allow 22/tcp).komenda

Do uzupełnienia.

13 - Włączenie firewalla (sudo ufw enable).komenda

Do uzupełnienia.

14 - Zezwolenie na port HTTP (sudo ufw allow 80/tcp).komenda

Do uzupełnienia.

15 - Odrzucenie połączeń na port 10000 (sudo ufw reject 10000).komenda

Do uzupełnienia.

16 - Zablokowanie połączeń z konkretnego adresu IP (sudo ufw deny from 192.168.1.100).,komenda

Do uzupełnienia.

17 - Ćwiczenie 1: Sprawdzenie statusu ufw.zadanie

Cel: Zapoznanie się z podstawowym stanem zapory.

Kroki:

Otwórz terminal.

Sprawdź status:

sudo ufw status

Powinieneś zobaczyć: Status: inactive.

Sprawdź status verbose:

sudo ufw status verbose

Zobaczysz domyślne polityki, nawet gdy zapora jest wyłączona.

18 - Ćwiczenie 2: Zezwolenie na połączenia SSH.zadanie

Cel: Zabezpieczenie dostępu zdalnego przed włączeniem firewalla.

Kroki:

Dodaj regułę dla SSH, używając nazwy usługi:

sudo ufw allow ssh

Sprawdź, czy reguła została dodana (nawet przy wyłączonej zaporze):

sudo ufw status

Powinieneś zobaczyć listę reguł z wpisem: 22/tcp ALLOW Anywhere.

19 - Ćwiczenie 3: Włączenie firewalla.zadanie

Cel: Aktywacja skonfigurowanych reguł.

Kroki:

Włącz zaporę:

sudo ufw enable

Potwierdź operację, naciskając y i Enter.

Sprawdź status:

sudo ufw status verbose

Teraz powinien pokazywać: Status: active.

20 - Ćwiczenie 4: Zezwolenie na port HTTP.zadanie

Cel: Symulacja konfiguracji serwera WWW.

Kroki:

Dodaj regułę zezwalającą na ruch HTTP (port 80/tcp):

sudo ufw allow 80/tcp

Sprawdź listę reguł. Powinny być teraz dwie: dla SSH i HTTP.

21 - Ćwiczenie 5: Odrzucanie połączeń na port.zadanie

Cel: Różnica między cichym blokowaniem (deny) a aktywnym odrzucaniem (reject).

Kroki:

Odrzuć połączenia na port 10000:

sudo ufw reject 10000

(UFW domyślnie假设 protokoł TCP, jeśli nie podano)

Sprawdź listę reguł. Powinna pojawić się nowa: 10000/tcp REJECT Anywhere.

22 - Ćwiczenie 6: Blokowanie połączeń z konkretnego adresu IP.zadanie

Cel: Blokowanie niepożądanego hosta w sieci.

Kroki:

Zablokuj wszystkie połączenia przychodzące z adresu 192.168.1.100 (lub innego testowego):

sudo ufw deny from 192.168.1.100

Sprawdź listę reguł. Powinien pojawić się wpis: Anywhere DENY 192.168.1.100.

(Zaawansowane / Symulacja) Aby przetestować, możesz spróbować połączyć się z innej maszyny w sieci o zablokowanym adresie (jeśli jest dostępna) lub użyć narzędzi jak nmap z innego komputera, aby sprawdzić, które porty są otwarte/zamknięte.

Usługi sieciowe w systemie Linux

Powiązane arkusze i pytania

Arkusze

Brak powiązanych arkuszy.

Pytania

Brak powiązanych pytań.