A FirewallD használata tűzfalának kezelésére a CentOS 7 rendszeren

A FirewallD egy dinamikusan felügyelt tűzfal, amely támogatja az RHEL 7 alapú szervereken elérhető IPv4 és IPv6 tűzfalszabályokat és tűzfalzónákat. Közvetlenül helyettesíti iptablesa kernel netfilterkódját , és azzal működik .

Ebben a cikkben röviden áttekintjük a tűzfal CentOS 7 firewall-cmdparanccsal történő kezelését.

Ellenőrizzük, hogy a FirewallD fut-e

Az első lépés annak ellenőrzése, hogy a FirewallD telepítve van-e és fut-e. Ezt systemda következő futtatásával teheti meg :

$ systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
   Active: active (running) since Thu 2016-03-10 15:07:00 UTC; 1min 30s ago
   ...

Alternatív megoldásként ellenőrizheti a következő firewall-cmdeszközzel:

$ firewall-cmd --state
running

Zónák kezelése

A FirewallD azon koncepció alapján működik, zonesahol egy zóna határozza meg a kapcsolathoz használt bizalom szintjét. Különböző hálózati interfészeket feloszthat különböző zónákra, hogy interfészenként konkrét tűzfalszabályokat alkalmazhasson, vagy használhat egy zónát az összes interfészhez.

A dobozból minden az alapértelmezett publiczónán történik, de számos más előre konfigurált zóna is alkalmazható.

Az összes elérhető zóna listája

Előfordulhat, hogy be kell szereznie egy listát az összes elérhető zónáról, amelyek közül több már készen is van. Ez ismét megtehető a következő használatával firewall-cmd:

$ firewall-cmd --get-zones
block dmz drop external home internal public trusted work

Az alapértelmezett zóna ellenőrzése

A jelenleg konfigurált alapértelmezett zónát a következővel találhatja meg firewall-cmd:

$ firewall-cmd --get-default-zone
public

Ha meg kívánja változtatni az alapértelmezett zónát (például a következőre home), ezt a következő futtatásával teheti meg:

$ firewall-cmd --set-default-zone=home
success

Ez az információ megjelenik a fő konfigurációs fájlban, /etc/firewalld/firewalld.conf. Javasoljuk azonban, hogy ne módosítsa manuálisan ezt a fájlt, hanem használja a firewall-cmd.

Az aktuálisan hozzárendelt zónák ellenőrzése

A következő futtatásával megtekintheti azon zónák listáját, amelyekhez interfészeket rendeltek:

$ firewall-cmd --get-active-zones
public
  interfaces: eth0

Egyetlen interfész zónáját is ellenőrizheti ( eth0ebben az esetben) a következő futtatásával:

$  firewall-cmd --get-zone-of-interface=eth0
public

Zónák létrehozása

Ha az alapértelmezett előre konfigurált zónák nem igazán felelnek meg az Ön igényeinek, akkor a legegyszerűbb módja annak, hogy új zónát ( zone1) hozzon létre, a következőn keresztül firewall-cmd:

$ firewall-cmd --permanent --new-zone=zone1
success

A létrehozás után újra kell töltenie:

$ firewall-cmd --reload
success

Zóna alkalmazása interfészre

Ahhoz, hogy egy zónához véglegesen hozzárendeljen egy hálózati interfészt, firewall-cmdne felejtse el beilleszteni a --permanentjelzőt a változás megőrzéséhez. Ha használja NetworkManager, akkor nmclia csatlakozási zóna beállításához is feltétlenül használja .

