Megpróbálhatjuk a tűzfal definíciójával kezdeni, ami a “port-szótár” megértéséhez szükséges. A tűzfal olyan szoftver vagy firmware, amely érvényre juttat egy sor szabályt arra vonatkozóan, hogy milyen adatcsomagok léphetnek be vagy hagyhatnak el egy hálózatot. Feladata a portok Allow és Deny szabályainak kezelése.
Az útmutató témájának megfelelően portokat szeretnénk megnyitni olyan Linux disztribúciókban, mint az Ubuntu vagy a CentOS. Mindkét disztró lehetővé teszi a konfigurálást különböző eszközkészletekkel (tűzfalcsomagok), de ugyanazzal az eredménnyel.
Az eszközök, amelyeket használni fogunk:
– UFW
– Firewalld
Nézzük először az Ubuntu forgatókönyvét:
Ez a disztribúció alapértelmezetten tartalmazza az előre telepített UFW(Uncomplicated Firewall) szolgáltatást. Ez leegyszerűsíti az egész konfigurációt és minden ember számára felhasználóbarát.
A szolgáltatás állapotának ellenőrzése a standard systemctl paranccsal:
$ sudo systemctl status ufw
Engedélyezze az UFW-t az enable paranccsal:
$ sudo ufw enable
Szintaktika adott TCP port megnyitására:
$ sudo ufw allow (port)/tcp
például:
$ sudo ufw allow 53/tcp
A szintaxis támogatja a konkrét portokra utaló neveket is:
$ sudo ufw allow https
A 21-es porton bejövő tcp és udp csomagok engedélyezéséhez írja be:
$ sudo ufw allow https
A 21-es porton bejövő tcp és udp csomag engedélyezése:
$ sudo ufw allow 21
Példa konkrét IP-címre:
$ sudo ufw allow from 190.34.21.113 to any port
Lássuk a konfiguráció ellenőrzését:
$ sudo ufw status verbose
A parancs egy ideiglenes táblázatot jelenít meg három oszloppal:
Magyarázatok:
– To – leírja az adott protokollt
– Action – megmondja, hogy engedélyezett vagy megtagadott
– From – A forrásról szól e.G bárhonnan vagy egy ip címről, mint fentebb bemutatott
Már itt az ideje a CentOS-nak:
A Firewalld egy fejlettebb eszköz, ami zónákat használ a konfigurációban. Ezek bizonyos terület, vagy egy “csatolt” hálózati interfész gondozásáért felelősek.
A firewalld az iptables frontend vezérlője, amelyet a tartós hálózati forgalmi szabályok megvalósítására használnak.
Nézzünk meg egy csomó parancsot, amelyek a firewalld-t dolgozzák ki.
1. Indítsuk el a szolgáltatásunkat a stardand systemctl paranccsal:
$ sudo systemctl start firewalld
Engedélyezzük:
$ sudo systemctl enable firewalld
Ez a parancs tájékoztat minket a szolgáltatás állapotáról. Csak két mondatot jeleníthet meg: “
$ sudo firewall-cmd --state
Az alapértelmezett zóna nyilvános. Ebben a rövid bemutatóban ezt nem fogjuk megváltoztatni, de ha szeretnénk, akkor használjuk ezeket a parancsokat:
$ sudo firewall-cmd --set-default-zone=work
Próbáljuk meg hozzáadni a tcp forgalmat a 1112-es porton:
$ sudo firewall-cmd --zone=public --add-port=1112/tcp --permanent
Az újratöltéshez, hogy ezek a változások azonnal érvényesüljenek, újra kell töltenünk a firewalld állapotát.
$ sudo firewall-cmd --reload
Az új szabályunk olvasható áttekintését a listázó paranccsal kaphatjuk meg:
Az ssh kapcsolat engedélyezéséhez egy adott Ipv4-en a “rich rule”
szintaxist kell használnunk.