Harting Development

Prüfen, ob ein Port unter Linux geöffnet ist: Einfache Methoden und bewährte Praktiken

Lukas Fuchs vor 1 Monat Netzwerk & Routing 3 Min. Lesezeit

Befehlszeilentools zum Überprüfen geöffneter Ports

Linux bietet eine Reihe leistungsstarker Befehlszeilentools, mit denen du offene Ports auf deinem System überprüfen kannst. Hier sind drei der gängigsten und effektivsten Tools:

netstat

netstat ist ein vielseitiges Tool, das detaillierte Informationen zu Netzwerkverbindungen, einschließlich der von ihnen verwendeten Ports, bereitstellt. Führe den folgenden Befehl aus, um eine Liste aller offenen TCP- und UDP-Ports anzuzeigen:

netstat -tulpn

ss

ss (Socket Statistics) ist ein weiteres nützliches Tool, das dir einen Echtzeitüberblick über Socket-Verbindungen und die von ihnen verwendeten Ports bietet. Gib den folgenden Befehl ein, um eine Liste aller geöffneten Ports anzuzeigen:

sudo ss -tulpn

lsof

lsof (List Open Files) ist ein vielseitiges Tool, das eine umfassende Liste aller geöffneten Dateien und Ports auf deinem System bereitstellt. Führe den folgenden Befehl aus, um eine Liste aller offenen Ports zu erhalten:

sudo lsof -i

Diese Befehlszeilentools ermöglichen es dir, die auf deinem System geöffneten Ports schnell und einfach zu identifizieren. Dies kann wertvolle Informationen für die Fehlerbehebung bei Netzwerkproblemen, die Verbesserung der Systemsicherheit und das Überwachen des Netzwerkverkehrs liefern.

Verwendung von ss zum Anzeigen von Socket-Statistiken

Das Tool ss (Socket Statistics) bietet eine erweiterte Ansicht der Netzwerkaktivitäten, einschließlich Informationen zu geöffneten Ports. Im Gegensatz zu netstat zeigt ss sowohl IPv4- als auch IPv6-Verbindungen an.

Socket-Zustände verstehen

ss gruppiert Sockets in verschiedene Zustände:

  • LISTEN: Port lauscht auf eingehende Verbindungen.
  • ESTABLISHED: Aktive Verbindung zwischen zwei Hosts.
  • FIN-WAIT-1/2: Verbindung wird geschlossen.
  • TIME-WAIT: Socket wartet auf die Zeitüberschreitung eingehender Pakete.

Befehlssyntax und Optionen

Um alle offenen Ports unter Linux mit ss anzuzeigen, führe den folgenden Befehl aus:

ss -ltn

Zusätzliche Optionen von ss:

  • -p: Zeigt Prozessinformationen an, die mit geöffneten Ports verbunden sind.
  • -a: Zeigt alle Sockets an, auch wenn sie nicht gebunden sind.
  • -numeric: Konvertiert Portnummern in numerische Werte.

Beispielausgabe

Die Ausgabe von ss enthält typischerweise die folgenden Spalten:

  • State: Socket-Zustand (z. B. LISTEN, ESTABLISHED).
  • Recv-Q: Anzahl der eingegangenen Daten.
  • Send-Q: Anzahl der gesendeten Daten.
  • Local Address: Lokale IP-Adresse und Portnummer.
  • Foreign Address: Remote-IP-Adresse und Portnummer.

Wenn du beispielsweise eine aktive Verbindung zu einem Webserver auf Port 80 hast, könnte die Ausgabe wie folgt aussehen:

State       Recv-Q Send-Q Local Address:Port   Foreign Address:Port
ESTABLISHED 0      0      192.168.1.10:58417   10.0.0.1:80

Dadurch wird bestätigt, dass auf dem lokalen Host mit der IP-Adresse 192.168.1.10 ein Port 58417 geöffnet ist, der mit dem Webserver 10.0.0.1 auf Port 80 verbunden ist.

Netstat zum Auflisten von Port-Verbindungen

Netstat ist ein vielseitiges Befehlszeilentool, das eine umfassende Liste aller derzeit geöffneten Netzwerkanschlüsse, einschließlich Ports, anzeigt. Es bietet eine detaillierte Übersicht über die Netzwerkaktivitäten deines Systems und ermöglicht dir die Identifizierung offener sowie aktiver Ports.

Verwendung von Netstat

Um Netstat zu verwenden, öffne ein Terminalfenster und gib den folgenden Befehl ein:

