Tento článok ukazuje, ako nainštalovať a používať UFW na vašom Ubuntu 20.04 systém LTS.
Inštalácia
UFW je predinštalovaný na väčšine systémov Ubuntu. Ak vo vašom zostavení nie je tento program už nainštalovaný, môžete ho nainštalovať pomocou správcov balíkov snap alebo apt.$ sudo snap nainštalovať ufw
$ sudo apt nainštalovať ufwJa osobne na to radšej používam správcu balíkov apt, pretože snap je menej populárny a ja nechcem mať túto extra zložitosť. V čase písania tohto článku bola verzia zverejnená pre UFW 0.36 pre 20.04 vydanie.
Prichádzajúci vs. Odchádzajúca prevádzka
Ak ste vo svete sietí začiatočník, musíte si najskôr ujasniť rozdiel medzi prichádzajúcou a odchádzajúcou komunikáciou.
Keď inštalujete aktualizácie pomocou apt-get, prechádzate internet alebo kontrolujete svoj e-mail, odosielate „odchádzajúce“ požiadavky na servery, ako sú Ubuntu, Google atď. Na prístup k týmto službám nepotrebujete ani verejnú IP. Spravidla je pre domáci širokopásmové pripojenie pridelená jedna verejná adresa IP a každé zariadenie dostane svoju vlastnú súkromnú adresu IP. Smerovač potom spracováva prenos pomocou niečoho známeho ako NAT alebo preklad sieťových adries.
Podrobnosti o NAT a súkromných IP adresách presahujú rámec tohto článku, ale vyššie prepojené video je vynikajúcim východiskovým bodom. Keď sa vrátime k UFW, predvolene UFW umožní všetok bežný odchádzajúci webový prenos. Vaše prehliadače, správcovia balíkov a ďalšie programy vyberajú náhodné číslo portu - zvyčajne číslo nad 3 000 - a tak môže každá aplikácia sledovať svoje pripojenie.
Ak servery prevádzkujete v cloude, zvyčajne majú verejnú adresu IP a vyššie uvedené pravidlá umožňujúce odchádzajúcu komunikáciu stále platia. Pretože stále budete používať nástroje, ako sú správcovia balíkov, ktorí so zvyškom sveta hovoria ako „klient“, UFW to predvolene umožňuje.
Zábava začína prichádzajúcou premávkou. Aplikácie, ako napríklad server OpenSSH, ktorý používate na prihlásenie do svojho virtuálneho počítača, počúvajú na konkrétnych portoch (napríklad 22) prichádzajúci rovnako ako iné aplikácie. Webové servery potrebujú prístup k portom 80 a 443.
Súčasťou práce brány firewall je umožniť konkrétnym aplikáciám počúvať určitú prichádzajúcu komunikáciu a zároveň blokovať všetky nepotrebné aplikácie. Na vašom VM môžete mať nainštalovaný databázový server, ale zvyčajne nemusí počúvať prichádzajúce požiadavky na rozhraní s verejnou IP. Zvyčajne iba počúva požiadavky na rozhraní spätnej väzby.
Na webe je veľa robotov, ktorí neustále bombardujú servery falošnými požiadavkami, aby sa dostali hrubou silou, alebo aby vykonali jednoduchý útok Denial of Service. Dobre nakonfigurovaný firewall by mal byť schopný blokovať väčšinu z týchto shenanigans pomocou doplnkov tretích strán, ako je Fail2ban.
Zatiaľ sa však zameriame na veľmi základné nastavenie.
Základné použitie
Teraz, keď máte vo svojom systéme nainštalované UFW, sa pozrieme na niektoré základné použitia tohto programu. Pretože pravidlá brány firewall sa uplatňujú v celom systéme, nižšie uvedené príkazy sa spúšťajú ako používateľ root. Ak chcete, môžete pre tento postup použiť sudo s príslušnými oprávneniami.
# stav ufwStav: neaktívny
Štandardne je UFW v neaktívnom stave, čo je dobré. Nechcete blokovať všetku prichádzajúcu komunikáciu na porte 22, čo je predvolený port SSH. Ak ste prihlásení na vzdialený server cez SSH a zablokujete port 22, budete mimo server.
UFW nám uľahčuje vypichovanie jamiek iba pre OpenSSH. Spustite nasledujúci príkaz:
[chránené e-mailom]: ~ # zoznam aplikácií ufwDostupné aplikácie:
OpenSSH
Všimnite si, že som stále nepovolil bránu firewall. Teraz pridáme OpenSSH do nášho zoznamu povolených aplikácií a potom povolíme bránu firewall. Urobíte to zadaním nasledujúcich príkazov:
# ufw povoliť OpenSSHPravidlá boli aktualizované
Pravidlá aktualizované (v6)
# ufw povoliť
Príkaz môže narušiť existujúce pripojenia SSH. Pokračujte v prevádzke (y | n)? r.
Brána firewall je teraz aktívna a povolená pri štarte systému.
Gratulujeme, UFW je teraz aktívny a beží. UFW teraz umožňuje iba OpenSSH počúvať prichádzajúce požiadavky na porte 22. Ak chcete kedykoľvek skontrolovať stav brány firewall, spustite nasledujúci kód:
# stav ufwStav: aktívny
Do akcie od
-- ------ ----
OpenSSH ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)
Ako vidíte, OpenSSH teraz môže prijímať požiadavky z ľubovoľného miesta na internete, pokiaľ sa k nim dostane na porte 22. Riadok v6 naznačuje, že pravidlá sa uplatňujú aj pre protokol IPv6.
Môžete samozrejme zakázať určité rozsahy adries IP alebo povoliť iba určitý rozsah adries IP, v závislosti od bezpečnostných obmedzení, v ktorých pracujete.
Pridávanie aplikácií
U najpopulárnejších aplikácií príkaz ufw app list po inštalácii automaticky aktualizuje svoj zoznam politík. Napríklad po inštalácii webového servera Nginx uvidíte nasledujúce nové možnosti:
# apt nainštalovať nginx# zoznam aplikácií ufw
Dostupné aplikácie:
Nginx plný
Nginx HTTP
Nginx HTTPS
OpenSSH
Pokračujte a skúste experimentovať s týmito pravidlami. Upozorňujeme, že môžete jednoducho povoliť čísla portov a nemusíte čakať na zobrazenie profilu aplikácie. Napríklad ak chcete povoliť port 443 pre prenos HTTPS, jednoducho použite nasledujúci príkaz:
# ufw povoliť 443# ufw status
Stav: aktívny
Do akcie od
-- ------ ----
OpenSSH ALLOW Anywhere
443 POVOLENÉ kdekoľvek
OpenSSH (v6) ALLOW Anywhere (v6)
443 (v6) ALLOW Anywhere (v6)
Záver
Teraz, keď máte zoradené základy UFW, môžete preskúmať ďalšie výkonné funkcie brány firewall, počnúc povolením a blokovaním rozsahov adries IP. Vďaka jasným a bezpečným pravidlám brány firewall budú vaše systémy zabezpečené a chránené.