Zobrazit stránkuStarší verzeZpětné odkazyNahoru Tato stránka je pouze pro čtení. Můžete si pouze prohlédnout zdrojový kód, ale ne ho měnit. Zeptejte se správce, pokud si myslíte, že něco není v pořádku. ====== UFW ====== {{page>konvence/pokročilý}} **UFW** neboli Uncomplicated Firewall je výchozí nástroj k nastavení pravidel pro firewall v Ubuntu. UFW je možné nastavovat pouze přes [[:Terminál]], a je proto vhodný hlavně pro servery. Používání UFW vyžaduje více zkušeností s Ubuntu. Méně zkušení uživatelé a uživatelé osobních počítačů jistě uvítají existenci [[GUFW]], což je grafická nadstavba UFW. ====== Instalace ====== {{:ubuntu.png}} Od [[:vydání]] Ubuntu 8.04 je UFW součástí základní instalace Ubuntu i jeho derivátů. {{:apt.png}} [[:Instalace programů|Nainstalujte]] balík [[apt://ufw|ufw]]. ====== Spuštění ====== {{:info.png}} UFW se spouští automaticky při startu systému. Ve výchozí instalaci je ovšem tato možnost zakázána. Spusťte tedy v [[Terminál|terminálu]] příkaz <code> sudo ufw enable </code> čímž spouštění UFW při každém startu povolíte. Spouštění UFW opět zakážete příkazem <code> sudo ufw disable </code> ====== Použití ====== Nejprve dvě malé poznámky. Každé nastavení je možné předznačit parametrem ''--dry-run'', který znamená "běh na sucho", tedy jen zkusit co by nastavení ovlivnilo, ale neprovádět. Postojů, který může firewall zaujmout je obecně několik: * allow - povolit * deny - zakázat (pro druhou stranu to vypadá, že nikdo nikdo neodpovídá/neexistuje) * reject - zakázat, ale odpovědět, že aktivní odmítáme * limit - povolit, ale omezit počet připojeních za nějakou časovou jednotku jako obranu proti brutal-force útokům. Např. více, jak 30 pokusů o spojení za minutu bude zakázáno. ===== Status ===== Příkazem <code> sudo ufw status </code> máte možnost zjistit jestli je firewall zapnut a jaká pravidla jsou použita. ===== Výchozí nastavení ===== Pokud neurčíte dále jinak, bude použito výchozí globální pravidlo, kterým můžete zakázat (doporučeno), povolit nebo odmítnout všechna příchozí spojení ze sítě. Obecná syntaxe je: <code> ufw [--dry-run] default allow|deny|reject [incoming|outgoing] </code> Pokud nedefinujeme směr (příchozí incoming nebo odchozí outgoing), bude se brát příchozí. Zakázání příchozího je doporučeno, ovšem odchozí způsobí, že se nedostanete nikam. <code> sudo ufw default deny </code> nebo povolit <code> sudo ufw default allow </code> Pokud ===== Pravidla ===== Kromě povolení/zakázání všech příchozích spojení, je nejdůležitější vlastností UFW možnost nastavení pravidel pro jednotlivé přenosy podle portu, protokolu nebo IP adresy. ==== Porty a protokoly ==== Zakázat/povolit přenosy podle konkrétní portu můžete příkazem <code> sudo ufw allow číslo_portu </code> respektive <code> sudo ufw deny číslo_portu </code> Volitelně můžete přidat i protokol. Tedy příkaz <code> sudo ufw allow číslo_portu/tcp sudo ufw deny číslo_portu/tcp </code> pro povolení/zákaz přenosu na portu ''číslo_portu'' pro protokol ''tcp'', respektive <code> sudo ufw allow číslo_portu/udp sudo ufw deny číslo_portu/udp </code> pro protokol ''udp''. ==== Služby ==== Přímo jednotlivé služby (tak jak jsou vypsány v ''/etc/services'') můžete povolovat/blokovat příkazem <code> sudo ufw allow služba </code> respektive <code> sudo ufw deny služba </code> ==== Pokročilá syntaxe ==== === IP adresa === Přenos z konkrétní IP adresy můžete povolit/zakázat příkazem <code> sudo ufw allow from ip_adresa </code> respektive <code> sudo ufw deny from ip_adresa </code> === IP adresa a port === Přenos z konkrétní IP adresy přes konkrétní port můžete povolit/zakázat příkazem <code> sudo ufw allow from ip_adresa to any port číslo_portu </code> respektive <code> sudo ufw deny from ip_adresa to any port číslo_portu </code> ==== Smazání pravidla ==== Pravidlo smažete jednoduše příkazem <code> sudo ufw delete pravidlo </code> kde ''pravidlo'' je ve stejném formátu jako příkaz, kterým bylo zavedeno (bez ''sudo ufw''). Druhou možností místo složitého znovu vypisování pravidla je ''ufw delete 3'', kde 3 je číslo našeho pravidla, které je vidět v ''ufw status numbered''. ===== Omezení počtu spojeních ===== ufw podporuje parametrem ''limit'' možnost omezit počet spojeních jako obranu proti opakovaným pokusům např. při brutal-force útoku. ufw odmítne spojení, pokud se IP adresa pokusila navázat více, jak 6 a více spojeních během posledních 30 vteřin. <code> ufw limit ssh/tcp </code> Více informací o této schopnosti najdete na [[http://www.debian-administration.org/articles/187]] ====== Příklady ====== <code cpp> #Porty a protokoly sudo ufw allow 53 ---> Povolí přenos přes port 53. sudo ufw deny 23/tcp ---> Zakáže přenos přes port 23 na protokolu tcp. #Služby sudo ufw deny ssh ---> Zakáže SSH. #IP adresa sudo ufw deny from 207.46.232.182 ---> Zakáže přenos z IP adresy 207.46.232.182. #IP adresa a port sudo ufw allow from 192.168.0.4 to any port 22 ---> Povolí přenos z IP adresy 192.168.0.4 přes port 22. #Mazání sudo ufw delete allow 53 ---> Smaže dříve zavedené pravidlo, které umožňovalo přenos přes port 53. </code> ====== Logování ====== Ve výchozím nastavení není povolen ufw vůbec, a po ''ufw enable'' není povoleno logování. Logovacích úrovní rozlišuje ufw několik, ale úplně stačí úroveň on neboli low, kdy se loguje jen zablokované spojení. <code> ufw logging on --> zapne (úroveň low) ufw logging off --> vypne ufw logging LEVEL --> zapne na určitou úroveň </code> Popis, co přesně logují jednotlivé úrovně viz [[http://manpages.ubuntu.com/manpages/lucid/en/man8/ufw.8.html|manuálová stránka]] (''man ufw''). V mém Ubuntu 10.04 Lucid Lynx se ukládají zprávy do ''/var/log/ufw.log''. ====== Odkazy ====== * [[http://www.root.cz/clanky/ufw-firewall-jednoduse-a-rychle/]] - další český návod * [[https://edge.launchpad.net/ufw|Domovská stránka programu]] {{:en.png}} * [[https://help.ubuntu.com/community/Uncomplicated_Firewall_ufw|Anglický návod k UFW]] {{:en.png}} Poslední úprava: 2019/02/25 17:21autor: 127.0.0.1