netstat -tulpn

Die Ausgabe von Netstat wird in einer tabellarischen Form angezeigt und umfasst die folgenden Spalten:

  • Proto: Das Netzwerkprotokoll, das verwendet wird (z. B. TCP, UDP).
  • Local address: Die lokale IP-Adresse und der Port, die für die Verbindung verwendet werden.
  • Foreign address: Die Remote-IP-Adresse und der Port, mit dem die Verbindung hergestellt wird (nur für TCP-Verbindungen).
  • State: Der aktuelle Status der Verbindung (z. B. ESTABLISHED, LISTEN, CLOSE_WAIT).
  • PID/Program name: Die Prozess-ID und der Name des Programms, das den Port verwendet.

Anzeigen offener Ports

Um nur offene Ports aufzulisten, kannst du den folgenden Befehl verwenden:

netstat -tulpn | grep LISTEN

Dieser Befehl filtert die Ausgabe von Netstat und zeigt nur Zeilen an, die den Status "LISTEN" haben, was angibt, dass der Port offen und Verbindungen akzeptiert.

Zusätzliche Optionen

Netstat bietet zahlreiche zusätzliche Optionen, mit denen du die Ausgabe anpassen und bestimmte Informationen abrufen kannst. Hier sind einige nützliche Optionen:

  • -a: Alle Sockets anzeigen, einschließlich derjenigen, die nicht an eine IP-Adresse gebunden sind.
  • -p: Die Prozess-ID angeben, deren Sockets angezeigt werden sollen.
  • -s: Statistiken zu verschiedenen Protokollen anzeigen.

Weitere Informationen zur Verwendung von Netstat findest du in der Netstat-Dokumentation.

Socket-Programmbeispiel in C

Um geöffnete Ports zu prüfen, kannst du ein Socket-Programm in C schreiben. So geht's:

Erstellen eines Sockets

Zunächst erstellst du einen Socket mit socket(). Die Funktion nimmt drei Argumente:

  • domain: Die Protokollfamilie, z. B. AF_INET für IPv4 oder AF_INET6 für IPv6.
  • type: Der Socket-Typ, z. B. SOCK_STREAM für TCP-Sockets oder SOCK_DGRAM für UDP-Sockets.
  • protocol: Das Protokoll, z. B. 0 für das Standardprotokoll des Socket-Typs.
int socket_fd = socket(AF_INET, SOCK_STREAM, 0);

Port binden

Als Nächstes bindest du den Socket an einen Port mit bind(). Die Funktion nimmt drei Argumente:

  • socket_fd: Der Socket-Deskriptor.
  • addr: Die Adresse, an die der Socket gebunden werden soll, als struct sockaddr.
  • addrlen: Die Größe der Adressstruktur.
struct sockaddr_in addr;
addr.sin_family = AF_INET;
addr.sin_addr.s_addr = htonl(INADDR_ANY);
addr.sin_port = htons(port);

int bind_result = bind(socket_fd, (struct sockaddr *)&addr, sizeof(addr));

Verbinden oder senden

Abhängig vom Socket-Typ verbindest du dich entweder mit einem Remote-Host (TCP) oder sendest Daten an einen bestimmten Port (UDP).

  • Für TCP-Sockets:
int connect_result = connect(socket_fd, (struct sockaddr *)&addr, sizeof(addr));
  • Für UDP-Sockets:
int sendto_result = sendto(socket_fd, data, data_len, 0, (struct sockaddr *)&addr, sizeof(addr));

Fehlerbehandlung

Wenn eine der Funktionen fehlschlägt, kannst du errno überprüfen, um den Fehler zu ermitteln. Beispielsweise:

if (bind_result < 0) {
    perror("Fehler beim Binden des Sockets");
    exit(1);
}

Referenzdokumente

Überprüfen von Ports über TCP- oder UDP-Protokolle

Manchmal musst du möglicherweise feststellen, ob ein bestimmter Port auf deinem Linux-System über das Transmission Control Protocol (TCP) oder das User Datagram Protocol (UDP) geöffnet ist. Es gibt verschiedene Möglichkeiten, dies zu tun, je nachdem, welche Tools und Kenntnisse dir zur Verfügung stehen.

Überprüfung über die Befehlszeile

Eine Möglichkeit, Ports über die Befehlszeile zu überprüfen, ist die Verwendung des netstat-Befehls. Dieser Befehl listet alle aktiven Netzwerkverbindungen auf deinem System auf, einschließlich der verwendeten Ports und Protokolle.

netstat -atnp | grep <port_number>

Dabei ist <port_number> die Portnummer, die du überprüfen möchtest.

Eine weitere Option ist die Verwendung des ss-Befehls. Dieser Befehl liefert detailliertere Informationen zu Socket-Statistiken, einschließlich der verwendeten Ports und Protokolle.

ss -atnp | grep <port_number>

Überprüfung über ein Socket-Programm

Wenn du über Programmierkenntnisse verfügst, kannst du auch ein Socket-Programm in C oder einer anderen Programmiersprache schreiben, um Ports zu überprüfen. Dies gibt dir die meiste Kontrolle über den Überprüfungsprozess.

TCP- vs. UDP

Es ist wichtig zu beachten, dass TCP und UDP unterschiedliche Protokolle sind. TCP ist ein verbindungsorientiertes Protokoll, was bedeutet, dass es eine Verbindung zwischen zwei Hosts herstellt, bevor Daten übertragen werden. UDP hingegen ist ein verbindungsloses Protokoll, was bedeutet, dass Daten ohne vorherige Verbindungseinrichtung gesendet werden können.

Je nach deinen Anforderungen musst du möglicherweise Ports über das eine oder andere Protokoll überprüfen.

Bewährte Praktiken bei der Portüberprüfung

Die Portüberprüfung ist ein kritischer Aspekt des Sicherheitsmanagements. Um sicherzustellen, dass deine Tests zuverlässig und effektiv sind, solltest du dich an folgende bewährte Praktiken halten:

Dokumentiere deine Ergebnisse

Dokumentiere die Ports, die du überprüft hast, die gefundenen Ergebnisse und die von dir verwendeten Methoden. Dies hilft dir, den Überblick über deine Sicherheitslage zu behalten und zukünftige Tests zu verfolgen.

Verwende mehrere Tools

Verlasse dich nicht auf ein einzelnes Tool. Verwende eine Kombination aus Befehlszeilentools (z. B. ss, netstat), Socket-Programmierung und externen Tools wie Nmap oder PortQry, um deine Ergebnisse zu verifizieren.

Überprüfe sowohl TCP- als auch UDP-Ports

Denke daran, Ports sowohl über TCP- als auch über UDP-Protokolle zu überprüfen. Einige Dienste verwenden möglicherweise eines oder beide Protokolle, was zu ungenauen Ergebnissen führen kann, wenn du nur eines überprüfst.

Scanne von externen Quellen

Führe Port-Scans nicht nur von internen Systemen aus durch. Scanne auch von externen Quellen, um eine realistischere Sicht auf die Sichtbarkeit deiner Ports für potenzielle Angreifer zu erhalten.

Regelmäßige Überprüfungen

Port-Scans sollten regelmäßig durchgeführt werden, um sicherzustellen, dass deine Systeme vor neuen Bedrohungen geschützt sind. Automatisierte Scans können deinen Aufwand minimieren und die Konsistenz gewährleisten.

Berücksichtigung von Sicherheitsrisiken

Bevor du Ports öffnest, denke über potenzielle Sicherheitsrisiken nach. Überlege genau, welche Dienste diese Ports benötigen und ob sie durch andere sichere Mittel zugänglich gemacht werden können.

Implementierung von Sicherheitsmaßnahmen

Sobald du offene Ports identifiziert hast, implementiere Sicherheitsmaßnahmen wie Firewalls, Intrusion-Detection-Systeme (IDS) und Virtual Private Networks (VPNs), um unbefugten Zugriff zu verhindern.

Zusammenarbeit mit Sicherheitsteams

Informiere deine Sicherheitsteams über geöffnete Ports und arbeite mit ihnen zusammen, um angemessene Sicherheitsmaßnahmen zu implementieren. Regelmäßige Kommunikation hilft, ein umfassendes Verständnis der Sicherheitslage zu gewährleisten.

Nutzung von kommerziellen Lösungen

Wenn deine Ressourcen knapp sind oder du eine umfassendere Lösung benötigst, erwäge die Verwendung kommerzieller Port-Scansoftware wie Nessus oder Intruder. Diese Tools bieten erweiterte Funktionen, Automatisierung und Unterstützung.

Sicherheitsempfehlungen für offene Ports

Als Systemadministrator musst du bei der Portüberwachung Vorsichtsmaßnahmen treffen, um die Sicherheit deines Systems zu gewährleisten. Hier sind einige bewährte Praktiken, die du beachten solltest:

