Bevezetés
UFW az uncomplicated firewall rövidítése. Ez egy olyan frontend platform, amely lehetővé teszi a tűzfal funkcióinak és parancsainak egyszerű kezelését. Az UFW-t alapértelmezett opcióként kapja meg az Ubuntu szerverével. A tűzfal parancsaiban és funkcióiban rejlő lehetőségek maximalizálása nehéz lehet, ha még nem ismeri az eszközt.
Célunk, hogy egy átfogó útmutatót nyújtsunk Önnek, amelyet kezdőként is használhat. A magyarázatokat példákkal egészítjük ki a különböző műveletekről, amelyeket az UFW-vel végezhet. Sok szabály nagyon hasznos lesz a mindennapi szolgáltatásokhoz és tevékenységekhez. Kezdjük el!
Előfeltételek
Mielőtt tovább olvasna, győződjön meg arról, hogy az UFW az alapértelmezett szabálykészletre van beállítva. Ez azt jelenti, hogy a tűzfal engedélyezi a kimenő forgalmat, de blokkolja a bejövő forgalmat. Ennek az alapértelmezett visszaállításnak az az előnye, hogy kiválaszthatja, melyik forgalmat engedi át a tűzfalon. Ha nem biztos az UFW jelenlegi szabálykészletének állapotában, használja ezt a parancsot az ellenőrzéshez: sudo ufw status. Ezt a parancsot is használhatja:
|
1 |
sudo ufw status verbose |
Ettől eltekintve bátran ugorhat arra a szakaszra, amely a leginkább megfelel az Ön igényeinek. Nem feltétlenül kell az ebben az útmutatóban található összes parancsot használnia. Személyes igényei alapján kombinálhatja őket.
Hogyan blokkoljunk egy IP-címet
Kezdjük bármely tűzfal egyik legalapvetőbb funkciójával: az IP-címek blokkolásával. Van egy nagyon egyszerű parancs, amellyel blokkolhatja az egy adott IP-címről érkező hálózati kapcsolatokat. Tegyük fel például, hogy az esetünkben a konkrét IP-cím a 15.15.15.51. Ezt az értéket helyettesítheti azzal az IP-címmel, amelyet az UFW-n keresztül blokkolni szeretne. Erre a célra a következő parancsot használhatja:
|
1 |
sudo ufw deny from 15.15.15.51 |
Itt a from 15.15.15.51 csak a forrás IP-címet jelöli, ami a „15.15.15.51”. Ha ehelyett egy alhálózatot szeretne megadni, azt a következőképpen adhatja hozzá: 15.15.15.0/24. A parancs ugyanúgy működni fog. Ezt a forrás IP-címet bármelyik tűzfalszabályban megadhatja, például az allow (engedélyezés) szabályban.
- Hálózati interfész kapcsolatok blokkolása
Időnként előfordulhat, hogy egy adott IP-címről egy adott hálózati interfészre érkező hálózati kapcsolatokat kell blokkolni. Ebben az esetben a forrás IP-cím mellett a hálózati interfészt is meg kell adnunk. Ebben a példában a forrás IP-cím legyen a 15.15.15.51, a hálózati interfész pedig az eth0:
|
1 |
sudo ufw deny in on eth0 from 15.15.15.51 |
A forrás IP-címhez hasonlóan a hálózati interfészt is megadhatja bármelyik tűzfalszabályban. Ezeknek a specifikációknak az a célja, hogy az adott tűzfalszabályt csak egy bizonyos hálózatra vagy kapcsolatra korlátozzák.
Hogyan engedélyezzük az SSH kapcsolatokat
Ez a szakasz akkor fontos Önnek, ha felhőszervert használ. Ahhoz, hogy kapcsolatot tudjon létesíteni a felhőszerverével, a tűzfalnak engedélyeznie kell a bejövő SSH-kapcsolatokat. Ezek az SSH-kapcsolatok a 22-es porton keresztül érkeznek. Követheti ezt az útmutatót, hogy megtudja, hogyan használhatja az SSH-t egy távoli szerverhez való csatlakozáshoz Ubuntuban.
Az SSH-kapcsolatok létrehozásával sikeresen kezelheti felhőszerverét a helyi egységével. Itt az SSH-hoz kapcsolódó tűzfal-konfigurációra vonatkozó különböző szabályokat ismertetjük:
- SSH engedélyezése
Használja a következő parancsot az összes bejövő SSH-kapcsolat engedélyezéséhez:
|
1 |
sudo ufw allow ssh |
Másrészt a parancsot az SSH-szolgáltatás portszámának megadásával is végrehajthatja:
|
1 |
sudo ufw allow 22 |
- Bejövő SSH engedélyezése konkrét IP-címről
Abban az esetben, ha csak egy adott IP-címről vagy alhálózatról szeretné engedélyezni a bejövő SSH-kapcsolatokat, megadhatja a forrást. Tegyük fel például, hogy az engedélyezni kívánt alhálózat a 15.15.15.0/24. Íme a parancs, amelyet futtatnia kell:
|
1 |
sudo ufw allow from 15.15.15.0/24 to any port 22 |
- Bejövő Rsync engedélyezése specifikus IP-címről
A 873-as porton futó Rsync lehetővé teszi a fájlátvitelt egyik számítógépes rendszerről a másikra. Ha csak egy adott IP-címről vagy alhálózatról (ebben a példában a 15.15.15.0/24-ről) érkező Rsync-kapcsolatot szeretne engedélyezni, azt a következő paranccsal teheti meg:
|
1 |
sudo ufw allow from 15.15.15.0/24 to any port 873 |
Ez azt jelenti, hogy a teljes 15.15.15.0/24 alhálózat számára engedélyezett lesz az Rsync a szerverére. Itt található egy átfogó útmutató arról, hogyan használhatja az Rsync-et a helyi és távoli könyvtárak szinkronizálására a szerverén.
Hogyan konfiguráljuk a webszerver-kéréseket
Ezután a webszerver-szolgáltatással kapcsolatos szabályokra térünk rá. Az olyan webszerverek, mint az Apache és Nginx általában két portról fogadják a HTTP- és HTTPS-kapcsolatokra vonatkozó kéréseket: a 80-as és a 443-as portról. A 80-as port a HTTP-kéréseket szolgálja ki. A 443-as port a HTTPS-kérésekért felelős.
Ahogy az előfeltételekben megbeszéltük, az UFW alapértelmezett szabálykészletét használja. Ezen szabálykészlet alapján a tűzfal minden bejövő forgalmat blokkol vagy megtagad. Ezért új szabályokat kell konfigurálnia, amelyek lehetővé teszik a szerver számára ezen bejövő kérések fogadását és olvasását.
- Összes HTTP engedélyezése
Ha engedélyezni szeretné a 80-as portról érkező összes HTTP-kapcsolatot és -kérést, használja a következő parancsot:
|
1 |
sudo ufw allow http |
A portszámot (80-as port) is használhatja a HTTP-szolgáltatás megadására a parancsban:
|
1 |
sudo ufw allow 80 |
- Összes HTTPS engedélyezése
Ha engedélyezni szeretné a 443-as portról érkező összes HTTPS-kapcsolatot és -kérést, futtassa ezt a parancsot:
|
1 |
sudo ufw allow https |
Az előző parancshoz hasonlóan az „https” helyére beírhatja a HTTPS-szolgáltatás portszámát is:
|
1 |
sudo ufw allow 443 |
- Összes HTTP és HTTPS engedélyezése
Abban az esetben, ha mind a HTTP-, mind a HTTPS-kéréseket engedélyezni szeretné, használhat egy közös szabályt mindkettőre. Ezzel az egyetlen paranccsal engedélyezheti a 80-as és a 443-as portról érkező forgalmat is:
|
1 |
sudo ufw allow proto tcp from any to any port 80,443 |
A proto tcp parancs használata akkor szükséges, ha egyszerre több portot ad meg.
Követheti ezeket a részletes útmutatókat is arról, hogyan teheti biztonságossá az Nginx és az Apache-ot Let’s Encrypt segítségével Ubuntu-n.
Hogyan engedélyezzük a MySQL-t
MySQL kapcsolatok a 3306-os porton keresztül érkeznek. Egy szabályt kell használnia a bejövő forgalom engedélyezéséhez, ha egy kliens a távoli szerveren lévő MySQL-adatbázisát használja. Kövesse az útmutatónkat, hogy megismerje a MySQL alapjait, és megtudja, hogyan kell beállítani a MySQL-t egy szerveren.
- MySQL engedélyezése specifikus IP-címről
Ahogy azt a korábbi szabályokban már láttuk, meg kell adnia a forrást a bejövő MySQL-kapcsolatok engedélyezéséhez. A forrás lehet egy konkrét IP-cím vagy egy alhálózat. Példánkban a teljes 15.15.15.0/24 alhálózatot használjuk a parancs futtatásához:
|
1 |
sudo ufw allow from 15.15.15.0/24 to any port 3306 |
- MySQL engedélyezése egy specifikus hálózati interfészhez
Másik parancsot kell használnia, ha meg kell adnia azt a hálózati interfészt is, amelyre engedélyezi a MySQL-kapcsolatokat. Tegyük fel, hogy az Ön által használt hálózati interfész egy eth1 nevű privát hálózati interfész. Ezt az értéket helyettesítheti a saját hálózati interfészének nevével:
|
1 |
sudo ufw allow in on eth1 to any port 3306 |
Hogyan engedélyezzük a PostgreSQL-t
A PostgreSQL kapcsolatok az 5432-es porton keresztül érkeznek. A MySQL-kapcsolatokhoz hasonlóan, ha egy kliens a távoli szerveren lévő PostgreSQL-adatbázist használja, engedélyeznie kell a bejövő forgalmat. Ezt a következő parancsok használatával teheti meg.
- PostgreSQL engedélyezése specifikus IP-címről
Ha tudja, hogy a PostgreSQL-kapcsolatok egy adott alhálózatról vagy IP-címről érkeznek, meg kell adnia a forrást. Itt ismét a 15.15.15.0/24 alhálózat példáját fogjuk használni:
|
1 |
sudo ufw allow from 15.15.15.0/24 to any port 5432 |
Abban az esetben, ha az OUTPUT irányelve nincs ACCEPT-re állítva, egy második parancsot is futtatnia kell. Ez a parancs engedélyezi a már létrejött PostgreSQL kapcsolatok kimenő forgalmát.
- PostgreSQL engedélyezése egy adott hálózati interfészhez
Az előző szabályhoz hasonlóan engedélyezni fogjuk a PostgreSQL kapcsolatokat egy adott hálózati interfészhez. A mi esetünkben ez az eth1:
|
1 |
sudo ufw allow in on eth1 to any port 5432 |
Abban az esetben, ha az OUTPUT irányelve nincs ACCEPT-re állítva, egy második parancsot is futtatnia kell. Ez a parancs engedélyezi a már létrejött PostgreSQL kapcsolatok kimenő forgalmát. Megtudhatja, hogyan kell beállítani a PostgreSQL-t Ubuntu-n a részletes útmutatónkat követve.
Levelezőszerverek konfigurálása
Előfordulhat, hogy olyan levelezőszervereket is használ, mint a(z) Sendmail és a(z) Postfix a rendszerén. Ezek a szerverek több porton is nyitva vannak. A portok, amelyeken figyelnek, a kézbesítéshez beállított protokolloktól függnek. Ezért először meg kell határoznia, hogy milyen protokollokat futtat a levelezőrendszerében. Ezt követően az információk alapján engedélyezheti a megfelelő forgalomtípusokat.
- Kimenő SMTP levelek blokkolása
Mielőtt rátérnénk a levelezőszerverek bejövő forgalmát engedélyező parancsokra, nézzük meg, hogyan blokkolhatja a kimenő SMTP leveleket. Ezt a parancsot akkor használhatja, ha nem szeretné, hogy a szervere kimenő leveleket küldjön. SMTP levelezés a 25-ös portot használja. Használja ezt a parancsot a forgalom blokkolásához:
|
1 |
sudo ufw deny out 25 |
A parancs futtatásának eredményeként a tűzfal eldobja az összes kimenő forgalmat a 25-ös porton. Ha egy másik portot szeretne blokkolni, egyszerűen cserélje ki a „25”-ös portot a megfelelő portszámra.
- Bejövő SMTP engedélyezése
Most, hogy már tudja, hogyan kell blokkolni a kimenő forgalmat, a bejövő forgalom engedélyezése ugyanolyan egyszerűnek fog tűnni. Használja ezt a parancsot, hogy engedélyezze a szerver számára az SMTP kapcsolatok fogadását a 25-ös porton:
|
1 |
sudo ufw allow 25 |
- Bejövő IMAP engedélyezése
Ha engedélyezni szeretné a szerver számára az IMAP kapcsolat létrehozását a 143-as porton, használja a következő parancsot:
|
1 |
sudo ufw allow 143 |
- Bejövő IMAPS engedélyezése
Használja ezt a parancsot, hogy engedélyezze a szerver számára az IMAPS kapcsolatokra való válaszadást a 993-as porton:
|
1 |
sudo ufw allow 993 |
- Bejövő POP3 engedélyezése
Ez a parancs lehetővé teszi a szerver számára, hogy válaszoljon az összes POP3 kapcsolatra a 110-es porton keresztül:
|
1 |
sudo ufw allow 110 |
- Bejövő POP3S engedélyezése
Végül, ezzel a paranccsal engedélyezheti a szerverének, hogy kéréseket fogadjon a 995-ös portról a POP3S kapcsolatokhoz:
|
1 |
sudo ufw allow 995 |
Összegzés
Ez az útmutató segít megismerkedni az alapvető UFW funkciókkal. Átvettük azokat a legfontosabb parancsokat, amelyeket ismernie kell a tűzfal konfigurálásához. Kiválaszthatja az egyedi igényeinek leginkább megfelelő parancsokat egy személyre szabott tűzfalmegoldás létrehozásához. Az UFW rugalmas természete lehetővé teszi az ilyen testreszabást. Kísérletezzen bátran, hogy megtudja, mi működik a legjobban az Ön számára.
Kellemes számítógép-használatot!
Hozzászólások
Még nincsenek hozzászólások. Legyen Ön az első.