Die Netzwerk- und Serververwaltung ist einer der Schlüsselbereiche, in denen Linux eigentlich jedem anderen Betriebssystem vorgezogen wird. Daher sind die meisten Rechenzentrumsadministratoren mit der Linux-Befehlszeile vertraut.
Es kann Szenarien geben, in denen bestimmte Ports auf einem Server, die geschlossen werden mussten, offen sind und unerwarteten Datenverkehr auf dem Server verursachen.
Heute werden wir lernen, wie man einen offenen Port in Linux findet und schließt.
Offene Ports in Linux finden
Um die offenen Ports zu finden, verwenden wir den ss-Befehl , das in den meisten gängigen Linux-Distributionen vorinstalliert ist und jetzt den Ersatz für den früher sehr beliebten netstat-Befehl darstellt.
Lassen Sie uns den ss-Befehl ausführen mit der folgenden Syntax, um alle lauschenden TCP zu erhalten Steckdosen:
$ ss -tl
Hier das 't'
steht für TCP und das 'l'
steht für Listening Sockets.
Ähnlich erhalten alle hörenden UDP Ports, führe aus:
$ ss -ul
Beobachten Sie die Ausgabe. Im „Zustand ‘-Spalte für UDP , alle Ports haben den Status UNCONN , d.h. unverbunden. Da wir nur die aktiv lauschenden Ports benötigen, leiten wir die Ausgabe weiter und filtern sie mit dem grep-Befehl.
$ ss -ul | grep LISTEN
Wir können auch das TCP kombinieren und UDP Ausgabe zusammen.
$ ss -tul | grep LISTEN
Eine weitere Ergänzung, die hier vorgenommen werden kann, ist:das Argument '-n'
. In der obigen Ausgabe löst der Befehl den Namen des Dienstes auf, der einem Port zugeordnet ist:z. HTTP , IPP usw.
Mit dem Argument '-n'
es zeigt nur die Portnummer, die zuhört.
$ ss -tuln | grep LISTEN
Offene Ports unter Linux schließen
Der manuelle Weg, einen offenen Port in Linux zu schließen, ist ziemlich mühsam und programmatisch. Daher verwenden wir den einfacheren Ansatz:die Prozesse zu schließen, die auf dem Port lauschen.
Wir müssen ss anrufen mit einem anderen Argument, '-p'
um den Prozess aufzulisten, der jeden Port verwendet (führen Sie den Befehl als sudo-Benutzer aus).
$ sudo ss -tulnp | grep LISTEN
Wie oben gezeigt, listet die letzte Spalte die "Benutzer" auf ’, also die Prozesse, die die Portnummer verwenden. Jetzt können Sie den Port schließen, indem Sie den Prozess beenden, der ihn verwendet. Zum Beispiel, um Port 80 zu schließen , müssen wir den Prozess ‚Apache2 stoppen ’.
$ sudo service apache2 stop OR $ sudo systemctl stop apache2
Somit haben wir Port 80 erfolgreich geschlossen und kein Prozess lauscht mehr darauf.
Schlussfolgerung
In diesem Artikel haben wir gelernt, wie man einen offenen Port in Linux findet und schließt. Viele Häfen wie 22 (SSH ), 21 (Telnet ) usw. sollten die meiste Zeit geschlossen gehalten werden, da dies die Ports sind, von denen Cyberangriffe ausgehen können.
Andere Ports sollten ebenfalls geschlossen werden, wenn der Prozess ihrer Verwendung nicht mehr erforderlich ist. Danke fürs Lesen und teilen Sie uns Ihre Gedanken in den Kommentaren unten mit!