Überwache und protokolliere Zugriffe

  • Richte eine Überwachung ein, um verdächtige Aktivitäten oder unbefugte Zugriffe auf offene Ports zu erkennen.
  • Aktiviere die Protokollierung für alle Netzwerkaktivitäten, sodass du die Ereignisse im Nachhinein prüfen kannst.
  • Verwende Tools wie Fail2ban, um Wiederholungsangriffe auf bestimmte Ports zu blockieren.

Halte deine Systeme auf dem neuesten Stand

  • Installiere regelmäßig Sicherheitsupdates und Patches, um bekannte Sicherheitslücken in Netzwerksoftware und Diensten zu beheben.
  • Verwende sichere Konfigurationen für deine Server und Dienste.

Beschränke den Zugriff auf notwendige Ports

  • Öffne nur die Ports, die für wesentliche Dienste und Anwendungen benötigt werden.
  • Schließe alle nicht verwendeten Ports, um Angriffsflächen zu minimieren.

Verwende Firewalls

  • Implementiere eine Firewall, um den Netzwerkverkehr zu filtern und unbefugten Zugriff auf offene Ports zu blockieren.
  • Konfiguriere Firewalls sorgfältig, um Portzugriff nur für berechtigte Nutzer und Zwecke zuzulassen.

Verwende Intrusion Detection Systems (IDS)

  • Richte ein IDS ein, um Anomalien im Netzwerkverkehr zu erkennen, die auf verdächtige Aktivitäten oder Angriffe hinweisen könnten.
  • IDS können in Echtzeit Warnungen ausgeben, sodass du schnell auf potenzielle Bedrohungen reagieren kannst.

Vermeide die Verwendung unsicherer Dienste

  • Deaktiviere oder entferne Dienste, die nicht mehr benötigt werden oder Sicherheitsrisiken darstellen könnten.
  • Beispielsweise wird FTP als unsicheres Protokoll angesehen und sollte nach Möglichkeit durch sicherere Alternativen wie SFTP ersetzt werden.

Recherchiere und bleibe informiert

  • Bleibe über die neuesten Sicherheitsbedrohung und -trends auf dem Laufenden.
  • Lies Sicherheitsexperten und abonniere Sicherheitswarnungen, um über potenzielle Schwachstellen in deiner Konfiguration informiert zu sein.

Weitere Beiträge

Folge uns

Neue Beiträge

Netzwerk & Routing

Traceroute Linux: Pakete verfolgen und Netzwerkfehler gezielt beheben

AUTOR • Jun 23, 2026
Netzwerk & Routing

Die besten kostenlosen VPNs für Linux: Schutz und Privatsphäre ohne Kompromisse

AUTOR • Jun 23, 2026
Linux-Server

Essential Linux Programme für Effizienz und Produktivität: Die Tools, die ich wirklich nutze

AUTOR • Jun 23, 2026
Monitoring & Logging

Speedtest: Erfahren Sie die wahre Geschwindigkeit Ihrer Internetverbindung

AUTOR • Jun 23, 2026
Monitoring & Logging

WLAN Messung: Optimale Leistung für drahtlose Netzwerke sicherstellen

AUTOR • Jun 23, 2026
Netzwerk & Routing

BayernWLAN mühelos verbinden: So klappt der schnelle Login ohne Stress

AUTOR • Jun 23, 2026
Monitoring & Logging

Deye Wechselrichter Überwachung: So behältst du Leistung, Fehler und Ertrag im Blick

AUTOR • Jun 23, 2026
Linux-Server

Proton Linux: Ein umfassendes Betriebssystem für Leistung und Privatsphäre

AUTOR • Jun 22, 2026
Monitoring & Logging

Alle Störungen: Ursachen, Symptome und Bewältigungsstrategien einfach erklärt

AUTOR • Jun 22, 2026
Netzwerk & Routing

Der schnellste Weg zu einem besseren WLAN: Telekom Speedport Router im Test

AUTOR • Jun 22, 2026
Linux-Server

HP Drucker offline Problembehebung und Wiederherstellung des Drucks: So bekomme ich den Drucker sofort wieder online

AUTOR • Jun 22, 2026
Netzwerk & Routing

Der ultimative Vergleich von Internetanbietern: So findest du den richtigen Anbieter für deine Bedürfnisse

AUTOR • Jun 22, 2026
Netzwerk & Routing

Fernüberwachung leicht gemacht: WLAN-Überwachungskameras für Ihr Smartphone richtig nutzen

