Heim >Betrieb und Instandhaltung >Betrieb und Wartung von Linux >So überprüfen Sie, welche Ports unter Linux geöffnet sind

So überprüfen Sie, welche Ports unter Linux geöffnet sind

青灯夜游
青灯夜游Original
2022-03-02 15:21:5226847Durchsuche

So überprüfen Sie offene Ports unter Linux: 1. Verwenden Sie das Tool nmap, um offene Ports zu erkennen. 3. Verwenden Sie das Tool lsof, um offene Ports zu erkennen Ports; 5. Verwenden Sie das Netcat-Tool, um offene Ports zu erkennen.

So überprüfen Sie, welche Ports unter Linux geöffnet sind

Die Betriebsumgebung dieses Tutorials: Linux5.9.8-System, Dell G3-Computer.

In der Netzwerktechnik gibt es zwei Arten von Ports: logische Ports und physische Ports. Physische Ports beziehen sich auf physisch vorhandene Ports, z. B. Schnittstellen an ADSL-Modems, Hubs, Switches und Routern, die zur Verbindung mit anderen Netzwerkgeräten verwendet werden, z. B. RJ-45-Ports, SC-Ports usw. Logischer Port bezieht sich auf den Port, der zur Unterscheidung von Diensten im logischen Sinne verwendet wird, z. B. den Dienstport im TCP/IP-Protokoll. Die Portnummer reicht von 0 bis 65535, z. B. Port 80 für das Durchsuchen von Webdiensten und Port 21 für FTP-Dienste . Warten. Aufgrund der großen Anzahl physischer Ports und logischer Ports ist jeder Port nummeriert.

Ports können anhand der Portnummer in drei Hauptkategorien unterteilt werden:

1: Bekannter Port (Port)

Anerkannte Portnummern reichen von 0 bis 1023. Sie sind eng an einige gängige Dienste gebunden. Beispielsweise verwendet der FTP-Dienst Port 21. Sie können diese Zuordnungsbeziehung in /etc/services sehen.

2: Registrierte Ports:

von 1024 bis 49151. Sie sind lose an einige Dienste gebunden. Das heißt, an diese Ports sind viele Dienste gebunden, und diese Ports werden auch für viele andere Zwecke verwendet

3: Dynamische und/oder private Ports

Dynamische Ports, also private Portnummern ), ist das Anzahl der Ports, die einer Software zur Kommunikation mit anderer Software über das Transmission Control Protocol oder User Transport Protocol des Internets zur Verfügung stehen. Dynamische Ports reichen im Allgemeinen von 49152 bis 65535.

Linux hat einen begrenzten Portbereich. Wenn ich bestimmte Ports für mein Programm reservieren möchte, muss ich diesen Portbereich steuern. /proc/sys/net/ipv4/ip_local_port_range definiert den lokalen TCP/UDP-Portbereich. Sie können net.ipv4.ip_local_port_range = 1024 65000

[root@localhost ~]# cat /proc/sys/net/ipv4/ip_local_port_range
32768   61000
[root@localhost ~]#  echo 1024 65535 > /proc/sys/net/ipv4/ip_local_port_range

In Bezug auf Ports und Dienste habe ich jeweils die Analogie einer öffentlichen Toilette genommen Toilette in einer öffentlichen Toilette ist wie jeder Hafen, der den Menschen Komfort bietet. Wenn Sie diese Dienste anbieten, muss der Hafen (die Toilette) geöffnet werden Auf diesen Ports werden Links aufgebaut. Wenn diese Toilette von jemandem besetzt ist, bedeutet das, dass die Hafennummer von einem Dienst belegt ist. Wenn es hier eines Tages keinen öffentlichen Toilettendienst gibt und die öffentliche Toilette abgerissen wird, wird es natürlich keine Hafennummer mehr geben. Ein anschaulicheres Beispiel ist tatsächlich eine Banklobby. Die Portnummern sind die Schalter, und die Leute, die die Nummern zur Abwicklung von Geschäften verwenden, sind wie verschiedene Clients, die mit dem Server verbunden sind. Sie senden Geschäftskontakte mit dem Schalter über die Port-Redirection-Technologie. Um ein weiteres leicht verständliches Beispiel zu nennen: Die Hafennummer ist wie jede Station auf der Hochgeschwindigkeitsstrecke. Beispielsweise stellen Changsha, Yueyang usw. jeweils eine Hafennummer dar. Das ist wie bei jedem Anwendungsprogramm, das ein IP-Paket an den Server sendet.

