해결됨: powershell 사용 중인 포트 참조

마지막 업데이트 : 09/11/2023

물론이죠. 시작해 보겠습니다.

Microsoft의 강력한 작업 자동화 및 구성 관리 프레임워크인 Powershell은 시스템 관리자의 작업을 크게 단순화합니다. cmdlet과 함께 Powershell 스크립팅 언어의 출현으로 사용자는 데이터 저장소에 대한 풍부한 액세스를 제공받습니다. PowerShell을 사용하는 방법 중 하나는 시스템에서 사용 중인 포트를 확인하는 것입니다. 포트는 시스템의 통신 끝점이며 각 포트에는 지정된 포트 번호가 있습니다.

# 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

스크립트는 시작 포트 번호와 끝 포트 번호라는 두 개의 매개 변수를 허용하는 Test-PortInUse 함수 내에서 작동합니다. 함수는 제공된 포트 범위 사이에서 루프($StartPort..$EndPort)를 수행한 다음 각 포트 번호에 대해 해당 포트의 localhost에서 Test-NetConnection cmdlet을 실행합니다.

Set-ExecutionPolicy RemoteSigned -Scope CurrentUser – 이 명령은 PowerShell 스크립트를 실행하는 데 필요하며 PowerShell 실행 정책에 대한 사용자 기본 설정을 변경합니다.

Test-NetConnection cmdlet은 연결에 대한 진단 정보를 표시합니다. 로컬 시스템을 참조하는 LocalHost와 테스트할 포트를 나타내는 Port를 매개변수로 사용합니다. 해당 포트에 연결할 수 있는지 확인합니다.

파워셸 스크립팅

파워셸 스크립팅 Windows 환경을 위해 Microsoft가 개발한 다목적 플랫폼입니다. 이 동적 언어는 기본적으로 다양한 유틸리티를 제공합니다. 우리가 사용하는 유틸리티 중 하나는 Test-NetConnection cmdlet입니다. 이 유틸리티는 스크립트로 작성하고 자동화할 수 있는 다양한 네트워크 테스트를 수행하는 간단한 방법을 제공하므로 대규모 네트워크를 관리하는 관리자에게 적합합니다.

항만관리의 중요성

항만관리는 필수 개방적이고 취약한 포트는 잠재적인 위험 영역이 될 수 있으므로 IT 관리자, DevOps 및 보안 전문가의 작업입니다. 필요에 따라 포트를 보고, 모니터링하고, 테스트하고, 닫을 수 있는 능력은 필수적인 것은 아니지만 중요한 기술이 됩니다. PowerShell 스크립트는 이러한 작업을 자동화하는 데 중추적인 역할을 할 수 있으며 PowerShell의 cmdlet은 프로세스를 간소화합니다.

Test-NetConnection cmdlet 작동 방식

Test-NetConnection은 운영 체제에 의해 노출되는 수많은 네트워크 진단 인터페이스에 심층적인 스크립트 가능 cmdlet 인터페이스를 렌더링하는 cmdlet입니다. cmdlet은 서버 내의 특정 서비스를 테스트하거나 TCP 또는 ICMP 등 원본과 대상 간 연결의 네트워킹 대기 시간을 테스트할 때 특히 유용합니다.

이 cmdlet에서 제공하는 정보는 열린 포트를 식별하고 컴퓨터와 네트워크의 연결 유형을 보려고 할 때 특히 유용합니다.

결론적으로 Powershell은 Test-NetConnection과 같은 다양한 cmdlet과 함께 네트워크, 포트 관리에 큰 도움이 되는 다양한 기능을 제공하여 이러한 작업을 효율적이고 효과적으로 자동화하고 관리할 수 있습니다.

관련 게시물: