Šajā rakstā ir parādīts, kā instalēt un izmantot UFW savā Ubuntu 20.04 LTS sistēma.
Uzstādīšana
UFW ir iepriekš instalēts lielākajā daļā Ubuntu sistēmu. Ja jūsu būvējumā šī programma vēl nav instalēta, varat to instalēt, izmantojot snap vai apt pakotņu pārvaldniekus.$ sudo snap install ufw
$ sudo apt instalējiet ufwEs personīgi gribētu izmantot apt pakotņu pārvaldnieku, lai to izdarītu, jo snap ir mazāk populārs, un es nevēlos, lai man būtu šī papildu sarežģītība. Šīs rakstīšanas laikā UFW publicētā versija ir 0.36 par 20.04 atbrīvošana.
Ienākošie vs. Izejošā satiksme
Ja esat iesācējs tīkla pasaulē, vispirms jums jāprecizē atšķirība starp ienākošo un izejošo datplūsmu.
Instalējot atjauninājumus, izmantojot apt-get, pārlūkojiet internetu vai pārbaudiet savu e-pastu, tas, ko jūs darāt, sūta "izejošos" pieprasījumus serveriem, piemēram, Ubuntu, Google utt. Lai piekļūtu šiem pakalpojumiem, jums pat nav nepieciešams publisks IP. Parasti, piemēram, mājas platjoslas savienojumam, tiek piešķirta viena publiska IP adrese, un katra ierīce iegūst savu privāto IP. Pēc tam maršrutētājs apstrādā trafiku, izmantojot to, kas pazīstams kā NAT vai Tīkla adrešu tulkošana.
Informācija par NAT un privātajām IP adresēm ir ārpus šī raksta darbības jomas, taču iepriekš piesaistītais videoklips ir lielisks sākumpunkts. Atgriežoties pie UFW, pēc noklusējuma UFW ļaus visu parasto izejošo tīmekļa trafiku. Jūsu pārlūkprogrammas, pakotņu pārvaldnieki un citas programmas izvēlas nejaušu porta numuru - parasti skaitli virs 3000 - un tādējādi katra lietojumprogramma var izsekot savam savienojumam (-iem).
Palaižot serverus mākonī, tiem parasti ir publiska IP adrese, un iepriekšējie noteikumi par izejošās datplūsmas atļaušanu joprojām ir spēkā. Tā kā jūs joprojām izmantosiet utilītprogrammas, piemēram, pakotņu pārvaldniekus, kas runā ar pārējo pasauli kā “klientu”, UFW to pēc noklusējuma atļauj.
Jautrība sākas ar ienākošo satiksmi. Lietojumprogrammas, piemēram, OpenSSH serveris, kuru izmantojat, lai pieteiktos savā VM, klausītos noteiktos portos (piemēram, 22) ienākošie pieprasījumus, tāpat kā citas lietojumprogrammas. Tīmekļa serveriem ir nepieciešama piekļuve 80. un 443. portiem.
Ugunsmūra uzdevums ir ļaut konkrētām lietojumprogrammām klausīties noteiktu ienākošo trafiku, vienlaikus bloķējot visas nevajadzīgās. Iespējams, ka jūsu virtuālajā mašīnā ir instalēts datu bāzes serveris, taču tam parasti nav jāuzklausa ienākošie pieprasījumi saskarnē ar publisku IP. Parasti tas vienkārši klausās atgriezeniskās saites interfeisu, lai iegūtu pieprasījumus.
Tīmeklī ir daudz robotu, kas pastāvīgi bombardē serverus ar viltus pieprasījumiem brutāli piespiesties vai veikt vienkāršu pakalpojuma atteikuma uzbrukumu. Labi konfigurētam ugunsmūrim vajadzētu būt iespējai bloķēt lielāko daļu šo shenanigans ar tādu trešo pušu spraudņu palīdzību kā Fail2ban.
Bet pagaidām mēs koncentrēsimies uz ļoti vienkāršu iestatīšanu.
Pamata lietošana
Tagad, kad jūsu sistēmā ir instalēts UFW, mēs aplūkosim dažus šīs programmas pamatlietojumus. Tā kā ugunsmūra kārtulas tiek piemērotas visā sistēmā, šīs komandas tiek palaistas kā root lietotājs. Ja vēlaties, šai procedūrai varat izmantot sudo ar atbilstošām privilēģijām.
# ufw statussStatuss: neaktīvs
Pēc noklusējuma UFW ir neaktīvā stāvoklī, kas ir laba lieta. Jūs nevēlaties bloķēt visu ienākošo trafiku 22. portā, kas ir noklusējuma SSH ports. Ja esat pieteicies attālajā serverī, izmantojot SSH, un bloķējat 22. portu, jūs tiksit bloķēts ārpus servera.
UFW ļauj mums viegli iebāzt caurumu tikai OpenSSH. Palaidiet zemāk esošo komandu:
[aizsargāts pa e-pastu]: ~ # ufw lietotņu sarakstsPieejamās lietojumprogrammas:
OpenSSH
Ievērojiet, ka joprojām neesmu iespējojis ugunsmūri. Tagad mēs pievienosim OpenSSH savam atļauto lietotņu sarakstam un pēc tam iespējosim ugunsmūri. Lai to izdarītu, ievadiet šādas komandas:
# ufw atļaut OpenSSHNoteikumi ir atjaunināti
Noteikumi atjaunināti (v6)
# ufw iespējot
Komanda var pārtraukt esošos SSH savienojumus. Turpiniet darbu (y | n)? y.
Ugunsmūris tagad ir aktīvs un iespējots sistēmas startēšanas laikā.
Apsveicam, tagad UFW darbojas un darbojas. UFW tagad ļauj tikai OpenSSH klausīties ienākošos pieprasījumus 22. ostā. Lai jebkurā laikā pārbaudītu ugunsmūra statusu, palaidiet šādu kodu:
# ufw statussStatuss: aktīvs
Uz darbību No
-- ------ ----
OpenSSH ALLOW jebkur
OpenSSH (v6) Ļaut jebkur (v6)
Kā redzat, OpenSSH tagad var saņemt pieprasījumus no jebkuras vietas internetā, ja vien tas to sasniedz 22. ostā. Līnija v6 norāda, ka noteikumi tiek piemēroti arī IPv6.
Jūs, protams, varat aizliegt noteiktus IP diapazonus vai atļaut tikai noteiktu IP diapazonu atkarībā no drošības ierobežojumiem, kuros strādājat.
Lietojumprogrammu pievienošana
Vispopulārākajām lietojumprogrammām komanda ufw lietotņu saraksts pēc instalēšanas automātiski atjaunina savu politiku sarakstu. Piemēram, instalējot Nginx tīmekļa serveri, redzēsit šādas jaunas opcijas:
# apt instalēt nginx# ufw lietotņu saraksts
Pieejamās lietojumprogrammas:
Nginx Pilns
Nginx HTTP
Nginx HTTPS
OpenSSH
Mēģiniet eksperimentēt ar šiem noteikumiem. Ņemiet vērā, ka varat vienkārši atļaut porta numurus, nevis gaidīt, kamēr tiek parādīts lietojumprogrammas profils. Piemēram, lai atļautu 443 portu HTTPS trafikam, vienkārši izmantojiet šādu komandu:
# ufw atļaut 443# ufw statuss
Statuss: aktīvs
Uz darbību No
-- ------ ----
OpenSSH ALLOW jebkur
443 Ļaut jebkur
OpenSSH (v6) Ļaut jebkur (v6)
443 (v6) Ļaut jebkur (v6)
Secinājums
Tagad, kad jums ir sakārtoti UFW pamati, varat izpētīt citas spēcīgas ugunsmūra iespējas, sākot no IP diapazonu atļaušanas un bloķēšanas. Skaidras un drošas ugunsmūra politikas nodrošinās jūsu sistēmu drošību un aizsardzību.