?Wie öffnet oder schließt man Ports.?Wie findet man heraus welche Ports auf einem PC geöffnet sind?
Inhaltsverzeichnis:
- Was ist Listening Port?
- Überprüfen Sie die Listening Ports mit
netstat
- Überprüfen Sie die Listening Ports mit
ss
- Überprüfen Sie die Listening Ports mit
lsof
- Fazit
Bei der Behebung von Netzwerkkonnektivitäts- oder anwendungsspezifischen Problemen sollte zunächst überprüft werden, welche Ports auf Ihrem System tatsächlich verwendet werden und welche Anwendung einen bestimmten Port überwacht.
In diesem Artikel wird erläutert, wie Sie mit den Befehlen
netstat
,
ss
und
lsof
herausfinden, welche Dienste auf welchen Ports
netstat
sind. Die Anweisungen gelten für alle Linux- und Unix-basierten Betriebssysteme wie macOS.
Was ist Listening Port?
Der Netzwerkport wird durch seine Nummer, die zugehörige IP-Adresse und den Typ des Kommunikationsprotokolls wie TCP oder UDP identifiziert.
Der Überwachungsport ist ein Netzwerkport, auf dem eine Anwendung oder ein Prozess als Kommunikationsendpunkt empfangsbereit ist.
Jeder Überwachungsport kann mithilfe einer Firewall geöffnet oder geschlossen (gefiltert) werden. Im Allgemeinen ist ein offener Port ein Netzwerkport, der eingehende Pakete von entfernten Standorten akzeptiert.
Es ist nicht möglich, dass zwei Dienste denselben Port an derselben IP-Adresse abhören.
Wenn Sie beispielsweise einen Apache-Webserver ausführen, der die Ports
80
und
443
und versuchen, Nginx zu installieren, kann der spätere nicht gestartet werden, da die HTTP- und HTTPS-Ports bereits verwendet werden.
Überprüfen Sie die Listening Ports mit
netstat
netstat
ist ein Befehlszeilentool, das Informationen zu Netzwerkverbindungen bereitstellen kann.
Verwenden Sie den folgenden Befehl, um alle TCP- oder UDP-Ports aufzulisten, die abgehört werden, einschließlich der Dienste, die die Ports verwenden, und des Socket-Status:
sudo netstat -tunlp
Die in diesem Befehl verwendeten Optionen haben folgende Bedeutung:
-
-t
- TCP-Ports anzeigen.-u
- UDP-Ports anzeigen.-n
- Zeigt numerische Adressen an, anstatt Hosts aufzulösen.-l
- Nur empfangsbereite Ports anzeigen.-p
- Zeigt die PID und den Namen des Hörerprozesses an. Diese Informationen werden nur angezeigt, wenn Sie den Befehl als root- oder sudo-Benutzer ausführen.
Die Ausgabe sieht ungefähr so aus:
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 445/sshd tcp 0 0 0.0.0.0:25 0.0.0.0:* LISTEN 929/master tcp6 0 0:::3306:::* LISTEN 534/mysqld tcp6 0 0:::80:::* LISTEN 515/apache2 tcp6 0 0:::22:::* LISTEN 445/sshd tcp6 0 0:::25:::* LISTEN 929/master tcp6 0 0:::33060:::* LISTEN 534/mysqld udp 0 0 0.0.0.0:68 0.0.0.0:* 966/dhclient
Die wichtigen Spalten in unserem Fall sind:
-
Proto
- Das vom Socket verwendete Protokoll.Local Address
- Die IP-Adresse und die Portnummer, die der Prozess überwacht.PID/Program name
- Die PID und der Name des Prozesses.
sudo netstat -tnlp | grep:22
Die Ausgabe zeigt, dass auf diesem Computer Port 22 vom SSH-Server verwendet wird:
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 445/sshd tcp6 0 0:::22:::* LISTEN 445/sshd
Wenn die Ausgabe leer ist, bedeutet dies, dass der Port nicht abgehört wird.
Sie können die Liste auch nach Kriterien filtern, z. B. PID, Protokoll, Status usw.
netstat
ist veraltet und wird durch
ss
und
ip
, aber es ist immer noch eines der am häufigsten verwendeten Befehle zum Überprüfen von Netzwerkverbindungen.
Überprüfen Sie die Listening Ports mit
ss
ss
ist neu
netstat
. Es fehlen einige der
netstat
Funktionen, es werden jedoch mehr TCP-
netstat
, und es ist etwas schneller. Die Befehlsoptionen sind größtenteils gleich, sodass der Übergang von
netstat
zu
ss
nicht schwierig ist.
Um eine Liste aller Listening-Ports mit
ss
Sie Folgendes ein:
sudo ss -tunlp
Die Ausgabe ist fast die gleiche wie die von
netstat
gemeldete:
State Recv-Q Send-Q Local Address:Port Peer Address:Port LISTEN 0 128 0.0.0.0:22 0.0.0.0:* users:(("sshd", pid=445, fd=3)) LISTEN 0 100 0.0.0.0:25 0.0.0.0:* users:(("master", pid=929, fd=13)) LISTEN 0 128 *:3306 *:* users:(("mysqld", pid=534, fd=30)) LISTEN 0 128 *:80 *:* users:(("apache2", pid=765, fd=4), ("apache2", pid=764, fd=4), ("apache2", pid=515, fd=4)) LISTEN 0 128:22:* users:(("sshd", pid=445, fd=4)) LISTEN 0 100:25:* users:(("master", pid=929, fd=14)) LISTEN 0 70 *:33060 *:* users:(("mysqld", pid=534, fd=33))
Überprüfen Sie die Listening Ports mit
lsof
lsof
ist ein leistungsstarkes Befehlszeilenprogramm, das Informationen zu Dateien bereitstellt, die von Prozessen geöffnet werden.
In Linux ist alles eine Datei. Sie können sich einen Socket als eine Datei vorstellen, die in das Netzwerk schreibt.
So rufen Sie eine Liste aller empfangsbereiten TCP-Ports mit dem Typ
lsof
:
sudo lsof -nP -iTCP -sTCP:LISTEN
Folgende Optionen werden verwendet:
-
-n
- Konvertiert keine Portnummern in Portnamen.-p
- Hostnamen nicht auflösen, numerische Adressen anzeigen.-iTCP -sTCP:LISTEN
- Zeigt nur Netzwerkdateien mit dem TCP-Status LISTEN an.
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME sshd 445 root 3u IPv4 16434 0t0 TCP *:22 (LISTEN) sshd 445 root 4u IPv6 16445 0t0 TCP *:22 (LISTEN) apache2 515 root 4u IPv6 16590 0t0 TCP *:80 (LISTEN) mysqld 534 mysql 30u IPv6 17636 0t0 TCP *:3306 (LISTEN) mysqld 534 mysql 33u IPv6 19973 0t0 TCP *:33060 (LISTEN) apache2 764 www-data 4u IPv6 16590 0t0 TCP *:80 (LISTEN) apache2 765 www-data 4u IPv6 16590 0t0 TCP *:80 (LISTEN) master 929 root 13u IPv4 19637 0t0 TCP *:25 (LISTEN) master 929 root 14u IPv6 19638 0t0 TCP *:25 (LISTEN)
Die meisten Namen der Ausgabespalten sind selbsterklärend:
-
COMMAND
,PID
,USER
- Der Name, diePID
und der Benutzer, der das mit dem Port verknüpfte ProgrammCOMMAND
.NAME
- Die Portnummer.
Um herauszufinden, welcher Prozess auf einem bestimmten Port
3306
, z. B. Port
3306
, würden Sie
3306
verwenden:
sudo lsof -nP -iTCP:3306 -sTCP:LISTEN
Die Ausgabe zeigt, dass Port
3306
vom MySQL-Server verwendet wird:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME mysqld 534 mysql 30u IPv6 17636 0t0 TCP *:3306 (LISTEN)
Weitere Informationen finden Sie auf der Manpage lsof. Dort finden Sie Informationen zu allen anderen leistungsstarken Optionen dieses Tools.
Fazit
Wir haben Ihnen verschiedene Befehle gezeigt, mit denen Sie überprüfen können, welche Ports auf Ihrem System verwendet werden und wie Sie herausfinden, welcher Prozess auf einem bestimmten Port empfangsbereit ist.
TerminalBuffied: Mit diesem kostenlosen Font einen Stich zu Halloween erzwingen Auch wenn du Buffy noch nie gesehen hast, Buffy ist ein herrlich zitternde Schrift. Die Buchstaben sind gut ausbalanciert, so dass sie für eine solche stilisierte Schrift relativ einfach zu lesen sind.
Auch wenn Sie die Serie, die Graham Meade von GemFonts inspirierte, nie gesehen haben, ist Buffied entzückend zitternd Sie werfen sich mit Blut, Eingeweiden oder offensichtlichem Halloween-Bild über den Kopf.
PCs sind nicht tot, sie sind Mikrowellen
Experten sagen, dass PCs tot sind, aber die Wahrheit ist viel alltäglicher: Computer haben zu Standardgeräten.
711 Millionen E-Mail-Adressen sind durchgesickert: Prüfen Sie, ob auch Ihre
Bei einem der größten Datenschutzverstöße hat ein Spambot über 700 Millionen E-Mail-Adressen und Millionen von Passwörtern öffentlich durchgesickert.