Kako postaviti zaštitni zid na Ubuntu serveru
Objavljeno: 15. februar 2025. u 21:37:04 UTC
Ovaj članak objašnjava i daje neke primjere o tome kako postaviti firewall na GNU/Linux koristeći ufw, što je skraćenica od Uncomplicated FireWall - i naziv je prikladan, zaista je vrlo jednostavan način da se uvjerite da nemate više otvorenih portova nego što je potrebno.
How to Set Up a Firewall on Ubuntu Server
Informacije u ovom postu su zasnovane na Ubuntu Serveru 14.04 x64. Može, ali i ne mora biti važeće za druge verzije. (Ažuriranje: mogu potvrditi da su informacije u ovom postu u osnovi još uvijek važeće i funkcionalne od Ubuntu Servera 24.04, međutim u srednjih 10 godina, ufw je postao nešto "pametniji" imajući profile za uobičajene serverske aplikacije (na primjer, možete omogućiti "Nginx pun" umjesto portova 80 i 443 da se nova pravila za uklanjanje požara više ne primjenjuju odvojeno) potrebno)
Kada sam prvi put počeo sa GNU/Linux (Ubuntu) serverima, postavljanje zaštitnog zida uključivalo je ručno kreiranje i održavanje potencijalno složene konfiguracijske datoteke za iptables. Međutim, nedavno sam otkrio ufw , što je skraćenica od Nekomplikovani zaštitni zid – i zaista je tako :-)
Moja instalacija Ubuntu Servera 14.04 je već imala instaliran ufw, ali ako nemate, jednostavno ga instalirajte iz spremišta:
UFW je zapravo samo alat koji pojednostavljuje iptables konfiguraciju – iza kulisa, i dalje je iptables i firewall Linux kernela koji obavlja filtriranje, tako da ufw nije ni manje ni sigurniji od ovih. Međutim, budući da ufw umnogome olakšava ispravnu konfiguraciju zaštitnog zida, može smanjiti rizik od ljudske greške i stoga je možda sigurniji za neiskusne administratore.
Ako je vaš server konfigurisan sa IPv6 i IPv4, uverite se da je ovo omogućeno i za UFW. Uredite datoteku /etc/default/ufw i potražite red koji kaže IPV6=yes . Na mojoj instalaciji je već bio tamo, ali ako nije ili ako kaže ne, trebali biste ga urediti
Zatim jednostavno koristite komandnu liniju da omogućite portove koje želite da otvorite. Ako ste povezani sa svojim serverom preko ssh-a, pobrinite se da i to dozvolite ili to može poremetiti vašu vezu i eventualno blokirati vaš server kada ga aktivirate – ovisno o tome imate li fizički pristup serveru ili ne, ovo može biti pomalo nezgodno ;-)
Na primjer, ako koristite ssh na standardnom portu 22 i konfigurirate web server koji podržava i nešifrirane (HTTP na portu 80) i šifrirane (HTTPS na portu 443) veze, izdali biste sljedeće naredbe za konfiguraciju ufw:
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
Ako trebate više pravila, jednostavno ih dodajte kao gore.
Ako imate statičku IP adresu i trebate se moći povezati samo putem ssh-a s jedne lokacije, također možete ograničiti ssh veze na jednu izvornu adresu na sljedeći način:
Naravno, umjesto toga unesite vlastitu IP adresu.
Kada završite, omogućite ufw unosom:
I gotovi ste! Firewall radi i automatski će se pokrenuti kada ponovo pokrenete server :-)
Ako unesete promjene u ufw konfiguraciju, možda ćete morati da je onemogućite i ponovo omogućite da biste ih stavili na snagu, ovako:
sudo ufw enable
Da pogledate trenutnu konfiguraciju, jednostavno unesite:
Ako ufw nije omogućen, ovo će jednostavno prikazati "neaktivnu" poruku, u suprotnom će prikazati lista trenutno definiranih pravila.