$ firewall-cmd --permanent --zone=internal --change-interface=eth1`
success

Zóna állandó konfigurációjának lekérése

Egy zóna állandó konfigurációjának ( publicebben az esetben) ellenőrzéséhez, beleértve a hozzárendelt interfészeket, engedélyezett szolgáltatásokat, portbeállításokat és egyebeket, futtassa:

$ firewall-cmd --permanent --zone=public --list-all
public (default)
  interfaces:
  sources:
  services: dhcpv6-client ssh
  ports:
  masquerade: no
  forward-ports:
  icmp-blocks:
  rich rules:

Szolgáltatások kezelése

Miután hozzárendelte és konfigurálta a szükséges zónákat, megkezdheti a szolgáltatások hozzáadását a zónákhoz. A szolgáltatások leírják a zónákhoz elérhető protokollokat és portokat.

A meglévő szolgáltatások felsorolása

Számos általános szolgáltatás előre konfigurálva van a tűzfalon belül. Ezeket fel lehet sorolni:

$ firewall-cmd --get-services
RH-Satellite-6 amanda-client bacula bacula-client dhcp dhcpv6 dhcpv6-client dns freeipa-ldap freeipa-ldaps freeipa-replication ftp high-availability http https imaps ipp ipp-client ipsec iscsi-target kerberos kpasswd ldap ldaps libvirt libvirt-tls mdns mountd ms-wbt mysql nfs ntp openvpn pmcd pmproxy pmwebapi pmwebapis pop3s postgresql proxy-dhcp radius rpc-bind rsyncd samba samba-client smtp ssh telnet tftp tftp-client transmission-client vdsm vnc-server wbem-https

Az alapértelmezett zónához engedélyezett szolgáltatások listáját is megtekintheti:

$ firewall-cmd --list-services
dhcpv6-client ssh

Szolgáltatás hozzáadása zónához

Egy adott szolgáltatást publictartósan engedélyezhet egy zónához ( ) a --add-servicezászló használatával:

$ firewall-cmd --permanent --zone=public --add-service=http
success

Ezután töltse be újra az aktuális tűzfal munkamenetet:

$ firewall-cmd --reload
success

Ezután az ellenőrzéshez hozzáadták:

$ firewall-cmd --zone=public --list-services
dhcpv6-client http ssh

Szolgáltatás eltávolítása egy zónából

Egy adott szolgáltatást publicvéglegesen eltávolíthat egy zónához ( ) a --remove-servicezászló használatával:

$ firewall-cmd --permanent --zone=public --remove-service=http
success

Ezután töltse be újra az aktuális tűzfal munkamenetet:

$ firewall-cmd --reload
success

Ezután az ellenőrzéshez hozzáadták:

$ firewall-cmd --zone=public --list-services
dhcpv6-client ssh

Több szolgáltatás hozzáadása/eltávolítása egy zónából

Több szolgáltatást (például httpés https) is hozzáadhat vagy eltávolíthat egy zónából egyenként vagy egyszerre, ha a kívánt szolgáltatásneveket kapcsos zárójelekbe ( {, }) helyezi :

$ firewall-cmd --permanent --zone=public --add-service=
success

$ firewall-cmd --permanent --zone=public --list-services
dhcpv6-client http https ssh

Új szolgáltatások létrehozása

Néha előfordulhat, hogy új egyéni szolgáltatásokat kell hozzáadnia – például ha módosította az SSH-démon portját. A szolgáltatások triviális XML-fájlok segítségével vannak meghatározva, az alapértelmezett fájlok a következő helyen találhatók /usr/lib/firewalld/services:

$  tree /usr/lib/firewalld/services
/usr/lib/firewalld/services
├── amanda-client.xml
├── bacula-client.xml
├── bacula.xml
├── dhcpv6-client.xml
├── dhcpv6.xml
├── dhcp.xml
├── dns.xml
├── freeipa-ldaps.xml
├── freeipa-ldap.xml
├── freeipa-replication.xml
├── ftp.xml
├── high-availability.xml
├── https.xml
├── http.xml
...

Új szolgáltatás létrehozásának legegyszerűbb módja a meglévő szolgáltatásfájlok egyikének másolása és módosítása. Az egyedi szolgáltatásoknak itt kell lennie /etc/firewalld/services. Például az SSH szolgáltatás testreszabásához:

$ cp /usr/lib/firewalld/services/ssh.xml /etc/firewalld/services/ssh-custom.xml

A másolt fájl tartalmának így kell kinéznie:

$ cat /etc/firewalld/services/ssh-custom.xml
<?xml version="1.0" encoding="utf-8"?>
<service>
  <short>SSH</short>
  <description>Secure Shell (SSH) is a protocol for logging into and executing commands on remote machines. It provides secure encrypted communications. If you plan on accessing your machine remotely via SSH over a firewalled interface, enable this option. You need the openssh-server package installed for this option to be useful.</description>
  <port protocol="tcp" port="22"/>
</service>

A port megváltoztatásához módosítani kell a szolgáltatás rövid nevét és a portot. A leírást is módosíthatja, ha kívánja, de ez csak extra metaadatok, amelyeket egy felhasználói felület vagy más alkalmazás használhat. Ebben a példában a portot 1234-re módosítom:

$ nano /etc/firewalld/services/ssh-custom.xml
<?xml version="1.0" encoding="utf-8"?>
<service>
  <short>SSH-Custom</short>
  <description>Secure Shell (SSH) is a protocol for logging into and executing commands on remote machines. It provides secure encrypted communications. If you plan on accessing your machine remotely via SSH over a firewalled interface, enable this option. You need the openssh-server package installed for this option to be useful.</description>
  <port protocol="tcp" port="1234"/>
</service>

Mentés után újra kell töltenie a tűzfalat, majd alkalmazhatja a szabályt a zónájára:

$ firewall-cmd --reload
success

$ firewall-cmd --permanent --zone=public --add-service=ssh-custom
success

Port menedzsment

A szolgáltatások használata mellett manuálisan is engedélyezheti a portokat protokollonként. A TCP-port 7777engedélyezése a publiczónához:

$ firewall-cmd --permanent --zone=public --add-port=7777/tcp
success

Porttartományt is hozzáadhat:

$ firewall-cmd --permanent --zone=public --add-port=7000-8000/tcp
success

Ahhoz, hogy távolítsa el (és így tagadja) TCP port 7777a publicterület közelében

$ firewall-cmd --permanent --zone=public --remove-port=7777/tcp
success

Az publicaktuális tűzfal munkamenet újratöltése után listázhatja az adott zónához ( ) jelenleg engedélyezett portokat is :

$ firewall-cmd --zone=public --list-ports
7000-8000/tcp

A FirewallD engedélyezése

Miután ízlése szerint konfigurálta a tűzfalat, mindenképpen engedélyezze a systemd-n keresztül, hogy biztosan elinduljon az indításkor:

$ systemctl enable firewalld

Következtetés

A FirewallD-n belül sokkal több beállítás és lehetőség található, mint például a porttovábbítás, a maszkolás és a tűzfallal való kommunikáció D-buszon keresztül. Remélhetőleg azonban ez az útmutató segített az alapok megértésében, és megadta azokat az eszközöket, amelyek segítségével elkezdheti a tűzfalat a szerveren kívül. Az alábbi további olvasmányok segítségével a legtöbbet hozhatja ki tűzfalából.


Telepítse a Plesket a CentOS 7 rendszeren

Telepítse a Plesket a CentOS 7 rendszeren

Más rendszert használ? A Plesk egy szabadalmaztatott webtárhely-vezérlőpult, amely lehetővé teszi a felhasználók számára, hogy adminisztrálják személyes és/vagy ügyfeleik webhelyeit, adatbázisait

A Squid Proxy telepítése a CentOS rendszeren

A Squid Proxy telepítése a CentOS rendszeren

A Squid egy népszerű, ingyenes Linux-program, amely lehetővé teszi továbbítási webproxy létrehozását. Ebben az útmutatóban megtudhatja, hogyan telepítheti a Squid-et a CentOS rendszerre, hogy megfordítsa

A Lighttpd (LLMP Stack) telepítése a CentOS 6 rendszeren

A Lighttpd (LLMP Stack) telepítése a CentOS 6 rendszeren

Bevezetés A Lighttpd az Apache forkja, amely sokkal kevésbé erőforrás-igényes. Könnyű, innen kapta a nevét, és meglehetősen egyszerű a használata. Telepítés

A statikus hálózat és az IPv6 konfigurálása CentOS 7 rendszeren

A statikus hálózat és az IPv6 konfigurálása CentOS 7 rendszeren

A VULTR a közelmúltban változtatásokat hajtott végre a saját oldalukon, és most már mindennek jól kell működnie, ha a NetworkManager engedélyezve van. Ha szeretné letiltani

Az Icinga2 módosítása a mester/kliens modell használatához CentOS 6 vagy CentOS 7 rendszeren

Az Icinga2 módosítása a mester/kliens modell használatához CentOS 6 vagy CentOS 7 rendszeren

Az Icinga2 egy hatékony felügyeleti rendszer, és mester-kliens modellben használva helyettesítheti az NRPE-alapú felügyeleti ellenőrzések szükségességét. A mester-kliens

Az Apache Cassandra 3.11.x telepítése CentOS 7 rendszeren

Az Apache Cassandra 3.11.x telepítése CentOS 7 rendszeren

Más rendszert használ? Az Apache Cassandra egy ingyenes és nyílt forráskódú NoSQL adatbázis-kezelő rendszer, amelyet úgy terveztek, hogy biztosítsa a méretezhetőséget,

A Microweber telepítése CentOS 7 rendszeren

A Microweber telepítése CentOS 7 rendszeren

Más rendszert használ? A Microweber egy nyílt forráskódú drag and drop CMS és online bolt. A Microweber forráskódja a GitHubon található. Ez az útmutató megmutatja neked

A Vanilla Forum telepítése a CentOS 7 rendszeren

A Vanilla Forum telepítése a CentOS 7 rendszeren

Más rendszert használ? A Vanilla forum egy nyílt forráskódú, PHP-ben írt fórumalkalmazás. Ez egy teljesen testreszabható, könnyen használható, és támogatja a külsőt

A Mattermost 4.1 telepítése CentOS 7 rendszeren

A Mattermost 4.1 telepítése CentOS 7 rendszeren

Más rendszert használ? A Mattermost egy nyílt forráskódú, saját üzemeltetésű alternatívája a Slack SAAS üzenetküldő szolgáltatásnak. Más szóval, a Mattermost segítségével kb

Minecraft szerverek hálózatának létrehozása BungeeCord segítségével Debian 8, Debian 9 vagy CentOS 7 rendszeren

Minecraft szerverek hálózatának létrehozása BungeeCord segítségével Debian 8, Debian 9 vagy CentOS 7 rendszeren

Mire lesz szüksége Egy Vultr VPS legalább 1 GB RAM-mal. SSH hozzáférés (root/adminisztrátori jogosultságokkal). 1. lépés: A BungeeCord telepítése Először is

Encrypt on Plesk

Encrypt on Plesk

A Plesk vezérlőpult nagyon szép integrációt kínál a Lets Encrypt számára. A Lets Encrypt egyike az egyetlen SSL-szolgáltatónak, amely teljes tanúsítványt ad ki

Lehetővé teszi a titkosítást a cPanel-en

Lehetővé teszi a titkosítást a cPanel-en

A Lets Encrypt egy tanúsító hatóság, amely ingyenes SSL-tanúsítványokat biztosít. A cPanel ügyes integrációt épített ki, így Ön és ügyfele

A Concrete5 telepítése CentOS 7 rendszeren

A Concrete5 telepítése CentOS 7 rendszeren

Más rendszert használ? A Concrete5 egy nyílt forráskódú CMS, amely számos megkülönböztető és hasznos funkciót kínál, hogy segítse a szerkesztőket a tartalom egyszerű létrehozásában.

Hogyan telepítsük az értékelő táblát a CentOS 7 rendszeren

Hogyan telepítsük az értékelő táblát a CentOS 7 rendszeren

Más rendszert használ? A Review Board egy ingyenes és nyílt forráskódú eszköz a forráskód, a dokumentáció, a képek és még sok más áttekintésére. Ez egy web alapú szoftver

Állítsa be a HTTP-hitelesítést az Nginx segítségével a CentOS 7 rendszeren

Állítsa be a HTTP-hitelesítést az Nginx segítségével a CentOS 7 rendszeren

Ebből az útmutatóból megtudhatja, hogyan állíthat be HTTP-hitelesítést egy CentOS 7 rendszeren futó Nginx webszerverhez. Követelmények A kezdéshez szüksége lesz a következőre:

A GoAccess telepítése a CentOS 7 rendszeren

A GoAccess telepítése a CentOS 7 rendszeren

Más rendszert használ? A GoAccess egy nyílt forráskódú webnapló-elemző. Használhatja naplók valós idejű elemzésére akár a terminálon, akár a

A YOURLS telepítése a CentOS 7 rendszeren

A YOURLS telepítése a CentOS 7 rendszeren

A YOURLS (Your Own URL Shortener) egy nyílt forráskódú URL-rövidítő és adatelemző alkalmazás. Ebben a cikkben a telepítés folyamatával foglalkozunk

Az ArangoDB telepítése és konfigurálása a CentOS 7 rendszeren

Az ArangoDB telepítése és konfigurálása a CentOS 7 rendszeren

Más rendszert használ? Bevezetés Az ArangoDB egy nyílt forráskódú NoSQL adatbázis, amely rugalmas adatmodellt kínál dokumentumokhoz, grafikonokhoz és kulcsértékekhez. Ez

Az Etckeeper használata az /etc verziókezeléshez

Az Etckeeper használata az /etc verziókezeléshez

Bevezetés Az /etc/ könyvtár kritikus szerepet játszik a Linux rendszer működésében. Ennek az az oka, hogy szinte minden rendszerkonfiguráció

Miért érdemes SSHFS-t használni? Távoli fájlrendszer csatlakoztatása SSHFS-sel a CentOS 6 rendszeren

Miért érdemes SSHFS-t használni? Távoli fájlrendszer csatlakoztatása SSHFS-sel a CentOS 6 rendszeren

Sok rendszergazda nagy mennyiségű kiszolgálót kezel. Ha a fájlokhoz különböző szervereken keresztül kell hozzáférni, mindegyikbe külön-külön kell bejelentkezni kb

A gépek felemelkedése: Az AI valós világbeli alkalmazásai

A gépek felemelkedése: Az AI valós világbeli alkalmazásai

A mesterséges intelligencia nem a jövőben, hanem itt a jelenben. Ebben a blogban Olvassa el, hogyan hatott a mesterséges intelligencia alkalmazások különböző ágazatokra.

DDOS támadások: Rövid áttekintés

DDOS támadások: Rövid áttekintés

Ön is DDOS támadások áldozata, és tanácstalan a megelőzési módszereket illetően? Olvassa el ezt a cikket a kérdések megoldásához.

Gondolkozott már azon, hogyan keresnek pénzt a hackerek?

Gondolkozott már azon, hogyan keresnek pénzt a hackerek?

Talán hallottál már arról, hogy a hackerek sok pénzt keresnek, de elgondolkodtál már azon, hogyan kereshetnek ennyi pénzt? beszéljük meg.

A Google forradalmi találmányai, amelyek megkönnyítik az életét.

A Google forradalmi találmányai, amelyek megkönnyítik az életét.

Szeretné látni a Google forradalmi találmányait, és azt, hogy ezek a találmányok hogyan változtatták meg minden mai ember életét? Ezután olvassa el a blogot, és nézze meg a Google találmányait.

Essential péntek: Mi történt az AI-vezérelt autókkal?

Essential péntek: Mi történt az AI-vezérelt autókkal?

Az önvezető autók koncepciója, hogy mesterséges intelligencia segítségével kerüljenek az utakra, már egy ideje álmunk. De számos ígéret ellenére sehol sem látszanak. Olvassa el ezt a blogot, hogy többet megtudjon…

Technológiai szingularitás: az emberi civilizáció távoli jövője?

Technológiai szingularitás: az emberi civilizáció távoli jövője?

Ahogy a tudomány gyors ütemben fejlődik, átveszi erőfeszítéseink nagy részét, megnő annak a kockázata is, hogy alávetjük magunkat egy megmagyarázhatatlan szingularitásnak. Olvassa el, mit jelenthet számunkra a szingularitás.

Az adattárolás fejlődése – Infografika

Az adattárolás fejlődése – Infografika

Az adatok tárolási módjai az Adatok születése óta alakulhatnak. Ez a blog egy infografika alapján mutatja be az adattárolás fejlődését.

A Big Data Reference Architecture Layerek funkciói

A Big Data Reference Architecture Layerek funkciói

Olvassa el a blogot, hogy a legegyszerűbb módon ismerje meg a Big Data Architecture különböző rétegeit és azok funkcióit.

Az okosotthoni eszközök 6 lenyűgöző előnye az életünkben

Az okosotthoni eszközök 6 lenyűgöző előnye az életünkben

Ebben a digitálisan vezérelt világban az intelligens otthoni eszközök az élet döntő részévé váltak. Íme az intelligens otthoni eszközök néhány elképesztő előnye, hogyan teszik életünket érdemessé és egyszerűbbé.

A macOS Catalina 10.15.4 kiegészítés frissítése több problémát okoz, mint a megoldás

A macOS Catalina 10.15.4 kiegészítés frissítése több problémát okoz, mint a megoldás

Az Apple a közelmúltban kiadott egy kiegészítést a macOS Catalina 10.15.4-hez a problémák megoldására, de úgy tűnik, hogy a frissítés több problémát okoz, ami a Mac gépek blokkolásához vezet. További információért olvassa el ezt a cikket