Zabezpečení

Snadná správa firewallu na Linux serverech pomocí UFW

  • 13 minut čtení
  • Tým Hostragons
Snadná správa firewallu na Linux serverech pomocí UFW

Na Linux serverech je UFW (Uncomplicated Firewall) nástroj, který výrazně zjednodušuje správu firewallu – místo složitých iptables pravidel umožňuje snadno a bezpečně povolovat přístupy přes SSH, HTTP, HTTPS a další specifické porty. Zejména na serverech založených na Ubuntu nebo Debianu můžete pomocí UFW výchozí příchozí provoz zablokovat, povolit jen nezbytné služby, omezit přístup z konkrétních IP adres a omezit neúspěšné pokusy o přihlášení. Doporučený základní přístup je: zajistit přístup přes SSH, zamítnout výchozí příchozí provoz, povolit odchozí provoz, otevřít jen potřebné porty a pravidelně kontrolovat stav UFW.

Jakmile je webový server připojen k internetu, čelí automatizovaným botům, pokusům o prolomení hesla, skenerům zranitelností a zbytečným dotazům na porty. Firewall je proto jednou z prvních linií ochrany Linux serveru. UFW je oblíbený nástroj technických týmů, protože má přehledné příkazy, rychlou správu pravidel, nabízí logování a výrazně snižuje riziko chyb oproti přímé práci s iptables. Tento průvodce vás krok za krokem provede instalací UFW, základními příkazy, ochranou proti zamčení SSH, otevřením webových portů, povolováním na základě IP, kontrolou logů, nastavením IPv6, specifiky s Dockerem a bezpečnostními postupy pro rok 2026.

Co je UFW a k čemu slouží?

UFW je zkratka pro „Uncomplicated Firewall“, česky tedy „jednoduchý firewall“. Využívá podkladové filtrování paketů linuxového jádra, ale nabízí správci systému přehlednější příkazy. Namísto složitého psaní iptables nebo nftables pravidel můžete například jednoduše povolit HTTPS provoz příkazem sudo ufw allow 443/tcp.

UFW je užitečný zejména v těchto situacích:

  • Rychlé zabezpečení nově nastaveného VPS nebo dedikovaného serveru.
  • Otevření pouze portů 80 a 443 pro webový server.
  • Omezení SSH přístupu jen na konkrétní IP adresy.
  • Snížení pokusů o prolomení hesla (brute force) pomocí limitování připojení.
  • Zamezení úplného otevření testovacích, staging nebo administračních panelů na internetu.
  • Sledování podezřelých připojení přes logy.

Sám o sobě UFW nezaručí kompletní bezpečnost, ale výrazně zmenšuje „plošinu útoku“. Pokud je kombinován s pevnými hesly, přístupem přes SSH klíče, pravidelnými aktualizacemi, SSL/TLS certifikáty a dalšími bezpečnostními opatřeními, vytvoří silnou základní ochranu. Pokud provozujete webové stránky, nezapomeňte firewall doplnit o SSL certifikáty SSL certifikáty.

Porovnání UFW, iptables a firewalld

V linuxovém světě existuje několik nástrojů pro správu firewallu. UFW, iptables a firewalld obvykle slouží podobným účelům, ale liší se v jednoduchosti použití, podpoře distribucí a přístupu k administraci. Následující tabulka vám pomůže vybrat ten správný nástroj.

Porovnání UFW, iptables a firewalld
NástrojSilné stránkyPro koho je vhodný?Co je třeba mít na paměti
UFWJednoduché příkazy, rychlá instalace, dobrá podpora Ubuntu/DebianUživatelé VPS, weboví vývojáři, menší a střední týmyOmezené možnosti pro složité síťové segmentace
iptablesVelmi detailní kontrola pravidelZkušení správci systémůChybná pravidla mohou způsobit ztrátu přístupu
firewalldPráce se zónami a dynamické řízení pravidelUživatelé CentOS, AlmaLinux, Rocky LinuxNení tak jednoduchý jako UFW, vyžaduje naučit se zónovou koncepci

Pro správu webového serveru na Ubuntu je UFW většinou dostačující. Ve velkých korporátních sítích a vícevrstvých bezpečnostních architekturách je vhodné UFW kombinovat s cloudovými bezpečnostními skupinami, WAF, IDS/IPS a centrálním logováním.

