Firewalld je výchozí brány firewall program na CentOS 7, Red Hat Enterprise Linux 7 (RHEL 7), Fedora 18+ a některých dalších populárních Linuxových distribucí. Je velmi výkonný pro správu sítí IPv4 a IPv6. Má snadno použitelné rozhraní příkazového řádku (CLI) a skvělou alternativu k iptables.
v tomto článku vám ukážu, jak zobrazit seznam otevřených portů v Firewalld. Budu používat CentOS 7.4 pro demonstraci, ale stejné příkazy by měly fungovat na jakékoliv distribuci Linuxu s Firewalld nainstalován. Tak začneme.
co je otevřený Port?
nejprve pojďme diskutovat o tom, co je otevřený port. Je to jednoznačně síťový termín.
můžete nainstalovat mnoho serverových softwarových balíků na jednom počítači, jako je HTTP server, DNS server, databázový Server a tak dále. Může však mít omezený počet síťových rozhraní. Řekněme, že má k dispozici jedno fyzické síťové rozhraní a je nakonfigurováno tak, aby mělo IP adresu 10.0.1.11 a máte na něm nainstalovaný databázový server HTTP a MySQL. Když se tedy připojíte k 10.0.1.11 z jiného počítače, jak váš serverový počítač ví, jakou službu chcete použít? Služba HTTP nebo databázová služba MySQL.
pro rozlišení mezi službou HTTP a databázovou službou MySQL má IP adresa také jinou vlastnost zvanou port. Port je 16bitové celé číslo, což znamená, že to může být číslo od 0 do 65536. Váš serverový počítač tedy spouští různé služby nebo serverový software na různých portech. Například server HTTP běží na portu 80, databázový server MySQL běží na portu 3306 a tak dále.
Chcete-li mluvit s konkrétní službou v počítači serveru, řekněme HTTP server, klientský počítač musí předat port 80 spolu s IP adresou 10.0.1.11. Port 80 je tedy otevřený port, protože s ním může mluvit klientský počítač.
pokud máte nakonfigurovaný program brány firewall, ve výchozím nastavení blokuje veškerý port. Takže i když je služba spuštěna na konkrétním portu vašeho serverového počítače, klientský počítač se k němu nebude moci připojit.
jak tedy mohu vědět, jaké porty jsou otevřené a mohu se připojit k počítači serveru? No, to je téma tohoto článku.
Najít Otevřené Porty s Firewalld:
Nejprve zkontrolujte, zda firewalld je spuštěna služba s následující příkaz:
Jak můžete vidět z označené části obrázku níže, firewalld je spuštěna služba. Takže můžeme jít.
Pokud váš firewalld služba není spuštěna, můžete začít firewalld služba s následující příkaz:
Nyní můžete používat firewall-cmd příkaz konfigurovat a získat informace o Firewalld.
můžete vytisknout celý Firewalld konfiguraci pomocí následujícího příkazu:
otevřené porty a služby jsou uvedeny ve službách: a porty: řádek označený na obrázku níže.
ve službách: linka, SSH a dhcpv6-klientské služby jsou povoleny. To znamená, že porty odpovídající těmto službám jsou také otevřené.
můžete zjistit, jaké porty těchto služeb otevřít pomocí následujícího příkazu:
POZNÁMKA:: Tady, NÁZEV_SLUŽBY je služba, kterou chcete vidět porty.
Chcete-li například zobrazit porty, které služba ssh otevřela, spusťte následující příkaz:
Jak můžete vidět z označené části obrázku níže, ssh služby otevře port TCP 22 a UDP port 22.
příkaz sudo firewall-cmd-list-all vám ukáže celou konfiguraci Firewalld.
pokud chcete pouze zjistit, jaké služby mohou mít otevřené porty, spusťte následující příkaz:
služby povoleno mít otevřené porty jsou uvedeny jak můžete vidět z obrázku níže.
Pokud chcete vidět pouze porty, které jsou otevřené, spusťte následující příkaz:
otevřené porty jsou uvedeny jak můžete vidět z obrázku níže.
Pokud chcete otevřít další porty nebo služby pomocí Firewalld, pak se podívejte se na můj další článek, Jak jej máte Otevřít Port 80 na CentOS7(https://linuxhint.com/open-port-80-centos7/)
to je, jak si seznam otevřených portů v Firewalld. Díky za přečtení tohoto článku.