Wie kann ich überprüfen, ob der Port geöffnet ist? Tatsächlich weiß ich nicht, dass es so viele Methoden gibt, ohne das Problem zu klären!

1: nmap-Tool erkennt offene Ports

nmap ist ein Netzwerk-Scan- und Host-Erkennungstool. Die Installation von nmap ist sehr einfach, wie unten für die RPM-Installation gezeigt.

[root@DB-Server Server]# rpm -ivh nmap-4.11-1.1.x86_64.rpm 
warning: nmap-4.11-1.1.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
Preparing...                ########################################### [100%]
   1:nmap                   ########################################### [100%]
[root@DB-Server Server]# rpm -ivh nmap-frontend-4.11-1.1.x86_64.rpm 
warning: nmap-frontend-4.11-1.1.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
Preparing...                ########################################### [100%]
   1:nmap-frontend          ########################################### [100%]
[root@DB-Server Server]#

In Bezug auf die Verwendung von nmap können Sie eine lange und detaillierte Beschreibung schreiben, die ich hier nicht näher erläutern werde. Wie unten gezeigt, überprüft nmap 127.0.0.1 die auf diesem Computer geöffneten Ports und scannt alle Ports. Natürlich können auch andere Server-Ports gescannt werden.

[root@DB-Server Server]# nmap 127.0.0.1
 
Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2016-06-22 15:46 CST
Interesting ports on localhost.localdomain (127.0.0.1):
Not shown: 1674 closed ports
PORT     STATE SERVICE
22/tcp   open  ssh
25/tcp   open  smtp
111/tcp  open  rpcbind
631/tcp  open  ipp
1011/tcp open  unknown
3306/tcp open  mysql
 
Nmap finished: 1 IP address (1 host up) scanned in 0.089 seconds
You have new mail in /var/spool/mail/root
[root@DB-Server Server]#

So überprüfen Sie, welche Ports unter Linux geöffnet sind

2: Das Netstat-Tool erkennt offene Ports

[root@DB-Server Server]# netstat -anlp | grep 3306
tcp        0      0 :::3306                     :::*                        LISTEN      7358/mysqld         
[root@DB-Server Server]# netstat -anlp | grep 22
tcp        0      0 :::22                       :::*                        LISTEN      4020/sshd           
tcp        0     52 ::ffff:192.168.42.128:22    ::ffff:192.168.42.1:43561   ESTABLISHED 6198/2              
[root@DB-Server Server]#

So überprüfen Sie, welche Ports unter Linux geöffnet sind

Wie oben gezeigt, wirkt dieses Tool weniger prägnant und klar als nmap. Natürlich ist es nicht so leistungsfähig wie nmap. 3: lsof-Tool erkennt offene Ports Port, diese Methode kann nicht verwendet werden. Überprüfen Sie, ob der Port geöffnet ist.

5: Das Netcat-Tool erkennt, ob der Port geöffnet ist.

[root@DB-Server Server]# service mysql start
Starting MySQL......[  OK  ]
[root@DB-Server Server]# lsof -i:3306
COMMAND  PID  USER   FD   TYPE DEVICE SIZE NODE NAME
mysqld  7860 mysql   15u  IPv6  44714       TCP *:mysql (LISTEN)
[root@DB-Server Server]# service mysql stop
Shutting down MySQL..[  OK  ]
[root@DB-Server Server]# lsof -i:3306
[root@DB-Server Server]#

Verwandte Empfehlungen: „So überprüfen Sie, welche Ports unter Linux geöffnet sindLinux-Video-Tutorial

Das obige ist der detaillierte Inhalt vonSo überprüfen Sie, welche Ports unter Linux geöffnet sind. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn