Az UFW telepítése és konfigurálása – egy egyszerű tűzfal a Debian/Ubuntu rendszerben
Mivel a számítógépek egymáshoz kapcsolódnak, a szolgáltatások gyorsan növekednek. Az E-mail, Közösségi média, Online áruház, Csevegés a Webkonferencia-ig olyan szolgáltatások, amelyek felhasználó által használt. De a másik oldalon ez a kapcsolat csak a kétoldalas kést szereti. Az is lehetséges, hogy rossz üzeneteket küldjön ezekre a számítógépekre, például vírus, rosszindulatú programok vagy trójai alkalmazások.
Az Internet, mint a legnagyobb számítógépes hálózat nem mindig van tele jó emberekkel. Annak érdekében, hogy megbizonyosodjunk arról, hogy számítógépeink/szervereink biztonságban vannak, meg kell védenünk azokat.
A számítógépen/szervereken az egyik kötelező összetevő a tűzfal. A Wikipedia definíciója a következő:
A számítástechnikában a tűzfal egy szoftver vagy hardver alapú hálózati biztonsági rendszer, amely a bejövő és kimenő hálózati forgalmat az adatcsomagok elemzésével és az alkalmazott szabálykészlet alapján meghatározza, hogy átengedjük-e vagy sem.
Az Iptables a szerverek által széles körben használt tűzfalak egyike. Ez egy olyan program, amely a kiszolgáló bejövő és kimenő forgalmának szabályrendszer alapján történő kezelésére szolgál. Általában csak megbízható kapcsolat léphet be a szerverre. De az IPTables konzol módban fut, és ez bonyolult. Azok, akik ismerik az iptables szabályokat és parancsokat, elolvashatják a következő cikket, amely leírja az iptables tűzfal használatát.
- Alapvető IPTables (Linux tűzfal) útmutató
UFW tűzfal telepítése Debian/Ubuntu alatt
Az IPTables beállításának bonyolultságának csökkentése érdekében számos előlap létezik. Ha Ubuntu Linuxot futtat, akkor az ufw alapértelmezett tűzfaleszköz. Kezdjük az ufw tűzfal felfedezésével.
Mi az ufw
Az ufw (Uncomplicated Firewall) a legszélesebb körben használt iptables tűzfal kezelőfelülete, és nagyon kényelmes a gazdagép alapú tűzfalak számára. Az ufw keretet ad a netfilter kezeléséhez, valamint parancssori felületet biztosít a tűzfal vezérléséhez. Felhasználóbarát és könnyen használható felületet biztosít azoknak a Linux kezdőknek, akik nem nagyon ismerik a tűzfal koncepciókat.
Míg a másik oldalon ugyanazok a bonyolult parancsok segítik az adminisztrátorokat, addig a parancssori felület segítségével bonyolult szabályokat állíthat be. Az ufw egy upstream más disztribúciókhoz, mint például a Debian, az Ubuntu és a Linux Mint.
Alapvető használat ufw
Először ellenőrizze, hogy az ufw telepítve van-e a következő paranccsal.
sudo dpkg --get-selections | grep ufw
ufw install
Ha nincs telepítve, az alább látható módon telepítheti az apt paranccsal.
sudo apt-get install ufw
Használat előtt ellenőrizze, hogy az ufw fut-e vagy sem. Az ellenőrzéshez használja a következő parancsot.
sudo ufw status
Ha az Állapot: inaktív lehetőséget találta, az azt jelenti, hogy nem aktív, vagy le van tiltva.
ÚJ! Nélkülözhetetlen e-könyv minden Linux rendszergazdának!Töltsön le ingyenes 696 oldalas e-könyvet
Az ufw engedélyezése/letiltása
Az engedélyezéséhez csak be kell írnia a következő parancsot a terminálba.
sudo ufw enable
Firewall is active and enabled on system startup
A letiltásához csak írja be.
sudo ufw disable
Sorolja fel az aktuális ufw szabályokat
A tűzfal aktiválása után hozzáadhatja a szabályokat. Ha látni szeretné, hogy melyek az alapértelmezett szabályok, írjon be.
sudo ufw status verbose
Minta kimenet
Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing)
New profiles: skip
$
Ufw szabályok hozzáadása
Amint látja, alapértelmezés szerint minden bejövő kapcsolat le van tiltva. Ha távolítani szeretné a gépet, akkor engedélyeznie kell a megfelelő portot. Például engedélyezni szeretné az ssh kapcsolatot. Itt van a parancs az engedélyezéséhez.
Hozzáférést enged
sudo ufw allow ssh
[sudo] password for pungki :
Rule added
Rule added (v6)
$
Ha újra ellenőrzi az állapotot, egy ehhez hasonló kimenetet fog látni.
sudo ufw status
To Action From
-- ----------- ------
22 ALLOW Anywhere
22 ALLOW Anywhere (v6)
Ha sok szabálya van, és menet közben minden szabályra számot szeretne tenni, használja a számozott paramétert.
sudo ufw status numbered
To Action From
------ ----------- ------
[1] 22 ALLOW Anywhere
[2] 22 ALLOW Anywhere (v6)
Az első szabály szerint a 22-es portra a Bárhonnan bejövő kapcsolat megengedett, mind a tcp, mind az udp csomagok engedélyezettek. Mi a teendő, ha csak a tcp csomagot szeretné engedélyezni? Ezután hozzáadhatja a tcp paramétert a port szám után. Íme egy példa minta kimenettel.
sudo ufw allow ssh/tcp
To Action From
------ ----------- ------
22/tcp ALLOW Anywhere
22/tcp ALLOW Anywhere (v6)
Magtagadni a hozzáférést
Ugyanezek a trükkök érvényesek a Megtagadás szabályra is. Tegyük fel, hogy szeretné megtagadni az ftp szabályt. Tehát csak gépelni kell.
sudo ufw deny ftp
To Action From
------ ----------- ------
21/tcp DENY Anywhere
21/tcp DENY Anywhere (v6)
Adott port hozzáadása
Néha van egy egyedi portunk, amely nem követ semmilyen szabványt. Tegyük fel, hogy a gépünkön lévő ssh portot 22-ről 2290-re változtatjuk. Ezután a 2290 port engedélyezéséhez a következőképpen adhatjuk hozzá.
sudo ufw allow
To Action From
-- ----------- ------
2290 ALLOW Anywhere
2290 ALLOW Anywhere (v6)
Arra is lehetőség van, hogy a port-tartományt hozzáadja a szabályhoz. Ha a 2290 – 2300 portot szeretnénk megnyitni tcp protokollal, akkor a parancs a következő lesz.
sudo ufw allow 2290:2300/tcp
To Action From
------ ----------- ------
2290:2300/tcp ALLOW Anywhere
2290:2300/tcp ALLOW Anywhere (v6)
míg ha az udp parancsot szeretné használni, csak használja a következő parancsot.
sudo ufw allow 2290:2300/udp
To Action From
------ ----------- ------
2290:2300/udp ALLOW Anywhere
2290:2300/udp ALLOW Anywhere (v6)
Kérjük, ne feledje, hogy a „tcp” vagy az „udp” kifejezést kifejezetten be kell írnia, különben az alábbihoz hasonló hibaüzenetet kap.
ERROR: Must specify ‘tcp’ or ‘udp’ with multiple ports
Adott IP hozzáadása
Korábban a szolgáltatás vagy a port alapján adtunk hozzá szabályokat. Az Ufw lehetővé teszi az IP-címen alapuló szabályok hozzáadását is. Íme a minta parancs.
sudo ufw allow from 192.168.0.104
Használhat alhálózati maszkot is a tartomány szélesítéséhez.
sudo ufw allow form 192.168.0.0/24
To Action From
-- ----------- ------
Anywhere ALLOW 192.168.0.104
Anywhere ALLOW 192.168.0.0/24
Mint látható, a paraméter csak a kapcsolat forrását korlátozza. Míg a cél – amelyet a Cél oszlop jelöl – Bárhol. A célt a „Címzett” paraméterrel is kezelheti. Lássuk a mintát a 22-es porthoz (ssh) való hozzáférés engedélyezéséhez.
sudo ufw allow to any port 22
A fenti parancs lehetővé teszi a hozzáférést bárhonnan és bármilyen protokollból a 22-es porthoz.
Paraméterek kombinálása
Konkrétabb szabályokhoz kombinálhatja az IP-címet, a protokollt és a portot. Tegyük fel, hogy olyan szabályt szeretnénk létrehozni, amely csak a 192.168.0.104 IP-címről, csak a tcp protokollról és a 22 portról korlátozza a kapcsolatot. Ezután a parancs az alábbi lesz.
sudo ufw allow from 192.168.0.104 proto tcp to any port 22
A tiltó szabály létrehozásának szintaxisa hasonló az engedélyezési szabályhoz. Csak a paramétert engedélyezésről megtagadásra kell módosítania.
Szabályok törlése
Előfordulhat, hogy időnként törölnie kell a meglévő szabályt. Az ufw segítségével ismét egyszerű a szabályok törlése. A fenti mintában van egy szabály, amelyet törölni szeretne.
To Action From
-- ----------- ------
22/tcp ALLOW 192.168.0.104
21/tcp ALLOW Anywhere
21/tcp ALLOW Anywhere (v6)
A szabályok törlésének két módja van.
1. módszer
Az alábbi parancs törli az ftp szolgáltatásnak megfelelő szabályokat. Tehát a 21/tcp, amely az ftp portot jelenti, törlődik.
sudo ufw delete allow ftp
2. módszer
De amikor megpróbálta törölni az első szabályt a fenti példában az alábbi paranccsal.
sudo ufw delete allow ssh
Or
sudo ufw delete allow 22/tcp
Hibaüzenetet találhat, mint pl.
Could not delete non-existent rule
Could not delete non-existent rule (v6)
Akkor meg tudod csinálni ezt a trükköt. Ahogy fentebb említettük, megjelenítheti a szabály számát, hogy jelezze, melyik szabályt szeretnénk törölni. Hadd mutassuk meg.
sudo ufw status numbered
To Action From
-- ----------- ------
[1] 22/tcp ALLOW 192.168.0.104
[2] 21/tcp ALLOW Anywhere
[3] 21/tcp ALLOW Anywhere (v6)
Ezután törölheti az első szabályt a használatával. Nyomja meg az „y ” gombot a szabály végleges törléséhez.
sudo ufw delete 1
Deleting :
Allow from 192.168.0.104 to any port 22 proto tcp
Proceed with operation (y|n)? y
Ezekből a módszerekből látni fogja a különbséget. A 2. módszer felhasználói megerősítést kér a szabály törlése előtt, míg az 1. módszer nem.
A szabályok visszaállítása
Bizonyos esetekben érdemes lehet az összes szabályt törölni/visszaállítani. Gépeléssel megteheti.
sudo ufw reset
Resetting all rules to installed defaults. Proceed with operation (y|n)? y
Ha megnyomja az „y billentyűt”, az ufw biztonsági másolatot készít az összes létező szabályról az ufw visszaállítása előtt. A szabályok visszaállítása a tűzfalat is letiltja. Ha használni szeretné, újra engedélyeznie kell.
Speciális funkciók
Ahogy fentebb említettem, az ufw tűzfal bármire képes, amit az iptables. Ez különféle szabályfájlok használatával érhető el, amelyek nem mások, mint az iptables-restore megfelelő szövegfájlok. Az ufw finomhangolása és/vagy további, az ufw paranccsal nem engedélyezett iptables parancsok elhelyezése több szövegfájl szerkesztésének kérdése.
- /etc/default/ufw: Az alapértelmezett házirendek, az IPv6 támogatás és a kernelmodulok fő konfigurációja.
- /etc/ufw/before[6].rules: ezekben a fájlokban a szabályok az ufw paranccsal hozzáadott szabályok előtt számítódnak ki.
- /etc/ufw/after[6].rules: ezekben a fájlokban a szabályok az ufw paranccsal hozzáadott szabályok után kerülnek kiszámításra.
- /etc/ufw/sysctl.conf: a kernel hálózati hangolhatóságai.
- /etc/ufw/ufw.conf: beállítja, hogy az ufw engedélyezve legyen-e a rendszerindításkor, és beállítja a LOGLEVEL értéket.
Következtetés
Az UFW az iptables kezelőfelületeként minden bizonnyal egyszerű felhasználói felületet biztosít. A felhasználónak nem kell emlékeznie a bonyolult iptables szintaxisra. Az UFW a „plain english” paramétert is használja.
Az Engedélyezés, Megtagadás, Visszaállítás ezek közé tartozik. Úgy gondolom, hogy sokkal több iptable front-end létezik. De határozottan az ufw az egyik legjobb alternatíva azoknak a felhasználóknak, akik gyorsan, egyszerűen és természetesen biztonságosan szeretnék beállítani a tűzfalukat. További részletekért keresse fel az ufw kézikönyv oldalát a man ufw beírásával.