Znanja Jednostavne upute za rad s uslugom Profitserver
Glavni Znanja Konfiguriranje vatrozida na Linuxu

Konfiguriranje vatrozida na Linuxu


Vatrozid na Linuxu igra vitalnu ulogu u osiguravanju računalnog sustava. Djeluje kao barijera, kontrolira i filtrira mrežni promet kako bi zaštitio sustav od neovlaštenog pristupa, napada i drugih prijetnji. Bez ispravno konfiguriranog vatrozida, poslužitelj bi mogao biti ranjiv na razne vrste kibernetičkih napada, što bi dovelo do ozbiljnih posljedica za sigurnost i povjerljivost podataka.

U ovom ćemo članku pogledati dva glavna alata za konfiguriranje Linux vatrozida: firewalld i iptables. Provest ćemo usporednu analizu njihovih značajki, funkcionalnosti i prednosti. Osim toga, pružit ćemo detaljne upute za postavljanje i korištenje svakog od ovih alata, kao i raspraviti o najboljim praksama za osiguranje vašeg sustava vatrozidom na platformi Linux. Sve radnje bit će prikazane na a virtualni poslužitelj s pristupom korijenu.

Konfiguriranje vatrozida na Linuxu

Firewalld (Firewall Daemon) je program za upravljanje vatrozidom u Linux operativnim sustavima. Omogućuje korisničko sučelje za konfiguriranje pravila vatrozida, dopuštanje ili blokiranje povezivanja mrežnih aplikacija. Unaprijed je instaliran u većini distribucija poslužitelja. Ako Firewalld nije unaprijed instaliran, može se instalirati neovisno iz službenih repozitorija distribucije.

Za Red Hat sustave (kao što su RHEL, CentOS, Fedora) instalacija se izvodi naredbom:

yum install firewalld

Za Debian/Ubuntu:

apt-get install firewalld

Nakon instalacije, može se odmah pokrenuti i aktivirati naredbom:

systemctl start firewalld

Zatim morate dodati uslugu pokretanju:

systemctl enable firewalld
Dodavanje vatrozida u automatsko učitavanje Linuxa

U ovom trenutku preporučujemo da onemogućite ufw jer se ne preporučuje istovremena upotreba ovog alata s firewalldom ili iptables. Provjerite stanje:

systemctl status ufw
Provjeravam ufw linux

Za zaustavljanje unesite naredbu:

systemctl stop ufw

Za potpunu deaktivaciju:

ufw disable

Nakon ovih radnji možete nastaviti s konfiguracijom vatrozida.

Prvo je potrebno definirati zone povjerenja. Firewalld koristi koncept zona za određivanje razine povjerenja za mrežna sučelja. Svakom sučelju dodijeljena je jedna zona, a pravila vatrozida primjenjuju se na temelju zone. Popis svih dostupnih zona otvara se naredbom:

firewall-cmd --get-zones

Obično se koriste 4 glavne zone:

  1. javnost: Ova zona je za mreže koje smatrate nesigurnima;
  2. Privatni: Odnosi se na kućne mreže ili druge pouzdane mrežne veze;
  3. interni: Koristi se za interne mreže, poput onih unutar organizacije ili korporativne mreže;
  4. DMZ: Ova zona je mjesto gdje se obično postavljaju poslužitelji koji bi trebali biti dostupni s interneta.

Međutim, ovo je samo jedan primjer. Svoju zonu možete dodati pomoću naredbe:

firewall-cmd --permanent --new-zone=nameyourzone

Nakon dodavanja potrebno je ponovno učitavanje:

firewall-cmd --reload

Za brisanje zone koristi se slična metoda

firewall-cmd --permanent --delete-zone=nameyourzone

Nakon definiranja zona, potrebno je omogućiti promet za potrebne servise i portove. Za dopuštanje određene usluge koristite naredbu:

firewall-cmd --zone=public --add-service=name

Gdje ime je naziv usluge. Na primjer, za dopuštanje prometa za Apache:

firewall-cmd --zone=public --add-service=http

Za definiranje dopuštenih portova koristite naredbu:

firewall-cmd --zone=public --add-port=number/protocol

Na primjer, standardni 22 port za SSH bi izgledao ovako:

firewall-cmd --zone=public --add-port=22/tcp