AUTOR • Jun 22, 2026
Netzwerk & Routing

Beste kabellose Headsets für klare Kommunikation und immersives Audio: So findest du das richtige Modell

AUTOR • Jun 22, 2026
Sicherheit & Hardening

Apple PIN ändern: So passt du die SIM-PIN auf dem iPhone schnell an

AUTOR • Jun 22, 2026
Systemadministration

DBA online: So verwalten Sie ihre Datenbanken remote und effektiv

AUTOR • Jun 22, 2026
Netzwerk & Routing

Synology WLAN erweitern: So erhöhen Sie Ihre Netzwerkreichweite nahtlos

AUTOR • Jun 22, 2026
Netzwerk & Routing

Internet für Zuhause ohne Telefonanschluss: So gehts wirklich

AUTOR • Jun 22, 2026
Netzwerk & Routing

WLAN Probleme auf dem Handy lösen: Was tun, wenn die Verbindung nicht funktioniert?

AUTOR • Jun 22, 2026
Netzwerk & Routing

Sami Lesebaer WLAN Lösungen für optimale Internetverbindung: So holst du mehr aus deinem Netz heraus

AUTOR • Jun 22, 2026

Beliebte Beiträge

Linux-Server

Linux auf Surface installieren: So läuft dein Microsoft Surface mit Linux stabil und schnell

AUTOR • Jun 13, 2026
Netzwerk & Routing

OpenWrt auf Fritzbox installieren: So machst du deine Fritzbox zum flexiblen Router

AUTOR • Jun 13, 2026
Systemadministration

Zurücksetzen des Hoymiles DTU: Eine umfassende Anleitung

AUTOR • May 13, 2026
Linux-Server

PDF24 für Linux: PDFs erstellen, bearbeiten und unter Linux effizient ändern

AUTOR • Jun 11, 2026
Netzwerk & Routing

Effektive WLAN-Abschirmung mit Alufolie: Was Sie wissen müssen

AUTOR • Jun 18, 2025
Container & Orchestrierung

Java in K8s: Effiziente Container-Orchestrierung für Microservices

AUTOR • Dec 06, 2024
Netzwerk & Routing

Wenn das WhatsApp Backup nicht funktioniert: Die 7 besten Tipps zur Fehlersuche

AUTOR • Dec 09, 2025
Sicherheit & Hardening

FritzBox 7590 Firmware Downgrade: So Geht's

AUTOR • Apr 21, 2026
Netzwerk & Routing

WLAN in der neuen Wohnung: Schritt-für-Schritt-Anleitung zur Einrichtung und Optimierung

AUTOR • Apr 19, 2024
Netzwerk & Routing

DSL-Anschluss für die Wohnung: Alles Wichtige auf einen Blick

AUTOR • Apr 19, 2024
Netzwerk & Routing

Internet für zu Hause ohne Vertrag: Flexibel und sorgenfrei ins Netz

AUTOR • Apr 19, 2024
Netzwerk & Routing

WLAN Lichtschalter: Intelligente Beleuchtung für Ihr Zuhause

AUTOR • Apr 19, 2024
Sicherheit & Hardening

Türspione mit WLAN-Kamera: Überwachung und Sicherheit für Ihr Zuhause

AUTOR • Apr 19, 2024
Netzwerk & Routing

Günstiges Internet für Zuhause: So sparst du bares Geld beim Surfen

AUTOR • Apr 19, 2024
Automatisierung & Scripting

Schritt-für-Schritt-Anleitung: Tasmota Lesekopf Einrichten für Deine Smart Home Anwendungen

AUTOR • Jun 18, 2025
Systemadministration

Windows 11 auf Raspberry Pi 5: Eine Revolution im Mini-PC-Bereich

AUTOR • Jun 08, 2025
Netzwerk & Routing

Verbessern Sie Ihre WLAN-Verbindung: Tipps und Tricks für eine stabile und schnelle Internetverbindung

AUTOR • Apr 19, 2024
Sicherheit & Hardening

Reolink Argus 3 Plus: Die revolutionäre Sicherheitskamera für Ihr Zuhause

AUTOR • Apr 19, 2024
Netzwerk & Routing

WLAN-Antennen: Verstärken Sie Ihr kabelloses Signal für optimale Leistung

AUTOR • Apr 19, 2024
Linux-Server

Notion Download: Holen Sie sich die ultimative All-in-One-Produktivitäts-App

AUTOR • Apr 17, 2024