Kako nastaviti požarni zid na strežniku Ubuntu
Objavljeno: 15. februar 2025 ob 9:34:27 pop. UTC
Nazadnje posodobljeno: 12. januar 2026 ob 8:37:27 dop. UTC
Ta članek pojasnjuje in ponuja nekaj primerov, kako nastaviti požarni zid v sistemu GNU/Linux z uporabo ukaza ufw, kar je okrajšava za Nezapleten požarni zid (Uncomplicated FireWall) – in ime je primerno, saj je res zelo preprost način, da zagotovite, da nimate odprtih več vrat, kot jih potrebujete.
How to Set Up a Firewall on Ubuntu Server
Informacije v tej objavi temeljijo na Ubuntu Serverju 14.04 x64. Morda bodo veljavne tudi za druge različice, morda pa tudi ne. (Posodobitev: Lahko potrdim, da so informacije v tej objavi v bistvu še vedno veljavne in delujoče od Ubuntu Serverja 24.04, vendar je ufw v vmesnih 10 letih postal nekoliko "pametnejši", saj ima profile za običajne strežniške aplikacije (na primer, lahko omogočite "Nginx full" namesto ločenih vrat 80 in 443) in onemogočanje/omogočanje celotnega požarnega zidu za uporabo novih pravil ni več potrebno).
Ko sem prvič začel uporabljati strežnike GNU/Linux (Ubuntu), je nastavitev požarnega zidu vključevala ročno ustvarjanje in vzdrževanje potencialno zapletene konfiguracijske datoteke za iptables. Vendar sem pred kratkim odkril ufw, kar je okrajšava za Nezapleten požarni zid – in res je :-)
Moja namestitev Ubuntu Serverja 14.04 je že imela nameščen ufw, če pa ga vaša nima, ga preprosto namestite iz repozitorijev:
UFW je pravzaprav le orodje, ki poenostavi konfiguracijo iptables – v ozadju filtriranje še vedno izvajata iptables in požarni zid jedra Linuxa, zato ufw ni ne manj ne bolj varen od teh dveh orodij. Ker pa ufw precej olajša pravilno konfiguracijo požarnega zidu, lahko zmanjša tveganje za človeške napake in je zato morda varnejši za neizkušene skrbnike.
Če je vaš strežnik konfiguriran z IPv6 in IPv4, se prepričajte, da je to omogočeno tudi za UFW. Uredite datoteko /etc/default/ufw in poiščite vrstico z IPV6=yes. V moji namestitvi je bila že tam, če pa ni ali če piše ne, jo morate urediti.
Nato preprosto uporabite ukazni poziv, da omogočite vrata, ki jih želite odpreti. Če ste s strežnikom povezani prek ssh, poskrbite, da boste tudi to omogočili, sicer lahko to prekine vašo povezavo in vas po aktivaciji morda zaklene iz strežnika – odvisno od tega, ali imate fizični dostop do strežnika ali ne, je to lahko precej neprijetno ;-)
Na primer, če uporabljate ssh na standardnih vratih 22 in konfigurirate spletni strežnik, ki podpira tako nešifrirane (HTTP na vratih 80) kot šifrirane (HTTPS na vratih 443) povezave, bi za konfiguracijo ufw izdali naslednje ukaze:
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
Če potrebujete več pravil, jih preprosto dodajte, kot je opisano zgoraj.
Če imate statični IP-naslov in se morate povezati prek SSH samo z ene lokacije, lahko SSH povezave omejite tudi na en izvorni naslov, kot je ta:
Seveda namesto tega vnesite svoj IP-naslov.
Ko končate, omogočite ufw tako, da vnesete:
In končali ste! Požarni zid deluje in se bo samodejno zagnal, ko boste znova zagnali strežnik :-)
Če spremenite konfiguracijo ufw, jo boste morda morali onemogočiti in znova omogočiti, da spremembe začnejo veljati, takole:
sudo ufw enable
Če si želite ogledati trenutno konfiguracijo, preprosto vnesite:
Če ufw ni omogočen, bo prikazano le sporočilo »neaktivno«, sicer pa bodo prikazana trenutno definirana pravila.
