I den här artikeln ska jag visa dig hur du listar öppna portar i Firewalld. Jag ska använda CentOS 7.4 för demonstrationen, men samma kommandon ska fungera på alla Linux-distributioner med Firewalld installerad. Låt oss börja.
Vad är en öppen port?
Låt oss först diskutera vad en öppen port är. Det är uppenbarligen ett nätverksbegrepp.
Du kan installera många serverprogramvarupaket på en enda dator som HTTP-server, DNS-server, databasserver och så vidare. Men det kan ha ett begränsat antal nätverksgränssnitt. Låt oss säga att det har ett fysiskt nätverksgränssnitt tillgängligt och konfigurerat för att ha en IP-adress 10.0.1.11 och du har HTTP och MySQL-databasserver installerad på den. Så när du ansluter till 10.0.1.11 från en annan dator, hur vet din serverdator vilken tjänst du vill använda? HTTP-tjänsten eller MySQL-databastjänsten.
För att skilja mellan HTTP-tjänsten och MySQL-databasstjänsten har IP-adressen också en annan egenskap som heter port. Port är ett 16-bitars heltal, vilket betyder att det kan vara ett tal från 0 till 65536. Så din serverdator kör olika tjänster eller serverprogramvaror på olika portar. Till exempel kör HTTP-servern på port 80, MySQL-databasservern körs på port 3306 och så vidare.
För att prata med en specifik tjänst på din serverdator, låt oss säga HTTP-servern, klientdatorn måste skicka port 80 tillsammans med IP-adressen 10.0.1.11. Så port 80 är en öppen port eftersom en klientdator kan prata med den.
När du har konfigurerat brandväggsprogram blockerar det som standard all port. Så även när tjänsten körs på en viss port på din serverdator kommer en klientdator inte att kunna ansluta till den.
Så hur vet jag vilka portar som är öppna och jag kan ansluta till på min serverdator? Det är ämnet för den här artikeln.
Hitta öppna hamnar med Firewalld:
Kontrollera först om firewalld tjänsten körs med följande kommando:
$ sudo systemctl status brandvägg
Som du kan se från det markerade avsnittet på skärmdumpen nedan, firewalld tjänsten körs. Så vi är klara.
Om din firewalld tjänsten körs inte kan du börja firewalld tjänst med följande kommando:
$ sudo systemctl starta firewalld
Nu kan du använda brandvägg-cmd kommandokonfigurera och få information om Firewalld.
Du kan skriva ut hela Firewalld-konfigurationen med följande kommando:
$ sudo firewall-cmd --list-all
De öppna portarna och tjänsterna listas i tjänster: och hamnar: som markeras i skärmdumpen nedan.
I tjänster: linje, ssh och dhcpv6-klient tjänster är aktiverade. Det betyder att portarna som motsvarar dessa tjänster också är öppna.
Du kan ta reda på vilka portar dessa tjänster öppnas med följande kommando:
$ grep ong> SERVICE_NAME / etc / servicesNOTERA: Här, SERVICE NAMN är den tjänst du vill se portarna till.
Till exempel för att se portarna ssh tjänsten öppnas, kör följande kommando:
$ grep ssh / etc / services
Som du kan se från det markerade avsnittet på skärmdumpen nedan, ssh tjänsten öppnar TCP hamn 22 och UDP hamn 22.
Kommandot sudo brandvägg-cmd -list-all, visar dig hela Firewalld konfiguration.
Om du bara vill se vilka tjänster som får ha öppna portar, kör du följande kommando:
$ sudo firewall-cmd - list-services
Tjänsterna som får öppna portar listas som du kan se på skärmdumpen nedan.
Om du bara vill se de portar som är öppna kör du följande kommando:
$ sudo firewall-cmd --list-portar
De öppna portarna listas som du kan se på skärmdumpen nedan.
Om du vill öppna andra portar eller tjänster med Firewalld, kolla sedan in min andra artikel Hur man öppnar port 80 på CentOS7(https: // linuxhint.com / open-port-80-centos7 /)
Det är så du listar öppna portar i Firewalld. Tack för att du läste den här artikeln.