Instalace UFW a první kontrola

UFW je obvykle předinstalovaný na Ubuntu. Přesto je dobré si zkontrolovat, zda je k dispozici příkazem sudo ufw status. Pokud se zobrazí chyba typu „command not found“, je třeba UFW doinstalovat.

Instalace na Ubuntu a Debianu

Nejprve aktualizujte seznam balíčků: sudo apt update. Pak nainstalujte UFW: sudo apt install ufw -y. Po instalaci ověřte stav služby: sudo systemctl status ufw. I když nemusí být aktivní ihned, je to normální, protože pravidla jsou aktivována až po povolení UFW.

Při nastavování pravidel na vzdáleném VPS buďte opatrní: před zapnutím UFW se ujistěte, že máte povolený přístup na SSH port, jinak můžete o přístup ke svému serveru přijít. Pokud používáte VPS od Hostragons, doporučujeme si před konfigurací poznamenat přístup do panelu a možnosti konzole VPS server.

Zobrazení aktuálního stavu

Detailní stav UFW zobrazíte příkazem sudo ufw status verbose. Pro zobrazení číslovaných pravidel, což usnadňuje jejich mazání, použijte sudo ufw status numbered. Při mazání pravidla pak zadáte například sudo ufw delete 3, kde číslo 3 představuje přesné pravidlo v seznamu.

Bezpečný start: výchozí pravidla

Nejbezpečnější je na novém Linux serveru nastavit výchozí politiku tak, že příchozí provoz je blokován, odchozí povolen a otevřeny jsou pouze nezbytné porty. Tento přístup odpovídá principu minimálních oprávnění.

Základní příkazy jsou:

  • sudo ufw default deny incoming
  • sudo ufw default allow outgoing
  • sudo ufw allow OpenSSH nebo sudo ufw allow 22/tcp
  • sudo ufw enable
  • sudo ufw status verbose

Klíčovým bodem je SSH přístup. Pokud používáte jiný port než standardní 22, například 2222, nezapomeňte ho povolit příkazem sudo ufw allow 2222/tcp před aktivací UFW. Změna portu sice nezaručí bezpečnost, ale může snížit množství automatických útoků. Důležitější je však úplné vypnutí přihlašování heslem a využití klíčové autentizace.

Zabezpečení SSH přístupu

SSH je bránou k vašemu serveru, proto je potřeba k jeho zabezpečení přistupovat s maximální péčí. Pokud je SSH otevřené všem IP adresám, automatizované útoky mohou rychle začít.

Povolení portu SSH

Pokud používáte standardní port, stačí příkaz: sudo ufw allow 22/tcp. Ubuntu nabízí také aplikační profil, takže můžete použít sudo ufw allow OpenSSH. Pokud používáte jiný port, například 2222, použijte sudo ufw allow 2222/tcp.

Omezení SSH přístupu na konkrétní IP adresy

Nejbezpečnější je povolit přístup na SSH jen z pevných IP adres správců. Například pokud je vaše kancelářská IP 203.0.113.10, použijte příkaz: sudo ufw allow from 203.0.113.10 to any port 22 proto tcp. Takto port nebude obecně dostupný z internetu.

Pokud je více správců, přidejte pravidlo pro každou IP zvlášť. Pokud používáte dynamickou IP, zvažte spíše správu přes VPN, bastion host nebo nouzový přístup přes konzoli poskytovatele.

Omezení pokusů o přihlášení (brute force)

UFW nabízí omezení počet spojení pomocí příkazu sudo ufw limit 22/tcp. Tento příkaz pomáhá omezit opakované neúspěšné pokusy o přihlášení. Nicméně nenahrazuje komplexní nástroje jako fail2ban. V produkčním prostředí byste měli používat kombinaci UFW limit, fail2ban, SSH klíčů a přísných uživatelských politik.

Otevření webových portů: HTTP a HTTPS

Pro provoz webu jsou potřeba porty 80/tcp (HTTP) a 443/tcp (HTTPS). HTTPS je dnes standardem kvůli lepší ochraně a důvěře uživatelů. Weby bez SSL certifikátu často čelí varováním a mohou mít nižší konverze SSL certifikáty.

