Kaip nustatyti UFW ugniasienę Ubuntu ir Debian
Tinkamai veikianti ugniasienė yra pati svarbiausia visos Linux sistemos saugumo dalis. Pagal numatytuosius nustatymus „Debian“ ir „Ubuntu“ platinimas turi ugniasienės konfigūravimo įrankį, pavadintą UFW (nesudėtinga ugniasienė), yra populiariausias ir paprasčiausias komandų eilutės įrankis, skirtas konfigūruoti ir valdyti užkardą Ubuntu ir Debian platinimuose.
Šiame straipsnyje paaiškinsime, kaip įdiegti ir nustatyti UFW užkardą Ubuntu ir Debian platinimuose.
Būtinos sąlygos
Prieš pradėdami nuo šio straipsnio, įsitikinkite, kad prisijungėte prie Ubuntu arba Debian serverio naudodami sudo vartotoją arba root paskyrą. Jei neturite sudo vartotojo, galite jį sukurti naudodami šias instrukcijas kaip root naudotojas.
adduser username
usermod -aG sudo username
su - username
sudo whoami
Įdiekite UFW ugniasienę Ubuntu ir Debian
UFW (Nesudėtinga ugniasienė) turėtų būti įdiegta pagal numatytuosius nustatymus Ubuntu ir Debian, jei ne, įdiekite ją naudodami APT paketų tvarkyklę naudodami šią komandą.
sudo apt install ufw
Patikrinkite UFW ugniasienę
Baigę diegti, galite patikrinti UFW būseną įvesdami.
sudo ufw status verbose
Pirmą kartą įdiegus, UFW ugniasienė išjungta pagal numatytuosius nustatymus, išvestis bus panaši į toliau pateiktą.
Status: inactive
Įgalinti UFW ugniasienę
Galite suaktyvinti arba įjungti UFW užkardą naudodami šią komandą, kuri turėtų įkelti ugniasienę ir įgalinti ją paleisti.
sudo ufw enable
Norėdami išjungti UFW užkardą, naudokite šią komandą, kuri iškrauna ugniasienę ir neleidžia jai paleisti įkrovos metu.
sudo ufw disable
Numatytoji UFW politika
Pagal numatytuosius nustatymus UFW užkarda atmeta visus gaunamus ryšius ir leidžia tik visus išeinančius ryšius su serveriu. Tai reiškia, kad niekas negali pasiekti jūsų serverio, nebent specialiai atidarote prievadą, o visos jūsų serveryje veikiančios paslaugos ar programos gali pasiekti išorinį tinklą.
Numatytoji UFW ugniasienės politika yra įdėta į /etc/default/ufw
failą ir gali būti pakeista naudojant šią komandą.
sudo ufw default deny incoming
sudo ufw default allow outgoing
UFW programų profiliai
Diegiant programinės įrangos paketą naudojant APT paketų tvarkyklę, kataloge /etc/ufw/applications.d
bus įtrauktas programos profilis, kuris apibrėžia paslaugą ir palaiko UFW nustatymus.
Galite išvardyti visus savo serveryje esančius programų profilius naudodami šią komandą.
sudo ufw app list
Priklausomai nuo programinės įrangos paketo įdiegimo jūsų sistemoje, išvestis atrodys panašiai:
Available applications:
APACHE
APACHE Full
APACHE SECURE
CUPS
OpenSSH
Postfix
Postfix SMTPS
Postfix Submission
Jei norite gauti daugiau informacijos apie tam tikrą profilį ir apibrėžtas taisykles, galite naudoti šią komandą.
sudo ufw app info 'Apache'
Profile: Apache
Title: Web Server
Description: Apache V2 is the next generation f the omnipresent Apache web server.
Ports:
80/tcp
Įgalinkite IPv6 su UFW
Jei serveris sukonfigūruotas naudojant IPv6, įsitikinkite, kad UFW yra sukonfigūruotas su IPv6 ir IPv4 palaikymu. Norėdami tai patikrinti, atidarykite UFW konfigūracijos failą naudodami mėgstamą redaktorių.
sudo vi /etc/default/ufw
Tada įsitikinkite, kad konfigūracijos faile IPV6 nustatyta kaip yes
, kaip parodyta.
IPV6=yes
Išsaugokite ir išeikite. Tada iš naujo paleiskite ugniasienę naudodami šias komandas:
sudo ufw disable
sudo ufw enable
Leisti SSH ryšius UFW
Jei iki šiol įjungėte UFW užkardą, ji blokuotų visus įeinančius ryšius, o jei prie serverio prisijungsite per SSH iš nuotolinės vietos, nebegalėsite jo vėl prisijungti.
Įgalinkime SSH ryšius su mūsų serveriu, kad tai neįvyktų, naudodami šią komandą:
sudo ufw allow ssh
Jei naudojate tinkintą SSH prievadą (pvz., prievadą 2222), turite atidaryti tą prievadą UFW užkardoje naudodami šią komandą.
sudo ufw allow 2222/tcp
Norėdami užblokuoti visus SSH ryšius, įveskite šią komandą.
sudo ufw deny ssh/tcp
sudo ufw deny 2222/tcp [If using custom SSH port]
Įgalinti konkrečius UFW prievadus
Taip pat galite atidaryti konkretų prievadą ugniasienėje, kad per jį būtų galima prisijungti prie tam tikros paslaugos. Pavyzdžiui, jei norite nustatyti žiniatinklio serverį, kuris klausosi prievadų 80 (HTTP) ir 443 (HTTPS >>) pagal numatytuosius nustatymus.
Žemiau pateikiami keli pavyzdžiai, kaip leisti įeinančius ryšius su Apache paslaugomis.
Atidarykite UFW prievadą 80 HTTP
sudo ufw allow http [By service name]
sudo ufw allow 80/tcp [By port number]
sudo ufw allow 'Apache' [By application profile]
Atidarykite 443 prievadą HTTPS UFW
sudo ufw allow https
sudo ufw allow 443/tcp
sudo ufw allow 'Apache Secure'
Leisti UFW prievadų diapazonus
Darant prielaidą, kad turite programų, kurias norite paleisti įvairiuose prievaduose (5000–5003), galite pridėti visus šiuos prievadus naudodami šias komandas.
sudo ufw allow 5000:5003/tcp
sudo ufw allow 5000:5003/udp
Leisti konkrečius IP adresus
Jei norite leisti jungtis visuose prievaduose iš konkretaus IP adreso 192.168.56.1, turite nurodyti prieš IP adresą.
sudo ufw allow from 192.168.56.1
Leisti konkrečius IP adresus konkrečiame prievade
Jei norite leisti prisijungti prie konkretaus prievado (pvz., prievado 22) iš namų įrenginio, kurio IP adresas yra 192.168.56.1, turite pridėti bet kurį prievadą< ir prievado numerį po IP adreso, kaip parodyta.
sudo ufw allow from 192.168.56.1 to any port 22
Leisti tinklo potinklius prie konkretaus prievado
Leisti prisijungti tam tikriems IP adresams nuo 192.168.1.1 iki 192.168.1.254 iki prievado 22 (SSH) , paleiskite šią komandą.
sudo ufw allow from 192.168.1.0/24 to any port 22
Leisti konkrečią tinklo sąsają
Jei norite leisti prisijungti prie konkrečios tinklo sąsajos eth2 tam tikram prievadui 22 (SSH), paleiskite šią komandą.
sudo ufw allow in on eth2 to any port 22
Neleisti prisijungti prie UFW
Pagal numatytuosius nustatymus visi gaunami ryšiai yra blokuojami, nebent konkrečiai atidarėte ryšį UFW. Pavyzdžiui, atidarėte prievadus 80 ir 443, o jūsų žiniatinklio serveris yra užpultas iš nežinomo tinklo 11.12.13.0/24.
Norėdami užblokuoti visus ryšius iš šio konkretaus 11.12.13.0/24 tinklo diapazono, galite naudoti šią komandą.
sudo ufw deny from 11.12.13.0/24
Jei norite blokuoti tik 80 ir 443 prievadų ryšius, galite naudoti šias komandas.
sudo ufw deny from 11.12.13.0/24 to any port 80
sudo ufw deny from 11.12.13.0/24 to any port 443
Ištrinkite UFW taisykles
Yra du būdai, kaip ištrinti UFW taisykles: pagal taisyklės numerį ir pagal faktinę taisyklę.
Norėdami ištrinti UFW taisykles naudodami taisyklės numerį, pirmiausia turite pateikti taisykles pagal skaičius, naudodami šią komandą.
sudo ufw status numbered
Pavyzdžio išvestis
Status: active
To Action From
-- ------ ----
[ 1] 22/tcp ALLOW IN Anywhere
[ 2] 80/tcp ALLOW IN Anywhere
Jei norite ištrinti taisyklę Nr. 1, naudokite šią komandą.
sudo ufw delete 1
Antrasis būdas yra ištrinti taisyklę naudojant faktinę taisyklę, pavyzdžiui, norėdami ištrinti taisyklę, nurodykite prievado numerį su protokolu, kaip parodyta.
sudo ufw delete allow 22/tcp
Sauso paleidimo UFW taisyklės
Naudodami vėliavėlę --dry-run
, galite paleisti bet kokias ufw komandas neatlikdami jokių pakeitimų sistemos užkardoje. Tai tiesiog parodo pakeitimus, kurie turėtų įvykti.
sudo ufw --dry-run enable
Iš naujo nustatykite UFW ugniasienę
Dėl vienos ar kitos priežasties, jei norite ištrinti/iš naujo nustatyti visas ugniasienės taisykles, įveskite šias komandas, tai grąžins visus jūsų pakeitimus ir pradės iš naujo.
sudo ufw reset
sudo ufw status
Išplėstinė UFW funkcija
UFW ugniasienė gali atlikti bet ką, ką daro iptables. Tai galima padaryti naudojant skirtingus taisyklių rinkinius, kurie yra ne kas kita, o paprasti iptables-restore tekstiniai failai.
UFW ugniasienės derinimas arba papildomų iptables komandų pridėjimas neleidžiamas naudojant ufw komandą, tereikia pakeisti šiuos tekstinius failus
- /etc/default/ufw: pagrindinis konfigūracijos failas su iš anksto nustatytomis taisyklėmis.
- /etc/ufw/before[6].rules: šiame faile taisyklės apskaičiuojamos prieš pridedant naudojant ufw komandą.
- /etc/ufw/after[6].rules: šiame faile taisyklės apskaičiuojamos pridėjus naudojant ufw komandą.
- /etc/ufw/sysctl.conf: šis failas naudojamas branduolio tinklui derinti.
- /etc/ufw/ufw.conf: šis failas įgalina ufw paleidžiant.
Viskas! UFW – tai puiki sąsaja su iptables su patogia sąsaja, leidžiančia apibrėžti sudėtingas taisykles viena ufw komanda.
Jei turite klausimų ar minčių apie šį ufw straipsnį, naudokite toliau pateiktą komentarų formą, kad su mumis susisiektumėte.