U ovoj fazi već su stvorena glavna pravila. Zatim odredite kako će se promet obrađivati ​​ovisno o izvoru, odredištu, portu i drugim kriterijima. Za dodavanje pravila (pomoću javni zona kao primjer):

firewall-cmd --zone=public rule

Na primjer, da biste dopustili dolazni promet iz bilo kojeg izvora na priključak 80 (HTTP):

firewall-cmd --zone=public --add-port=80/tcp --permanent

Za uklanjanje pravila:

firewall-cmd --permanent --remove-rule=rule_specification

Gdje vladati je vrsta pravila (npr. luka, usluga, bogato pravilo, itd.), i specifikacija_pravila je specifikacija samog pravila.

Nakon što napravite promjene u konfiguraciji Firewallda, potrebno ih je spremiti i primijeniti. Za spremanje promjena koristite naredbu:

firewall-cmd --runtime-to-permanent

Za primjenu promjena:

firewall-cmd --reload

Po dovršetku podešavanja možete provjeriti odabrane parametre otvaranjem popisa svih pravila:

firewall-cmd --list-all
firewalld pravila Linuxa

Ako se pojave bilo kakvi problemi, provjerite zapisnike Firewall-a naredbom:

journalctl -u firewalld

Napomena: Pokrili smo samo opći algoritam za postavljanje veze. Alat ima široku funkcionalnost. Za sve informacije o svim dostupnim opcijama, možete koristiti službena dokumentacija ili otvori pomoć:

firewall-cmd --help

Konfiguriranje iptables na Linuxu

Za razliku od Firewallda, iptables je stariji, ali još uvijek široko korišten alat u Linuxu za upravljanje vatrozidom. Omogućuje izravniji i fleksibilniji pristup pravilima filtriranja paketa na razini Linux kernela. Međutim, iptables zahtijeva naprednije znanje i iskustvo u usporedbi s Firewalldom, što ga čini manje pristupačnim za početnike. Provjerite unaprijed instaliranu verziju alata naredbom:

iptables -V

Ako alat nije instaliran, trebat će ga instalirati. Naredba za instalaciju na Ubuntu, Debian:

apt install iptables

Za sustave Red Hat (npr. CentOS, Fedora):

yum install iptables

Naredba za aktivaciju nakon instalacije:

systemctl start iptables

Za dodavanje pokretanju, izvršite:

systemctl enable iptables

Prije pokretanja konfiguracije iptables, važno je razumjeti kako to radi. Ovome pomaže sintaksa programa. Izgleda ovako:

iptables -t table action chain additional_parameters

Zaronimo dublje u svaku stavku.

Iptables ima četiri glavne tablice: filter, nat, mangle i raw. Svaki je dizajniran za obradu određenih vrsta paketa i ima svoje lance pravila:

  1. filtriranje: Ovo je najčešće korištena tablica koja sadrži pravila filtriranja paketa. Koristi se za donošenje odluka o tome treba li dopustiti ili odbiti pakete.
  2. nat: Ova se tablica koristi za izmjenu mrežnih adresa i portova u paketima. Često se koristi za postavljanje maskiranja (NAT).
  3. komadati: U ovoj tablici možete mijenjati zaglavlja paketa. Koristi se za specijalizirane operacije paketa, kao što je označavanje.
  4. sirov: Ova se tablica koristi za konfiguriranje pravila koja se primjenjuju prije nego prođu kroz sustav praćenja veze. Obično se koristi za postavljanje pravila koja sustav za praćenje ne bi trebao mijenjati, kao što je ispuštanje paketa s određenih adresa.

Svaka tablica sadrži niz lanaca. Lanci su niz pravila koja se sekvencijalno provjeravaju. Postoje tri unaprijed definirana lanca:

  1. INPUT (dolazni). Pravila u ovom lancu određuju što učiniti s dolaznim paketima.
  2. IZLAZ (odlazni). Ovaj se lanac primjenjuje na sve pakete koje vaše računalo šalje drugim uređajima ili računalima na mreži.
  3. NAPRIJED (prosljeđivanje). Pravila u ovom lancu određuju što učiniti s proslijeđenim paketima.