Základní pravidla pro Nginx nebo Apache

Pro HTTP zadejte: sudo ufw allow 80/tcp, pro HTTPS: sudo ufw allow 443/tcp. Někteří správci dávají přednost povolování portů jednotlivě místo sudo ufw allow 80,443/tcp kvůli lepší přehlednosti.

UFW také nabízí aplikační profily. Profil pro Nginx si zobrazíte příkazem sudo ufw app list. Profil Nginx Full povoluje oba porty (80 i 443) najednou: sudo ufw allow Nginx Full. Podobně existuje profil Apache Full pro Apache.

Je HTTPS samo o sobě dostatečné?

Technicky lze web provozovat jen na HTTPS, ale kvůli automatickým obnovám certifikátů (např. Let’s Encrypt) a přesměrování z HTTP na HTTPS je potřeba mít port 80 otevřený. Nejlepší je všechny HTTP požadavky přesměrovat na HTTPS s kódem 301 přímo na úrovni webového serveru.

Speciální porty, databáze a administrační panely

Otevřít port je jednoduché, ale skutečným uměním je vědět, které porty nechat zavřené. Porty jako 3306 (MySQL), 5432 (PostgreSQL), 6379 (Redis) nebo 9200 (Elasticsearch) by neměly být otevřené na internetu, protože představují vážné bezpečnostní riziko. Tyto služby by měly naslouchat jen na localhost nebo být dostupné přes interní síť.

Povolení portu pro konkrétní IP adresu

Pokud chcete například povolit přístup na databázi jen ze serveru aplikace, použijte pravidlo na IP bázi: sudo ufw allow from 198.51.100.25 to any port 5432 proto tcp. Takto bude přístup k PostgreSQL omezen jen na vybranou IP.

Naopak nesprávné je povolit port 5432 všem pomocí sudo ufw allow 5432/tcp, protože to otevírá zbytečnou bránu pro útoky. Pro databázové servery, panely a interní služby vždy používejte omezení podle zdrojové IP.

Opatrnost u cPanelu, Plesku a dalších panelů

Hostingové kontrolní panely využívají více portů. Před aktivací UFW ověřte oficiální seznam portů používaných vaším panelem, jinak můžete ztratit přístup k e-mailu, DNS, FTP nebo samotnému panelu. U managed hostingu se o toto stará většinou poskytovatel Web Hosting.

Správa pravidel: mazání, úpravy a pořadí

Správa pravidel v UFW je jednoduchá, ale v produkčním prostředí je dobré si vše zapisovat. Pro zobrazení pravidel s čísly použijte sudo ufw status numbered. Pravidlo pak smažete příkazem sudo ufw delete ČÍSLO.

Pravidla lze mazat i podle přesné syntaxe, například sudo ufw delete allow 8080/tcp odstraní povolení portu 8080. U složitějších pravidel s IP adresami je bezpečnější mazání pomocí čísel.

Pořadí pravidel je důležité především při kombinaci povolení a zamítnutí. Pokud chcete například zablokovat určitou IP adresu před obecnějším povolením, můžete použít příkaz sudo ufw insert 1 deny from 203.0.113.55. To rychle zablokuje škodlivého aktéra.

Sledování provozu pomocí UFW logů

Firewall není jen o otevírání a zavírání portů, ale i o pochopení síťového provozu. Zapnutí logování provedete příkazem sudo ufw logging on. Úroveň logování lze nastavit na low, medium, high nebo full, přičemž low obvykle postačuje.

Logy najdete v souboru /var/log/ufw.log. Pro sledování v reálném čase použijte: sudo tail -f /var/log/ufw.log. V logu uvidíte blokované spojení, IP adresy, cílové porty a protokoly. Pokud přijde během krátké doby mnoho pokusů o připojení na port 22 z různých IP, měli byste zpřísnit zabezpečení SSH.

Vyšší úroveň logování zvyšuje nároky na disk, proto na serverech s velkým provozem zvažte log rotaci, centrální logování a nastavte si alarmy. V korporátním prostředí je důležité nejen ukládání záznamů, ale i jejich pravidelná analýza.

Nastavení IPv6 v UFW

