Ratkaistu: Powershell katso portit käytössä

Viimeisin päivitys: 09/11/2023

Toki, aloitetaan.

Powershell, Microsoftin tehokas tehtäväautomaatio- ja kokoonpanonhallintakehys helpottaa merkittävästi järjestelmänvalvojan työtä. Powershell-komentosarjakielen ja sen cmdlet-komentojen myötä käyttäjille tarjotaan runsaasti pääsyä tietovarastoon. Yksi tällainen PowerShellin käyttötapa on järjestelmän käytössä olevien porttien tarkistaminen. Portit ovat koneen tietoliikenteen päätepisteitä, ja jokaisella portilla on määritetty porttinumero.

# PowerShell Script to list all the TCP/IP ports which are being used on your local system

Set-ExecutionPolicy RemoteSigned -Scope CurrentUser 

Function Test-PortInUse {   
  Param(
    [Parameter(Mandatory = $true)]
    [int]$StartPort,
    [Parameter(Mandatory = $true)]
    [int]$EndPort
  )
  ForEach ($i in ($StartPort..$EndPort)){
    $connection = Test-NetConnection -ComputerName LocalHost -Port $i
    if ($connection.TcpTestSucceeded){
       $i
    }
  }
}

# This will test all ports between 20 and 25
Test-PortInUse 20 25

Komentosarja toimii funktiossa Test-PortInUse, joka hyväksyy kaksi parametria, aloitusportin numeron ja loppuportin numeron. Toiminto silmukoi ($StartPort..$EndPort) annettujen porttialueiden välillä, ja jokaiselle porttinumerolle se suorittaa sitten Test-NetConnection-cmdlet-komentosarjan paikallispalvelimella kyseiselle portille.

Set-ExecutionPolicy RemoteSigned -Scope CurrentUser – Tämä komento tarvitaan PowerShell-komentosarjojen suorittamiseen, ja se muuttaa PowerShell-suorituskäytännön käyttäjän asetusta.

Test-NetConnection-cmdlet näyttää yhteyden diagnostiikkatiedot. Parametreiksi ottaminen LocalHost – joka viittaa paikalliseen koneeseen ja porttiin – joka ilmaisee testattavan portin; tarkistaa, voidaanko yhteys muodostaa kyseiseen porttiin.

Powershell-komentosarja

Powershell-komentosarja on Microsoftin Windows-ympäristöönsä kehittämä monipuolinen alusta. Tämä dynaaminen kieli tarjoaa joukon apuohjelmia heti käyttövalmiina. Yksi tällainen apuohjelma, jota käytämme, on Test-NetConnection-cmdlet. Tämä apuohjelma tarjoaa yksinkertaisen tavan suorittaa erilaisia ​​verkkotestejä, jotka voidaan ohjelmoida ja automatisoida. Se on täydellinen suuria verkkoja hallitseville järjestelmänvalvojille.

Satamahallinnan merkitys

Sataman hallinta on olennainen IT-järjestelmänvalvojien, DevOps- ja tietoturva-ammattilaisten tehtävä, koska avoimet ja haavoittuvat portit voivat olla mahdollisia riskialueita. Porttien tarkastelu, valvonta, testaus ja sulkeminen pyynnöstä tulee tärkeä, ellei välttämätön taito. PowerShell-komentosarjoilla voi olla keskeinen rooli näiden tehtävien automatisoinnissa, ja PowerShellin cmdletit virtaviivaistavat prosessia.

Kuinka Test-NetConnection-cmdlet toimii

Test-NetConnection on cmdlet, joka tekee syvän komentosarjoittavan cmdlet-rajapinnan lukuisiin käyttöjärjestelmien paljastamiin verkkodiagnostiikkarajapintoihin. Cmdlet on erityisen hyvä, kun on testattava tiettyä palvelua palvelimessa tai lähteen ja kohteen välisen yhteyden verkkoviivettä, olipa kyseessä sitten TCP tai ICMP.

Tämän cmdletin tiedot ovat erityisen hyödyllisiä, kun yritetään tunnistaa avoimia portteja ja tarkastella, millaisia ​​yhteyksiä koneella on verkkoon.

Yhteenvetona voidaan todeta, että Powershell ja sen erilaiset cmdletit, kuten Test-NetConnection, tarjoavat erilaisia ​​ominaisuuksia, jotka auttavat suuresti verkon ja porttien hallinnassa, mikä mahdollistaa tällaisten tehtävien tehokkaan automatisoinnin ja hallinnan.

Related viestiä: