GNU/Linux >> Znalost Linux >  >> Cent OS

Jak nakonfigurovat FirewallD v RHEL, CentOS a Fedora

Síťový filtr jak všichni víme, je to firewall v Linuxu. Firewall je dynamický démon pro správu firewallů s podporou síťových zón. V dřívější verzi RHEL a CentOS 6 používáme iptables jako démon pro rámec pro filtrování paketů. V RHEL /CentOS 7/8 a Fedora iptables rozhraní je nahrazeno firewallem .

Doporučuje se začít používat Firewalld místo iptables protože to může v budoucnu přestat. Nicméně iptables jsou stále podporovány a lze je nainstalovat pomocí příkazu yum. Nemůžeme ponechat Firewalld a iptables oba ve stejném systému, což může vést ke konfliktu.

V iptables , jsme zvyklí konfigurovat jako INPUT, OUTPUT &FORWARD CHAINS ale zde v Firewallu , koncept využívá Zóny . Ve výchozím nastavení jsou na firewallu k dispozici různé zóny, které budou popsány v tomto článku.

Základní zóna, která je jako veřejná zóna a soukromá zóna . Aby to s těmito zónami fungovalo, musíme přidat rozhraní s podporou specifikované zóny a poté můžeme přidat služby do firewallu.

Ve výchozím nastavení je k dispozici mnoho služeb, jedna z nejlepších funkcí firewallu to znamená, že přichází s předdefinovanými službami a tyto služby můžeme vzít jako příklad pro přidání našich služeb pouhým zkopírováním.

Firewall funguje skvěle s IPv4 , IPv6, a ethernetové mosty také. Můžeme mít samostatnou běhovou a trvalou konfiguraci ve firewallu.

Začněme tím, jak pracovat se zónami a vytvářet vlastní služby a mnohem zajímavější použití firewallu.

Naše testovací prostředí
Operating System :	CentOS Linux release 7.0.1406 (Core)
IP Address       :	192.168.0.55
Host-name	:	server1.tecmintlocal.com

Krok 1:Instalace brány firewall v systému CentOS

1. Firewall balíček je standardně nainstalován v RHEL/CentOS 7/8 a Fedora . Pokud ne, můžete jej nainstalovat pomocí následujícího příkazu yum.

# yum install firewalld -y

2. Po firewallu byl nainstalován, je čas ověřit, zda jsou iptables služba běží nebo ne, pokud běží, musíte službu iptables zastavit a zamaskovat (již nepoužívat) pomocí níže uvedených příkazů.

# systemctl status iptables
# systemctl stop iptables
# systemctl mask iptables

Krok 2:Diskuse o součástech brány firewall

3. Než se pustím do konfigurace firewallu, rád bych probral jednotlivé zóny. Ve výchozím nastavení jsou k dispozici některé zóny. Potřebujeme přiřadit rozhraní k zóně. Zóna definuje, že zóna, která byla důvěryhodná nebo která byla odepřena, je na úrovni rozhraní pro získání připojení. Zóna může obsahovat služby a porty.

Zde popíšeme jednotlivé zóny dostupné ve Firewalldu.

  • Zóna přetažení :Pokud použijeme tuto zónu zahození, všechny příchozí pakety jsou zahozeny. Je to stejné, jako používáme k přidávání iptables -j drop . Pokud použijeme pravidlo přetažení, znamená to, že není žádná odpověď, k dispozici budou pouze odchozí síťová připojení.
  • Blokovat zónu :Bloková zóna zakáže odmítnutí příchozích síťových připojení se zákazem icmp-host. Povolena budou pouze navázaná připojení v rámci serveru.
  • Veřejná zóna :Pro akceptování vybraných spojení můžeme definovat pravidla ve veřejné zóně. To umožní pouze otevření konkrétního portu na našem serveru, ostatní připojení budou zrušena.
  • Vnější zóna :Tato zóna bude fungovat jako možnosti routeru s povoleným maskováním ostatní připojení budou zrušena a nebudou přijata, bude povoleno pouze zadané připojení.
  • Zóna DMZ :Pokud potřebujeme povolit přístup k některým službám veřejnosti, můžete to definovat v zóně DMZ. To také má tu vlastnost, že jsou akceptována pouze vybraná příchozí spojení.
  • Pracovní zóna:V této zóně můžeme definovat pouze interní sítě, tj. provoz v soukromých sítích je povolen.
  • Domovská zóna :Tato zóna se používá speciálně v domácích oblastech, můžeme ji použít, abychom důvěřovali ostatním počítačům v sítích a nepoškodili váš počítač jako každé zóně. To také umožňuje pouze vybraná příchozí připojení.
  • Vnitřní zóna :Toto je podobné pracovní zóně s vybranými povolenými připojeními.
  • Důvěryhodná zóna :Pokud nastavíme důvěryhodnou zónu, veškerý provoz je akceptován.

Nyní máte lepší představu o zónách, nyní pomocí následujících příkazů zjistíme dostupné zóny, výchozí zóny a vypíšeme všechny zóny.

Seznam zón brány firewall

# firewall-cmd --get-zones

Vypsat výchozí zónu brány firewall

# firewall-cmd --get-default-zone

Vypsat všechny zóny brány firewall

# firewall-cmd --list-all-zones

Poznámka :Výstup výše uvedeného příkazu se nevejde na jednu stránku, protože zde budou uvedeny všechny zóny jako blok, dmz, drop, externí, domácí, interní, veřejná, důvěryhodná a pracovní. Pokud zóny mají nějaká rozšířená pravidla, povolené služby nebo porty budou také uvedeny s příslušnými informacemi o zóně.

Krok 3:Nastavení výchozí zóny brány firewall

4. Pokud byste chtěli nastavit výchozí zónu jako interní, externí, drop, pracovní nebo jakoukoli jinou zónu, můžete použít níže uvedený příkaz k nastavení výchozí zóny. Zde používáme „interní ” jako výchozí.

# firewall-cmd --set-default-zone=internal

5. Po nastavení zóny ověřte výchozí zónu pomocí níže uvedeného příkazu.

# firewall-cmd --get-default-zone

6. Zde je naše rozhraní enp0s3 , Pokud potřebujeme zkontrolovat naši zónu, ve které je rozhraní ohraničeno, můžeme použít níže uvedený příkaz.

# firewall-cmd --get-zone-of-interface=enp0s3

7. Další zajímavou funkcí firewallu je „icmptype ‘ je jedním z typů icmp podporovaných firewallem. Chcete-li získat seznam podporovaných typů icmp, můžeme použít níže uvedený příkaz.

# firewall-cmd --get-icmptypes

Krok 4:Vytvoření vlastních služeb v Firewalldu

8. Služby jsou sada pravidel s porty a možnostmi, které používá Firewalld. Služby, které jsou povoleny, se automaticky načtou při Firewallu služba je spuštěna.

Ve výchozím nastavení je dostupných mnoho služeb. Seznam všech dostupných služeb získáte pomocí následujícího příkazu.

# firewall-cmd --get-services

9. Chcete-li získat seznam všech výchozích dostupných služeb, přejděte do následujícího adresáře, zde získáte seznam služeb.

# cd /usr/lib/firewalld/services/

10. Chcete-li vytvořit vlastní službu, musíte ji definovat na následujícím místě. Například zde chci přidat službu pro RTMP port 1935 , nejprve vytvořte kopii kterékoli ze služeb.

# cd /etc/firewalld/services/
# cp /usr/lib/firewalld/services/ssh.xml /etc/firewalld/services/

A pak přejděte do umístění, kam byl zkopírován náš soubor služby, a poté soubor přejmenujte na ‘ssh.xml ‘ na ‘rtmp.xml ‘ jak je znázorněno na obrázku níže.

# cd /etc/firewalld/services/

11. Dále soubor otevřete a upravte jako Nadpis, Popis, Protokol a Číslo portu , který musíme použít pro službu RTMP, jak je znázorněno na obrázku níže.

12. Chcete-li tyto změny aktivovat, restartujte službu brány firewall nebo znovu načtěte nastavení.

# firewall-cmd --reload

13. Chcete-li potvrdit, zda je služba přidána nebo ne, spusťte níže uvedený příkaz a získejte seznam dostupných služeb.

# firewall-cmd --get-services

Krok 5:Přiřazení služeb k zónám brány firewall

14. Zde se podíváme na to, jak spravovat firewall pomocí příkazu firewall-cmd. Chcete-li zjistit aktuální stav brány firewall a všech aktivních zón, zadejte následující příkaz.

# firewall-cmd --state
# firewall-cmd --get-active-zones

15. Chcete-li získat veřejnou zónu pro rozhraní enp0s3 , toto je výchozí rozhraní, které je definováno v /etc/firewalld/firewalld.conf soubor jako DefaultZone=public .

Chcete-li zobrazit seznam všech dostupných služeb v této výchozí zóně rozhraní.

# firewall-cmd --get-service

Krok 6:Přidání služeb do zón brány firewall

16. Ve výše uvedených příkladech jsme viděli, jak vytvořit vlastní služby vytvořením rtmp zde uvidíme, jak přidat rtmp službu také do zóny.

# firewall-cmd --add-service=rtmp

17. Chcete-li odstranit přidanou zónu, napište.

# firewall-cmd --zone=public --remove-service=rtmp

Výše uvedený krok byl pouze dočasným obdobím. Aby to bylo trvalé, musíme spustit níže uvedený příkaz s volbou –permanent .

# firewall-cmd --add-service=rtmp --permanent
# firewall-cmd --reload

18. Definujte pravidla pro rozsah síťového zdroje a otevřete kterýkoli z portů. Pokud byste například chtěli otevřít rozsah sítě, řekněte „192.168.0.0/24 ‘ a přístav ‘1935 ‘ použijte následující příkazy.

# firewall-cmd --permanent --add-source=192.168.0.0/24
# firewall-cmd --permanent --add-port=1935/tcp

Po přidání nebo odebrání jakýchkoli služeb nebo portů nezapomeňte znovu načíst službu brány firewall.

# firewall-cmd --reload 
# firewall-cmd --list-all

Krok 7:Přidání rozšířených pravidel pro rozsah sítě

19. Pokud chci povolit služby jako http, https, vnc-server, PostgreSQL, použijete následující pravidla. Nejprve přidejte pravidlo a udělejte jej trvalým a znovu načtěte pravidla a zkontrolujte stav.

# firewall-cmd --add-rich-rule 'rule family="ipv4" source address="192.168.0.0/24" service name="http" accept' 
# firewall-cmd --add-rich-rule 'rule family="ipv4" source address="192.168.0.0/24" service name="http" accept' --permanent

# firewall-cmd --add-rich-rule 'rule family="ipv4" source address="192.168.0.0/24" service name="https" accept'
# firewall-cmd --add-rich-rule 'rule family="ipv4" source address="192.168.0.0/24" service name="https" accept' --permanent

# firewall-cmd --add-rich-rule 'rule family="ipv4" source address="192.168.0.0/24" service name="vnc-server" accept'
# firewall-cmd --add-rich-rule 'rule family="ipv4" source address="192.168.0.0/24" service name="vnc-server" accept' --permanent

# firewall-cmd --add-rich-rule 'rule family="ipv4" source address="192.168.0.0/24" service name="postgresql" accept'
# firewall-cmd --add-rich-rule 'rule family="ipv4" source address="192.168.0.0/24" service name="postgresql" accept' --permanent

Nyní rozsah sítě 192.168.0.0/24 může používat výše uvedenou službu z mého serveru. Možnost –trvalé lze použít v každém pravidle, ale musíme pravidlo definovat a zkontrolovat s klientským přístupem, poté jej musíme nastavit natrvalo.

20. Po přidání výše uvedených pravidel nezapomeňte znovu načíst pravidla brány firewall a seznam pravidel pomocí:

# firewall-cmd --reload
# firewall-cmd --list-all

Chcete-li se dozvědět více o Firewallu.

# man firewalld

To je vše, viděli jsme, jak nastavit síťový filtr pomocí brány Firewalld v RHEL/CentOS a Fedora .

Závěr

Net-filter je rámec pro firewall pro každou distribuci Linuxu. Zpět v každém RHEL a CentOS edice, použili jsme iptables ale v novějších verzích zavedli Firewalld . Je snazší porozumět a používat firewall. Doufám, že se vám psaní líbilo.


Cent OS
  1. CentOS / RHEL 7 :Jak nainstalovat a nakonfigurovat telnet

  2. Jak nainstalovat a nakonfigurovat Sambu v CentOS / RHEL

  3. Jak nakonfigurovat proxy v CentOS/RHEL/Fedora

  1. Jak nainstalovat a nakonfigurovat Fail2Ban na CentOS 8 a Fedora 33

  2. Jak nainstalovat Python 3.5 na CentOS/RHEL a Fedoru

  3. Jak nainstalovat, nakonfigurovat a spustit WordPress 3.8 na RHEL/CentOS/Fedora

  1. Jak nainstalovat a nakonfigurovat R na RHEL 8 / CentOS 8 Linux System

  2. Jak nainstalovat a nakonfigurovat sambu na RHEL 8 / CentOS 8

  3. Jak nakonfigurovat firewallové přihlašování v CentOS/RHEL 8