Od roku 2026 je podpora IPv6 standardem v mnoha datacentrech. Někteří správci však nastavují pravidla pouze pro IPv4, což může vést k bezpečnostním mezerám. Pokud má váš server IPv6 adresu, ujistěte se, že UFW spravuje i IPv6 provoz.

V souboru /etc/default/ufw by měla být řádka IPV6=yes. Po změně je vhodné UFW restartovat příkazy sudo ufw disable a sudo ufw enable. Ve výpisu sudo ufw status byste měli vidět pravidla označená „v6“, což potvrzuje správu IPv6.

Pokud IPv6 nepoužíváte, nejprve ověřte požadavky poskytovatele a aplikací, než jej úplně vypnete. Nesprávná konfigurace IPv6 může totiž nechtěně otevřít služby, které na IPv4 uzavřete, což je častý a přehlížený bezpečnostní problém.

Proč se UFW chová jinak při použití Dockeru?

Docker při publikování portů upravuje iptables pravidla přímo. To může vést k tomu, že port, který je v UFW zavřený, je přes Docker vystavený navenek. Například příkaz docker run -p 8080:80 zpřístupní port 80 kontejneru jako port 8080 na hostiteli.

Na serverech s Dockerem proto doporučujeme:

  • Prohlédnout si výstup docker ps a zjistit, které porty jsou otevřené.
  • Odstranit nepotřebné definice portů (-p nebo ports).
  • Zvážit publikování služeb jen na localhost (127.0.0.1).
  • Kontrolovat pravidla UFW a bezpečnostní skupiny v cloudu společně.
  • V produkci nasazovat služby za reverzní proxy s kontrolou přístupu.

Bezpečnost kontejnerů nezávisí jen na UFW. Je třeba plánovat i síťové topologie Dockeru, bezpečnost obrazů, správu tajemství a aktualizace. Správný výběr serveru je stejně důležitý jako bezpečnost a výkon aplikace Dedikovaný server.

Praktický bezpečnostní checklist pro UFW

Tento seznam doporučených kroků je vhodný pro rychlý a bezpečný start na novém Linux serveru, zejména pokud plánujete provoz webu, API, e-shopu nebo zákaznického panelu:

  • Aktualizujte systém: sudo apt update && sudo apt upgrade -y.
  • Otestujte SSH přístup a ideálně nechte otevřenou druhou terminálovou relaci.
  • Nastavte výchozí zamítnutí příchozího provozu: sudo ufw default deny incoming.
  • Povolte odchozí provoz: sudo ufw default allow outgoing.
  • Povolte SSH port, případně omezte přístup podle IP.
  • Otevřete jen porty 80 a 443 pro webový server.
  • Neotevírejte porty databází do internetu.
  • Aktivujte UFW: sudo ufw enable.
  • Zkontrolujte pravidla: sudo ufw status verbose a sudo ufw status numbered.
  • Zapněte logování a během prvních 24 hodin sledujte podezřelý provoz.
  • Zkontrolujte IPv6 pravidla.
  • Pokud používáte Docker nebo správu panelů, otestujte dopady na porty.

Ukázková konfigurace UFW pro WordPress server

Představme si server s jedním WordPress webem na Ubuntu, s Nginx, PHP-FPM a MySQL. MySQL naslouchá jen na localhost, web je dostupný přes HTTPS a SSH je povolen jen z IP správce. Nastavení UFW může vypadat takto:

  • sudo ufw default deny incoming
  • sudo ufw default allow outgoing
  • sudo ufw allow from 203.0.113.10 to any port 22 proto tcp
  • sudo ufw allow 80/tcp
  • sudo ufw allow 443/tcp
  • sudo ufw logging on
  • sudo ufw enable
  • sudo ufw status verbose

V tomto nastavení není SSH dostupné komukoli, web má otevřené nezbytné porty a databáze je uzavřená. WordPress by měl být dále zabezpečen bezpečnostními pluginy, silnými hesly správců, aktuálními šablonami a pluginy, pravidelnými zálohami a SSL certifikátem. Správná správa domény a DNS také zajistí dostupnost Dotaz na doménu.

Časté chyby a jak je řešit

Po aktivaci UFW se ztratil SSH přístup

Tento problém nastává, když nebylo povoleno pravidlo pro SSH před zapnutím UFW. Pokud máte přístup ke konzoli přes panel poskytovatele, přidejte příslušné pravidlo, například sudo ufw allow 22/tcp. Pokud ne, kontaktujte podporu. Proto vždy přidávejte pravidlo pro SSH před aktivací firewallu.

