Ako nastaviť bránu firewall na serveri Ubuntu
Publikované: 15. februára 2025 o 21:34:25 UTC
Posledná aktualizácia: 12. januára 2026 o 8:37:26 UTC
Tento článok vysvetľuje a poskytuje niekoľko príkladov, ako nastaviť firewall v systéme GNU/Linux pomocou ufw, čo je skratka pre Uncomplicated FireWall (Nekomplikovaný firewall) – a názov je výstižný, je to naozaj veľmi jednoduchý spôsob, ako zabezpečiť, aby ste nemali otvorených viac portov, ako potrebujete.
How to Set Up a Firewall on Ubuntu Server
Informácie v tomto príspevku sú založené na Ubuntu Serveri 14.04 x64. Môžu, ale nemusia byť platné pre iné verzie. (Aktualizácia: Môžem potvrdiť, že informácie v tomto príspevku sú v podstate stále platné a funkčné od Ubuntu Servera 24.04, avšak za posledných 10 rokov sa ufw stal o niečo „múdrejším“ tým, že má profily pre bežné serverové aplikácie (napríklad môžete povoliť „Nginx full“ namiesto samostatných portov 80 a 443) a už nie je potrebné zapínať/vypínať celý firewall na uplatnenie nových pravidiel).
Keď som začínal so servermi GNU/Linux (Ubuntu), nastavenie firewallu si vyžadovalo manuálne vytvorenie a údržbu potenciálne zložitého konfiguračného súboru pre iptables. Nedávno som však objavil ufw, čo je skratka pre Uncomplicated Firewall (Nekomplikovaný firewall) – a naozaj ním je :-)
Moja inštalácia Ubuntu Servera 14.04 už mala nainštalovaný ufw, ale ak ho vaša nemá, jednoducho ho nainštalujte z repozitárov:
UFW je v skutočnosti len nástroj, ktorý zjednodušuje konfiguráciu iptables – v zákulisí filtrovanie stále vykonáva iptables a firewall jadra Linuxu, takže ufw nie je ani menej, ani bezpečnejší ako tieto nástroje. Keďže však ufw výrazne uľahčuje správnu konfiguráciu firewallu, môže znížiť riziko ľudskej chyby, a preto je pravdepodobne bezpečnejší pre neskúsených administrátorov.
Ak je váš server nakonfigurovaný s IPv6 aj IPv4, uistite sa, že je to povolené aj pre UFW. Upravte súbor /etc/default/ufw a vyhľadajte riadok s textom IPV6=yes. V mojej inštalácii to už bolo tam, ale ak nie je alebo ak je uvedené nie, mali by ste to upraviť.
Potom jednoducho použite príkazový riadok na povolenie portov, ktoré chcete otvoriť. Ak ste k serveru pripojení cez ssh, nezabudnite povoliť aj toto, inak to môže prerušiť vaše pripojenie a po aktivácii servera vás to môže zablokovať – v závislosti od toho, či máte fyzický prístup k serveru alebo nie, to môže byť dosť nepraktické ;-)
Napríklad, ak používate ssh na štandardnom porte 22 a konfigurujete webový server, ktorý podporuje nešifrované (HTTP na porte 80) aj šifrované (HTTPS na porte 443) pripojenia, na konfiguráciu ufw by ste mali zadať nasledujúce príkazy:
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
Ak potrebujete viac pravidiel, jednoducho ich pridajte tak, ako je uvedené vyššie.
Ak máte statickú IP adresu a potrebujete sa pripojiť iba cez ssh z jedného miesta, môžete obmedziť ssh pripojenia na jednu pôvodnú adresu takto:
Samozrejme, zadajte namiesto toho svoju vlastnú IP adresu.
Po dokončení povoľte ufw zadaním:
A hotovo! Firewall beží a automaticky sa spustí po reštartovaní servera :-)
Ak vykonáte zmeny v konfigurácii ufw, možno ho budete musieť vypnúť a znova povoliť, aby sa prejavili, takto:
sudo ufw enable
Ak chcete zobraziť aktuálnu konfiguráciu, jednoducho zadajte:
Ak nie je povolené ufw, zobrazí sa jednoducho správa „neaktívne“, inak sa zobrazia aktuálne definované pravidlá.