Konačno, svaki lanac posjeduje neku akciju (cilj). U praksi se koristi 5 glavnih radnji:

  1. PRIHVATAM: Dopustite paketu da prođe kroz vatrozid.
  2. KAP: Odbacite paket i odbacite ga bez odgovora.
  3. ODBITI: Odbijte paket i pošaljite pošiljatelju ICMP poruku o pogrešci.
  4. LOG: Zabilježite paket u zapisnik sustava i izvršite drugu radnju (npr. PRIHVATITE ili ISPUSTITE).
  5. POVRATAK: Prestanite provjeravati pravila u trenutnom lancu i vratite se na lanac poziva (ako je primjenjivo).

Za početak postavljanja otvorite popis postojećih pravila naredbom:

iptables -L
Konfiguriranje vatrozida na Linuxu

Kao vodič za konfiguriranje Iptables, pogledajmo praktične primjere najčešće korištenih naredbi. Radi praktičnosti, podijelit ćemo primjere u 3 skupine, ovisno o specifičnom lancu.

Lanac INPUT:

  1. Dopusti dolazni promet putem TCP protokola na portu 80:
iptables -A INPUT -p tcp --dport 80 -j ACCEPT

2. Dopustite dolazni promet putem UDP protokola na portu 22:

iptables -A INPUT -p udp --dport 22 -j ACCEPT

3. Blokirajte dolazni promet s određene IP adrese:

iptables -A INPUT -s 192.168.1.100 -j DROP

Lanac PROIZVODNJA:

  1. Dopusti odlazni promet putem TCP protokola na portu 443:
iptables -A OUTPUT -p tcp --dport 443 -j ACCEPT

2. Dopustite odlazni promet putem UDP protokola na portu 80:

iptables -A OUTPUT -p udp --dport 80 -j ACCEPT

3. Blokirajte odlazni promet na određeni port (na primjer, 21):

iptables -A OUTPUT -p tcp --dport 21 -j DROP

Lanac NAPRIJED:

  1. Blokirajte proslijeđeni promet s određenog raspona IP adresa:
iptables -A FORWARD -s 172.16.0.0/24 -j DROP

2. Blokirajte prosljeđivanje paketa s određenog mrežnog sučelja:

iptables -A FORWARD -i eth1 -j DROP

3. Ograničite broj istodobnih veza za određeni priključak (u ovom primjeru, 10 veza u minuti na priključku 80):

iptables -A INPUT -p tcp --dport 80 -m limit --limit 10/minute -j ACCEPT

Kao što vidite, u svakom zasebnom slučaju koristi se dodatni argument (naredba). Da biste dobili potpuni popis mogućih argumenata i cjelokupnu podršku za funkcionalnost alata, unesite:

iptables -h
iptables popis naredbi za postavljanje linuxa

Kako biste bili sigurni da su postavke ispravne, ponovno unesite naredbu za prikaz popisa pravila:

iptables -L
Provjera iptables linux pravila

Za brisanje određenog pravila koristite naredbu:

iptables -D chain rule_number

Na primjer, ako želite izbrisati pravilo broj 1 iz lanca INPUT, naredba će izgledati ovako:

iptables -D INPUT 1

Za brisanje svih pravila jednom naredbom:

iptables -F

Važna napomena: pravila iptables ne spremaju se automatski nakon ponovnog pokretanja sustava ili usluge. Da biste spremili pravila, potrebno ih je dodati u konfiguracijsku datoteku i vratiti nakon ponovnog pokretanja. The iptables-spremi i iptables-vraćanje uslužni programi mogu pomoći u tome. Za spremanje pravila unesite naredbu:

iptables-save > /etc/iptables/rules.v4

Ovo sprema trenutna pravila iptables u datoteku rules.v4. Za vraćanje nakon ponovnog pokretanja unesite:

iptables-restore < /etc/iptables/rules.v4

Ova naredba vraća pravila iz datoteke rules.v4.

Zaključak

Konfiguriranje vatrozida na Linuxu pomoću firewallda ili iptables važan je aspekt osiguravanja sigurnosti poslužitelja. Oba alata nude pouzdan način upravljanja mrežnim prometom i zaštite sustava od neovlaštenog pristupa i kibernetičkih napada. Izbor između firewallda i iptables ovisi o specifičnim potrebama i preferencijama korisnika, s obzirom na njihovu različitu funkcionalnost i prednosti.

❮ Prethodni članak Dijagnostika opterećenja poslužitelja
Sljedeći članak ❯ Linux korisnici: upravljanje i dopuštenja

Pitajte nas o VPS-u

Uvijek smo spremni odgovoriti na vaša pitanja u bilo koje doba dana i noći.