Webová stránka není dostupná

I když je webový server spuštěný, pokud nejsou otevřené porty 80 a 443, stránky se nenačtou. Zkontrolujte pravidla příkazem sudo ufw status verbose a porty, na kterých web server naslouchá, příkazem ss -tulpn. Ověřte také správné nastavení DNS Správa DNS.

E-mailové služby nefungují

E-mailové servery používají několik portů (25, 465, 587, 993, 995 atd.). Pokud využíváte mail hosting, nemusíte je na serveru otevírat korporátní e-mailový hosting. V opačném případě je nutné porty povolit podle potřeby.

Přidání pravidla nemá efekt

Může to být kvůli špatnému protokolu, portu, vlivu Dockeru, bezpečnostních skupin v cloudu nebo odlišnému portu aplikace. UFW filtruje na síťové vrstvě, ale pokud aplikace neběží nebo naslouchá jinde, pravidlo nefunguje. Proto kontrolujte firewall, stav služby i nastavení sítě společně.

Nejlepší bezpečnostní postupy pro UFW v roce 2026

Moderní zabezpečení serverů je komplexní. Pro UFW platí tyto zásady:

  • Princip minimálních práv: otevírejte jen skutečně potřebné porty.
  • Bezpečnost autentizace: používejte SSH klíče místo hesel.
  • IP omezení: spravujte přístupy k administračním portům pomocí pevné IP nebo VPN.
  • Monitorování: pravidelně sledujte UFW a systémové logy.
  • Záloha a nouzový plán: mějte konzolový přístup pro případ chybného pravidla.
  • Vícevrstvá ochrana: kombinujte UFW s WAF, SSL, aktualizacemi, zálohami a bezpečností aplikací.
  • Dokumentace: zaznamenávejte důvod přidání každého pravidla.

Dobře nastavený firewall je nedílnou součástí spolehlivého hostingového prostředí. S růstem provozu plánujte nejen pravidla, ale i zdroje, zálohy, CDN, SSL a monitoring Hostingové balíčky.

Často kladené otázky

Zabezpečí UFW můj server kompletně?

Ne. UFW zmenšuje riziko tím, že zavírá nepotřebné porty, ale nestačí jako jediná ochrana. Kombinujte jej s aktualizacemi, SSH klíči, silnými hesly, SSL certifikáty, zálohami a bezpečností aplikací.

Stačí otevřít porty 80 a 443 pro web?

Obvykle ano, ale nezapomeňte na bezpečný přístup ke správě serveru přes SSH (port 22 nebo jiný). Databázové a administrační porty by měly být omezeny podle IP adres.

Zlepší bezpečnost změna SSH portu?

Změna portu může omezit automatické útoky, ale není to samospásné řešení. Důležitější je použití SSH klíčů, vypnutí přihlašování heslem, IP omezení a ochrana pomocí UFW limit nebo fail2ban.

Řídí UFW i porty Docker kontejnerů?

Ne vždy podle očekávání. Docker přímo upravuje iptables, proto je potřeba sledovat otevřené porty přes docker ps a pravidla UFW společně.

Mám kontrolovat IPv6 nastavení u UFW?

Ano. Pokud server využívá IPv6, ujistěte se, že UFW spravuje i tento provoz. Zkontrolujte nastavení /etc/default/ufw a výpis pravidel s IPv6.

Shrnuto, správa firewallu pomocí UFW na Linux serverech je rychlá, přehledná a účinná. Správná výchozí pravidla, zabezpečení SSH, kontrola portů pro web a sledování logů výrazně sníží riziko útoků. Pokud spouštíte nový projekt, plánujte bezpečný hosting, SSL certifikáty a pravidelnou údržbu společně. Pro výběr ideální infrastruktury můžete využít služby Hostragons a postupně rozšiřovat bezpečnostní nastavení podle vašich potřeb a růstu projektu.

Sdílejte tento článek:

Tým Hostragons

Aktuální průvodci od našeho týmu odborníků na hosting, servery a doménová jména. Pojďme společně najít to správné řešení pro váš projekt.

Kontaktujte nás