Miklix

Hogyan állítsunk be tűzfalat az Ubuntu szerveren

Megjelent: 2025. február 15. 21:33:45 UTC
Utolsó frissítés: 2026. január 12. 8:37:03 UTC

Ez a cikk elmagyarázza és néhány példát is mutat arra, hogyan állíthatunk be tűzfalat GNU/Linux rendszeren az ufw használatával, ami az Uncomplicated FireWall rövidítése – és a név találó, ez valóban egy nagyon egyszerű módja annak, hogy megbizonyosodjunk arról, hogy nincs több nyitott portunk, mint amennyire szükségünk van.


Ezt az oldalt angolból gépi fordítással készítettük, hogy minél több ember számára elérhető legyen. Sajnos a gépi fordítás még nem tökéletes technológia, ezért előfordulhatnak hibák. Ha szeretné, itt megtekintheti az eredeti angol nyelvű változatot:

How to Set Up a Firewall on Ubuntu Server

A bejegyzésben szereplő információk az Ubuntu Server 14.04 x64-en alapulnak. Előfordulhat, hogy más verziókra nem. (Frissítés: Megerősíthetem, hogy a bejegyzésben szereplő információk alapvetően továbbra is érvényesek és működőképesek az Ubuntu Server 24.04-ben, azonban az elmúlt 10 évben az ufw némileg „okosabb” lett azáltal, hogy profilokat készített a gyakori szerveralkalmazásokhoz (például engedélyezheti a „teljes Nginx”-et a 80-as és 443-as portok külön használata helyett), és a teljes tűzfal letiltása/engedélyezése az új szabályok alkalmazásához már nem szükséges.)

Amikor először kezdtem GNU/Linux (Ubuntu) szerverekkel dolgozni, egy tűzfal beállítása magában foglalta egy potenciálisan összetett iptables konfigurációs fájl manuális létrehozását és karbantartását. Nemrég azonban felfedeztem az ufw-t, ami az Uncomplicated Firewall rövidítése – és valóban az :-)

Az Ubuntu Server 14.04 telepítésemben már telepítve volt az ufw, de ha a tiéd nem, egyszerűen telepítsd a tárolókból:

sudo apt-get install ufw

Az UFW valójában csak egy eszköz, ami leegyszerűsíti az iptables konfigurációját – a színfalak mögött továbbra is az iptables és a Linux kernel tűzfal végzi a szűrést, így az ufw nem kevésbé és nem is biztonságosabb ezeknél. Mivel azonban az ufw sokkal könnyebbé teszi a tűzfal helyes konfigurálását, csökkentheti az emberi hiba kockázatát, és így valószínűleg biztonságosabb a tapasztalatlan rendszergazdák számára.

Ha a szervered IPv6 és IPv4 protokollal is konfigurálva van, akkor győződj meg arról, hogy ez az UFW esetében is engedélyezve van. Szerkeszd az /etc/default/ufw fájlt, és keresd meg az IPV6=yes sort. Az én telepítésemben már ott volt, de ha nem, vagy ha nemet ír ki, akkor szerkesztened kell.

Ezután egyszerűen használd a parancssort a megnyitni kívánt portok engedélyezéséhez. Ha ssh-n keresztül csatlakozol a szerveredhez, akkor azt is engedélyezd, különben megszakadhat a kapcsolatod, és esetleg kizárhatsz a szerverről, amikor aktiválod – attól függően, hogy van-e fizikai hozzáférésed a szerverhez vagy sem, ez kissé kellemetlen lehet ;-)

Például, ha ssh-t használsz a szabványos 22-es porton, és egy olyan webkiszolgálót konfigurálsz, amely támogatja mind a titkosítatlan (HTTP a 80-as porton), mind a titkosított (HTTPS a 443-as porton) kapcsolatokat, akkor a következő parancsokat kell kiadnod az ufw konfigurálásához:

sudo ufw allow 22/tcp
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp

Ha további szabályokra van szüksége, egyszerűen adja hozzá őket a fentiek szerint.

Ha statikus IP-címed van, és csak egyetlen helyről szeretnél ssh-n keresztül csatlakozni, akkor az ssh-kapcsolatokat egyetlen forráscímre is korlátozhatod, például így:

sudo ufw allow from 192.168.0.1 to any port 22

Természetesen inkább a saját IP-címedet add meg.

Ha kész, engedélyezd az ufw-t a következő parancs kiadásával:

sudo ufw enable

És kész is vagy! A tűzfal fut, és automatikusan elindul, amikor újraindítod a szervert :-)

Ha módosításokat hajt végre az ufw konfigurációjában, előfordulhat, hogy le kell tiltania, majd újra engedélyeznie kell a módosításokat a hatályba lépéshez, például így:

sudo ufw disable
sudo ufw enable

A jelenlegi konfiguráció megtekintéséhez egyszerűen írja be:

sudo ufw status

Ha az ufw nincs engedélyezve, akkor egyszerűen egy „inaktív” üzenet jelenik meg, egyébként pedig a jelenleg definiált szabályokat listázza.

Oszd meg a Bluesky-nOszd meg a FacebookonOszd meg a LinkedIn-enOszd meg a Tumblr-enOszd meg X-enOszd meg a LinkedIn-enPin a Pinteresten

Mikkel Christensen

A szerzőről

Mikkel Christensen
Mikkel a miklix.com létrehozója és tulajdonosa. Több mint 20 éves tapasztalattal rendelkezik, mint hivatásos számítógépes programozó/szoftverfejlesztő, és jelenleg teljes munkaidőben dolgozik egy nagy európai informatikai vállalatnál. Amikor nem blogol, szabadidejét érdeklődési körének, hobbijainak és tevékenységeinek széles skálájával tölti, ami bizonyos mértékig tükröződhet a weboldalon tárgyalt témák sokféleségében.