HOWTO · PowerShell
Überwachen Sie den Port in PowerShell
Dieses Tutorial zeigt, wie Sie Ports in PowerShell abhören.
Dieses Tutorial zeigt, wie Sie einen Port in PowerShell abhören.
PowerShell-Überwachung am Port
Das Abhören eines Ports kann mithilfe von PowerShell mit schrittweisen Befehlen erreicht werden. Wir können einen Listener mit dem Befehl [System.Net.Sockets.TcpListener]Port in PowerShell initialisieren.
Führen Sie die folgenden Schritte aus, um einen Port mit PowerShell abzuhören:
-
Zuerst müssen wir PowerShell als Administrator öffnen. Suchen Sie im Startmenü nach
PowerShell, klicken Sie mit der rechten Maustaste auf das PowerShell-Symbol und klicken Sie dann aufAls Administrator ausführen.Das System kann um Erlaubnis bitten; klicken Sie auf
Ja. -
Erstellen Sie im nächsten Schritt ein PowerShell-Skript. Führen Sie den folgenden Befehl aus:
New-Item 'C:\Users\Sheeraz\DemoTCPServer.ps1' -type fileDer obige Befehl erstellt eine PowerShell-Datei namens
DemoTCPServer.ps1im PfadC:\Users\Sheeraz. Siehe die Ausgabe:Directory: C:\Users\Sheeraz Mode LastWriteTime Length Name ---- ------------- ------ ---- -a---- 11/3/2022 4:02 PM 0 DemoTCPServer.ps1 -
Nachdem die Datei erstellt wurde, besteht der nächste Schritt darin, das Skript zu bearbeiten. Führen Sie den folgenden Befehl aus:
ise C:\Users\Sheeraz\DemoTCPServer.ps1
Der obige Befehl bearbeitet die Datei `DemoTCPServer.ps1` in PowerShell ISE.
-
Wir folgen einem schrittweisen Prozess für das Skript
DemoTCPServer.ps1.-
Initialisieren Sie zunächst die Variablen für den Port, eine Textdatei und das Serverbanner.
-
Erstellen Sie dann einen Endpunkt auf dem angegebenen Port.
-
Erstellen Sie nun mit dem Befehl
New-Object System.Net.Sockets.TcpListener $DemoEndpointeinen TCP-Port mit einem Listener. Dies wird uns helfen, auf einem Port zu lauschen. -
TCP-Port starten.
-
Erlauben Sie dem TCP-Port, den TCP-Client zu akzeptieren.
-
Erstellen Sie einen Stream des TCP-Clients.
-
Erstellen Sie jetzt einen Writer mit dem Stream.
-
Verwenden Sie das Banner, um die Zeilen zu schreiben und den Schreiber zu spülen.
-
Erstellen Sie nun einen Buffer, um den Stream zu lesen und auf einem Port zu lauschen.
-
Verwenden Sie eine Schleife, um jede Zeile des Streams zu lesen.
-
Wir haben das Abhören des Ports durchgeführt und verfügen nun über den Puffer, den Stream und den TCP-Client.
-
Stoppen Sie abschließend den TCP-Port. Implementieren wir diese Schritte im PowerShell-Skript
DemoTCPServer.ps1.
```powershell $DemoPort = 8080 $DemoFile = 'C:\Users\Sheeraz\demo.txt' $DemoBanner = "Connection: OK" $DemoEndpoint = New-Object System.Net.IPEndPoint([IPAddress]::Any,$DemoPort) $DemoTCPPort = New-Object System.Net.Sockets.TcpListener $DemoEndpoint $DemoTCPPort.Start() Write-Output "The TCP Port $DemoPort is Open Now" $AcceptIngTcp = $DemoTCPPort.AcceptTcpClient() $Stream = $AcceptIngTcp.GetStream() $DemoWriter = New-Object System.IO.StreamWriter($Stream) $DemoBanner | % { $DemoWriter.WriteLine($_) $DemoWriter.Flush() } while($true) { $DemoBuffer = New-Object System.IO.StreamReader $Stream $DEMOLINE = $DemoBuffer.ReadLine() if ($DEMOLINE -eq "quit") { break } else { $DEMOLINE $DEMOLINE | Out-File $DemoFile -Append } } $DemoBuffer.Dispose() $Stream.Dispose() $AcceptIngTcp.Dispose() $DemoTCPPort.Stop() Write-Output "The TCP Port $DemoPort is Closed" ```-
Sobald das Skript erstellt ist, speichern Sie es. Jetzt ist es an der Zeit, das Skript auszuführen, um einen TCP-Port mit Listen-on-Port-Operation zu erstellen; Führen Sie den folgenden Befehl aus:
PowerShell.exe -ExecutionPolicy Bypass -File C:\Users\Sheeraz\DemoTCPServer.ps1Der obige Befehl startet nun einen TCP-Port und lauscht auf einem Port. Die Ausgabe für den Befehl ist unten.
The TCP Port 8080 is Open Now -
Um sich mit dem TCP-Port auf einem Remote-Computer zu verbinden, führen Sie den folgenden
telnet-Befehl in cmd aus. Stellen Sie zunächst sicher, dass dertelnet-Dienst aktiviert ist, was unterSystemsteuerung>Programme>Windows-Funktionen ein- oder ausschaltenüberprüft werden kann.Siehe den Befehl:
telnet 10.10.10.10 8080 -
Wir können auch eine
Telnet-Client-Anwendung wiePuTTYverwenden, die von hier heruntergeladen werden kann. Vergessen Sie nicht, bei der VerbindungsartAndereundTelnetauszuwählen.Siehe Screenshot unten.

-
Geben Sie die IP und den Port ein und klicken Sie dann auf
Öffnen.
-
Jetzt können wir dieses Terminal verwenden, um Daten über eine Verbindung zu senden und einen Port abzuhören. Zum Beispiel:
This is PowerShell Listen on Port Test
-
Die oben gesendeten Daten werden in der Datei
'C:\Users\Sheeraz\demo.txt'gespeichert, was bedeutet, dass der Port abgehört wird.
-
Um schließlich die TCP-Verbindung zu schließen, führen Sie den Befehl
quitaus.
-