about_Remote_FAQ

업데이트 날짜: 2014년 5월

적용 대상: Windows PowerShell 2.0, Windows PowerShell 3.0, Windows PowerShell 4.0, Windows PowerShell 5.0

항목

about_Remote_FAQ

간단한 설명

Windows PowerShell®에서 원격 명령을 실행하는 경우에 대한 질문과 답변이 포함되어 있습니다.

자세한 설명

원격으로 작업하는 경우 한 컴퓨터("로컬 컴퓨터"라고 함)의 Windows PowerShell에서 명령을 입력하지만 명령은 다른 컴퓨터("원격 컴퓨터"라고 함)에서 실행됩니다. 원격 작업 환경은 가능한 한 원격 컴퓨터에서 직접 작업하는 것과 유사해야 합니다.

참고: Windows PowerShell 원격을 사용하려면 원격 기능을 사용하도록 원격 컴퓨터를 구성해야 합니다. 자세한 내용은 about_Remote_Requirements를 참조하세요.

두 컴퓨터 모두에 WINDOWS POWERSHELL이 설치되어 있어야 하나요?

예. 원격으로 작업하려면 로컬 컴퓨터와 원격 컴퓨터에 Windows PowerShell, Microsoft .NET Framework 및 WS-Management(Web Services for Management) 프로토콜이 있어야 합니다. 특정 명령을 실행하는 데 필요한 모든 파일과 기타 리소스가 원격 컴퓨터에 있어야 합니다.

Windows PowerShell 3.0을 실행하는 컴퓨터와 Windows PowerShell 2.0을 실행하는 컴퓨터를 서로 원격으로 연결하여 원격 명령을 실행할 수 있습니다. 그러나 세션에서 연결을 끊었다가 다시 연결하는 기능과 같은 일부 기능은 두 컴퓨터 모두 Windows PowerShell 3.0을 실행하는 경우에만 작동합니다.

사용자는 원격 컴퓨터에 연결할 수 있는 권한, Windows PowerShell을 실행할 수 있는 권한 및 원격 컴퓨터의 데이터 저장소(파일, 폴더 등) 및 레지스트리에 액세스할 수 있는 권한이 있어야 합니다.

자세한 내용은 about_Remote_Requirements를 참조하세요.

원격 기능은 어떻게 작동하나요?

원격 명령을 제출하면 명령이 네트워크를 통해 원격 컴퓨터의 Windows PowerShell 엔진으로 전송되고 원격 컴퓨터의 Windows PowerShell 클라이언트에서 실행됩니다. 명령 결과는 로컬 컴퓨터로 다시 전송되고 로컬 컴퓨터의 Windows PowerShell 세션에서 나타납니다.

명령을 전송하고 출력을 받기 위해 Windows PowerShell에서는 WS-Management 프로토콜을 사용합니다. WS-Management 프로토콜에 대한 자세한 내용은 MSDN(Microsoft Developer Network) 라이브러리의 "WS-Management 프로토콜"(http://go.microsoft.com/fwlink/?LinkId=144634)(영문)을 참조하세요.

Windows PowerShell 3.0부터 원격 세션은 원격 컴퓨터에 저장됩니다. 따라서 명령을 방해하거나 상태를 손실하지 않고 세션에서 연결을 끊고 다른 세션이나 다른 컴퓨터에서 다시 연결할 수 있습니다.

WINDOWS POWERSHELL 원격은 안전한가요?

원격 컴퓨터에 연결하는 경우 로컬 컴퓨터의 사용자 이름 및 암호 자격 증명이 사용되거나 원격 컴퓨터에 로그인하기 위해 명령에서 제공하는 자격 증명이 사용됩니다. 이러한 자격 증명과 전송의 나머지 부분은 암호화됩니다.

보호 수준을 높이려면 HTTP 대신 SSL(Secure Sockets Layer)을 사용하여 WinRM(Windows 원격 관리) 요청을 수신하도록 원격 컴퓨터를 구성하면 됩니다. 이렇게 하면 사용자가 연결을 설정할 때 Invoke-Command, New-PSSession 및 Enter-PSSession cmdlet의 UseSSL 매개 변수를 사용할 수 있습니다. 이 옵션은 HTTP 대신 더욱 안전한 HTTPS 채널을 사용합니다.

모든 원격 명령에 WINDOWS POWERSHELL 원격이 필요하나요?

아니요. 일부 cmdlet에는 원격 컴퓨터에서 개체를 가져오는 데 사용할 수 있는 ComputerName 매개 변수가 있습니다.

이러한 cmdlet은 Windows PowerShell 원격을 사용하지 않습니다. 따라서 컴퓨터가 Windows PowerShell 원격을 사용하도록 구성되지 않았거나 Windows PowerShell 원격에 대한 요구 사항을 충족하지 않는 경우에도 Windows PowerShell을 실행하는 모든 컴퓨터에서 이러한 cmdlet을 사용할 수 있습니다.

이러한 cmdlet의 몇 가지 예는 다음과 같습니다.

       Get-Process
       Get-Service
       Get-WinEvent
       Get-EventLog
       Get-WmiObject
       Test-Connection

ComputerName 매개 변수가 있는 cmdlet을 모두 찾으려면 다음을 입력합니다.

        Get-Help * -Parameter ComputerName
        or 
        Get-Command -ParameterName ComputerName

특정 cmdlet의 ComputerName 매개 변수에 Windows PowerShell 원격이 필요한지 확인하려면 매개 변수 설명을 참조하세요. 매개 변수 설명을 표시하려면 다음을 입력합니다.

        Get-Help <cmdlet-name> -Parameter ComputerName

예를 들면 다음과 같습니다.

        Get-Help Get-Process -Parameter Computername

다른 모든 명령의 경우 Invoke-Command cmdlet을 사용합니다.

원격 컴퓨터에서 어떻게 명령을 실행하나요?

원격 컴퓨터에서 명령을 실행하려면 Invoke-Command cmdlet을 사용합니다.

명령을 중괄호( {} )로 묶어 스크립트 블록으로 만듭니다. Invoke-Command의 ScriptBlock 매개 변수를 사용하여 명령을 지정합니다.

Invoke-Command의 ComputerName 매개 변수를 사용하여 원격 컴퓨터를 지정할 수 있습니다. 또는 원격 컴퓨터에 대한 영구 연결(세션)을 만든 다음 Invoke-Command의 Session 매개 변수를 사용하여 세션에서 명령을 실행할 수 있습니다.

예를 들어 다음 명령은 Get-Process 명령을 원격으로 실행합니다.

      Invoke-Command -ComputerName Server01, Server02 -ScriptBlock {Get-Process}

        - OR -

      Invoke-Command -Session $s -ScriptBlock {Get-Process}

원격 명령을 중단하려면 Ctrl+C를 입력합니다. 중단 요청은 원격 명령을 종료하는 원격 컴퓨터로 전달됩니다.

원격 명령에 대한 자세한 내용은 about_Remote 및 원격 기능을 지원하는 cmdlet에 대한 도움말 항목을 참조하세요.

"텔넷"을 사용하는 것처럼 원격 컴퓨터에 연결할 수 있나요?

Enter-PSSession cmdlet을 사용하여 원격 컴퓨터와 대화형 세션을 시작할 수 있습니다.

Windows PowerShell 프롬프트에서 다음을 입력합니다.

        Enter-PSSession <ComputerName>

명령 프롬프트가 변경되어 원격 컴퓨터에 연결되어 있음을 표시합니다.

        <ComputerName>\C:>

이제 사용자가 입력하는 명령은 원격 컴퓨터에서 직접 입력한 것처럼 원격 컴퓨터에서 실행됩니다.

대화형 세션을 종료하려면 다음을 입력합니다.

        Exit-PSSession

대화형 세션은 WS-Management 프로토콜을 사용하는 영구 세션입니다. 텔넷을 사용하는 것과 같지는 않지만 비슷한 환경을 제공합니다.

자세한 내용은 Enter-PSSession을 참조하세요.

영구 연결을 만들 수 있나요?

예. 원격 컴퓨터의 이름, NetBIOS 이름 또는 IP 주소를 지정하여 원격 명령을 실행할 수 있습니다. 또는 원격 컴퓨터에 연결된 Windows PowerShell 세션(PSSession)을 지정하여 원격 명령을 실행할 수 있습니다.

Invoke-Command 또는 Enter-PSSession의 ComputerName 매개 변수를 사용하는 경우 Windows PowerShell은 임시 연결을 설정합니다. Windows PowerShell은 이 연결을 사용하여 현재 명령만 실행한 다음 연결을 닫습니다. 이는 단일 명령이나 관련되지 않은 여러 명령을 실행하는 데 매우 효율적인 방법이며 이는 많은 원격 컴퓨터에서는 더욱 효율적입니다.

New-PSSession cmdlet을 사용하여 PSSession을 만들면 Windows PowerShell은 PSSession에 대한 영구 연결을 설정합니다. 그러면 데이터를 공유하는 명령을 비롯한 여러 명령을 PSSession에서 실행할 수 있습니다. 여기에 섹션 본문을 삽입합니다.

일반적으로 데이터를 공유하는 일련의 관련 명령을 실행하기 위해 PSSession을 만듭니다. 하지만 대부분의 명령을 실행하는 데는 ComputerName 매개 변수로 만들어진 임시 연결이면 충분합니다.

세션에 대한 자세한 내용은 about_PSSessions를 참조하세요.

둘 이상의 컴퓨터에서 동시에 명령을 실행할 수 있나요?

예. Invoke-Command cmdlet의 ComputerName 매개 변수는 여러 컴퓨터 이름을 허용하고 Session 매개 변수는 여러 PSSession을 허용합니다.

Invoke-Command 명령을 실행하는 경우 Windows PowerShell은 지정된 모든 컴퓨터나 지정된 모든 PSSession에서 명령을 실행합니다.

Windows PowerShell은 수백 개의 동시 원격 연결을 관리할 수 있습니다. 그러나 보낼 수 있는 원격 명령의 수는 컴퓨터의 리소스와 여러 네트워크 연결을 설정하고 유지 관리할 수 있는 기능에 의해 제한될 수 있습니다.

자세한 내용은 Invoke-Command 도움말 항목의 예제를 참조하세요.

내 프로필은 어디에 있나요?

Windows PowerShell 프로필은 원격 세션에서 자동으로 실행되지 않으므로 프로필에서 추가하는 명령은 세션에 표시되지 않습니다. 또한 $profile 자동 변수는 원격 세션에서 채워지지 않습니다.

세션에서 프로필을 실행하려면 Invoke-Command cmdlet을 사용합니다.

예를 들어 다음 명령은 $s의 세션에서 로컬 컴퓨터의 CurrentUserCurrentHost 프로필을 실행합니다.

        Invoke-Command -Session $s -FilePath $profile

다음 명령은 $s의 세션에서 원격 컴퓨터의 CurrentUserCurrentHost 프로필을 실행합니다. $profile 변수는 채워지지 않으므로 명령에서 명시적인 프로필 경로를 사용합니다.

        Invoke-Command -Session $s {. "$home\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1"}

이 명령을 실행한 후에는 프로필에서 세션에 추가하는 명령을 $s에서 사용할 수 있습니다.

세션 구성에서 시작 스크립트를 사용하여 해당 세션 구성을 사용하는 모든 원격 세션에서 프로필을 실행할 수도 있습니다.

Windows PowerShell 프로필에 대한 자세한 내용은 about_Profiles를 참조하세요. 세션 구성에 대한 자세한 내용은 Register-PSSessionConfiguration을 참조하세요.

원격 명령에서 스로틀은 어떻게 작동하나요?

로컬 컴퓨터에서 리소스를 쉽게 관리할 수 있도록 하기 위해 Windows PowerShell에는 각 명령에 대해 설정되는 동시 원격 연결의 수를 제한하는 데 사용할 수 있는 명령별 스로틀 기능이 포함되어 있습니다.

기본값은 32개의 동시 연결이지만 cmdlet의 ThrottleLimit 매개 변수를 사용하여 특정 명령에 대한 사용자 지정 스로틀 한도를 설정할 수 있습니다.

스로틀 기능을 사용하는 경우 스로틀 기능은 전체 세션이나 컴퓨터가 아닌 각 명령에 적용됩니다. 여러 세션이나 PSSession에서 명령을 동시에 실행하는 경우의 동시 연결 수는 모든 세션의 동시 연결 수를 합한 값입니다.

ThrottleLimit 매개 변수가 있는 cmdlet을 찾으려면 다음을 입력합니다.

      Get-Help * -Parameter ThrottleLimit
      -or-
      Get-Command -ParameterName ThrottleLimit

원격 명령의 출력은 로컬 출력과 다른가요?

Windows PowerShell을 로컬에서 사용하는 경우 "라이브" .NET Framework 개체를 보내고 받습니다. "라이브" 개체는 실제 프로그램이나 시스템 구성 요소와 연결된 개체입니다. 메서드를 호출하거나 라이브 개체의 속성을 변경하는 경우 변경 내용은 실제 프로그램이나 구성 요소에 영향을 줍니다. 또한 프로그램이나 구성 요소의 속성이 변경되면 이를 나타내는 개체의 속성도 변경됩니다.

그러나 대부분의 라이브 개체는 네트워크를 통해 전송될 수 없기 때문에 Windows PowerShell은 원격 명령에서 전송되는 대부분의 개체를 "직렬화"합니다. 즉, 전송을 위해 각 개체를 일련의 XML(CLiXML[Constraint Language in XML]) 데이터 요소로 변환합니다.

Windows PowerShell은 직렬화된 개체를 받으면 XML을 역직렬화된 개체 형식으로 변환합니다. 역직렬화된 개체는 이전의 프로그램 또는 구성 요소 속성에 대한 정확한 레코드이지만 더 이상 "라이브" 개체가 아닙니다. 즉, 더 이상 구성 요소와 직접 연결되지 않습니다. 또한 메서드가 더 이상 유효하지 않기 때문에 제거됩니다.

일반적으로 라이브 개체를 사용할 때처럼 역직렬화된 개체를 사용할 수 있지만 이러한 개체의 한계를 알고 있어야 합니다. 또한 Invoke-Command cmdlet에서 반환하는 개체에는 명령의 출처를 확인하는 데 도움이 되는 추가 속성이 있습니다.

DirectoryInfo 개체, GUID 등의 일부 개체 형식은 수신될 때 라이브 개체로 다시 변환됩니다. 이러한 개체에는 특수한 처리나 형식 지정이 필요하지 않습니다.

원격 출력의 해석과 형식 지정에 대한 자세한 내용은 about_Remote_Output을 참조하세요.

백그라운드 작업을 원격으로 실행할 수 있나요?

예. Windows PowerShell 백그라운드 작업은 세션과 상호 작용하지 않고 비동기적으로 실행되는 Windows PowerShell 명령입니다. 백그라운드 작업을 시작하면 명령 프롬프트가 즉시 반환되며 작업이 연장된 기간 동안 실행되는 경우에도 해당 작업이 실행되는 동안 세션에서 계속 작업할 수 있습니다.

백그라운드 작업은 임시 세션에서 항상 비동기적으로 실행되기 때문에 다른 명령이 실행되는 동안에도 백그라운드 작업을 시작할 수 있습니다. 여기에 섹션 본문을 삽입합니다.

백그라운드 작업은 로컬 또는 원격 컴퓨터에서 실행할 수 있습니다. 기본적으로 백그라운드 작업은 로컬 컴퓨터에서 실행됩니다. 그러나 Invoke-Command cmdlet의 AsJob 매개 변수를 사용하여 원격 명령을 백그라운드 작업으로 실행할 수 있습니다. 또한 Invoke-Command를 사용하여 Start-Job 명령을 원격으로 실행할 수 있습니다.

Windows PowerShell의 백그라운드 작업에 대한 자세한 내용은 about_Jobs 및 about_Remote_Jobs를 참조하세요.

원격 컴퓨터에서 WINDOWS 프로그램을 실행할 수 있나요?

Windows PowerShell 원격 명령을 사용하여 원격 컴퓨터에서 Windows 기반 프로그램을 실행할 수 있습니다. 예를 들어 원격 컴퓨터에서 Shutdown.exe 또는 Ipconfig를 실행할 수 있습니다.

그러나 Windows PowerShell 명령을 사용하여 원격 컴퓨터에서 프로그램의 사용자 인터페이스를 열 수 없습니다.

원격 컴퓨터에서 Windows 프로그램을 시작하는 경우 프로그램이 완료되거나 Ctrl+C를 눌러 명령을 중단할 때까지 명령이 완료되지 않으며 Windows PowerShell 명령 프롬프트가 반환되지 않습니다. 예를 들어 원격 컴퓨터에서 IpConfig 프로그램을 실행하는 경우 IpConfig가 완료될 때까지 명령 프롬프트가 반환되지 않습니다.

원격 명령을 사용하여 사용자 인터페이스가 있는 프로그램을 시작하는 경우 프로그램 프로세스는 시작되지만 사용자 인터페이스는 나타나지 않습니다. 프로그램 프로세스를 중지하거나 Ctrl+C를 눌러 명령을 중단하고 프로세스를 중지할 때까지 Windows PowerShell 명령이 완료되지 않으며 명령 프롬프트가 반환되지 않습니다.

예를 들어 Windows PowerShell 명령을 사용하여 원격 컴퓨터에서 메모장을 실행하는 경우 메모장 프로세스는 원격 컴퓨터에서 시작되지만 메모장 사용자 인터페이스는 나타나지 않습니다. 명령을 중단하고 명령 프롬프트를 복원하려면 Ctrl+C를 누릅니다.

사용자가 내 컴퓨터에서 원격으로 실행할 수 있는 명령을 제한할 수 있나요?

예. 모든 원격 세션은 원격 컴퓨터에서 세션 구성 중 하나를 사용해야 합니다. 컴퓨터에서 세션 구성과 해당 세션 구성에 대한 사용 권한을 관리하여 컴퓨터에서 원격으로 명령을 실행할 수 있는 사용자와 사용자가 실행할 수 있는 명령을 결정할 수 있습니다.

세션 구성은 세션에 대한 환경을 구성합니다. 새 구성 클래스를 구현하는 어셈블리를 사용하거나 세션에서 실행되는 스크립트를 사용하여 구성을 정의할 수 있습니다. 이러한 구성은 세션에서 사용할 수 있는 명령을 결정할 수 있습니다. 또한 구성에는 세션이 단일 개체나 명령에서 원격으로 받을 수 있는 데이터의 양을 제한하는 설정과 같이 컴퓨터를 보호하는 설정이 포함될 수 있습니다. 구성을 사용하는 데 필요한 사용 권한을 결정하는 보안 설명자도 지정할 수 있습니다.

Enable-PSRemoting cmdlet은 컴퓨터에서 기본 세션 구성인 Microsoft.PowerShell, Microsoft.PowerShell.Workflow 및 Microsoft.PowerShell32(64비트 운영 체제만 해당)를 만듭니다. Enable-PSRemoting은 이러한 구성의 보안 설명자를 설정하여 컴퓨터의 Administrators 그룹 구성원만 이러한 구성을 사용할 수 있도록 허용합니다.

세션 구성 cmdlet을 사용하여 기본 세션 구성을 편집하고, 새 세션 구성을 만들고, 모든 세션 구성의 보안 설명자를 변경할 수 있습니다.

Windows PowerShell 3.0부터 New-SessionConfigurationFile cmdlet을 사용하면 텍스트 파일을 사용하여 사용자 지정 세션 구성을 만들 수 있습니다. 이 파일에는 언어 모드를 설정하고 세션 구성을 사용하는 세션에서 사용할 수 있는 모듈 및 cmdlet을 지정하는 옵션이 포함되어 있습니다.

사용자가 Invoke-Command, New-PSSession 또는 Enter-PSSession cmdlet을 사용하는 경우 ConfigurationName 매개 변수를 사용하여 세션에 사용되는 세션 구성을 나타낼 수 있습니다. 또한 세션에서 $PSSessionConfigurationName 기본 설정 변수의 값을 변경하여 세션에서 사용하는 기본 구성을 변경할 수 있습니다.

세션 구성에 대한 자세한 내용은 세션 구성 cmdlet에 대한 도움말을 참조하세요. 세션 구성 cmdlet을 찾으려면 다음을 입력합니다.

        Get-Command *PSSessionConfiguration

팬인 및 팬아웃 구성이란 무엇인가요? 항목

여러 컴퓨터가 포함된 가장 일반적인 Windows PowerShell 원격 시나리오는 한 로컬 컴퓨터(관리자의 컴퓨터)를 사용하여 많은 원격 컴퓨터에서 Windows PowerShell 명령을 실행하는 일대다 구성입니다. 이를 "팬아웃" 시나리오라고 합니다.

그러나 일부 기업에서는 많은 클라이언트 컴퓨터가 Windows PowerShell을 실행하는 단일 원격 컴퓨터(예: 파일 서버 또는 키오스크)에 연결하는 다대일 구성을 사용합니다. 이를 "팬인" 구성이라고 합니다.

Windows PowerShell 원격은 팬아웃 구성과 팬인 구성을 모두 지원합니다.

팬아웃 구성의 경우 Windows PowerShell은 WS-Management(Web Services for Management) 프로토콜과 WS-Management의 Microsoft 구현을 지원하는 WinRM 서비스를 사용합니다. 로컬 컴퓨터가 원격 컴퓨터에 연결되면 WS-Management는 연결을 설정하고 Windows PowerShell의 플러그 인을 사용하여 원격 컴퓨터에서 Windows PowerShell 호스트 프로세스(Wsmprovhost.exe)를 시작합니다. 사용자는 대체 포트, 대체 세션 구성 및 다른 기능을 지정하여 원격 연결을 사용자 지정할 수 있습니다.

"팬인" 구성을 지원하기 위해 Windows PowerShell은 IIS(인터넷 정보 서비스)를 사용하여 WS-Management를 호스트하고, Windows PowerShell 플러그 인을 로드하며, Windows PowerShell을 시작합니다. 이 시나리오에서는 각 Windows PowerShell 세션을 별도의 프로세스에서 시작하는 대신 모든 Windows PowerShell 세션이 동일한 호스트 프로세스에서 실행됩니다.

IIS 호스팅 및 팬인 원격 관리는 Windows XP 또는 Windows Server 2003에서 지원되지 않습니다.

팬인 구성에서 사용자는 전송, 컴퓨터 이름, 포트 및 응용 프로그램 이름을 비롯한 HTTP 끝점과 연결 URI를 지정할 수 있습니다. IIS는 지정된 응용 프로그램 이름이 포함된 모든 요청을 응용 프로그램에 전달합니다. 기본값은 Windows PowerShell을 호스트할 수 있는 WS-Management입니다.

인증 메커니즘을 지정하고 HTTP 및 HTTPS 끝점에서의 리디렉션을 금지하거나 허용할 수도 있습니다.

도메인이 아니라 단일 컴퓨터에서 원격 기능을 테스트할 수 있나요?

예. 로컬 컴퓨터가 도메인에 없는 경우에도 Windows PowerShell 원격을 사용할 수 있습니다. 원격 기능을 사용하여 세션에 연결하고 동일한 컴퓨터에서 세션을 만들 수 있습니다. 이 기능은 원격 컴퓨터에 연결하는 경우와 동일하게 작동합니다.

작업 그룹의 컴퓨터에서 원격 명령을 실행하려면 컴퓨터에서 다음 Windows 설정을 변경합니다.

주의: 이러한 설정은 시스템의 모든 사용자에게 영향을 미치고 시스템을 악의적인 공격에 더욱 취약하게 만들 수 있으므로 이러한 변경을 할 때는 주의해야 합니다.

-- Windows XP SP2:

로컬 보안 설정(Secpol.msc)을 사용하여 보안 설정\로컬 정책\보안 옵션에서 "네트워크 액세스: 로컬 계정에 대한 공유 및 보안 모델" 정책의 설정을 "일반"으로 변경할 수 있습니다.

-- Windows Vista, Windows 7, Windows 8:

다음 레지스트리 항목을 만들고 해당 값을 1로 설정합니다. LocalAccountTokenFilterPolicy in HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System

다음 Windows PowerShell 명령을 사용하여 이 항목을 추가할 수 있습니다.

        New-ItemProperty `
        –Path HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System `
        –Name LocalAccountTokenFilterPolicy –propertyType DWord –Value 1

-- Windows Server 2003, Windows Server 2008, Windows Server 2012, Windows Server 2012 R2:

"네트워크 액세스: 로컬 계정에 대한 공유 및 보안 모델" 정책의 기본 설정이 "일반"이기 때문에 변경할 필요가 없습니다. 설정이 변경된 경우 설정을 확인합니다.

다른 도메인의 컴퓨터에서 원격 명령을 실행할 수 있나요?

예. 일반적으로 명령은 오류 없이 실행되지만 Invoke-Command, New-PSSession 또는 Enter-PSSession cmdlet의 Credential 매개 변수를 사용하여 원격 컴퓨터의 Administrators 그룹 구성원에 대한 자격 증명을 제공해야 할 수도 있습니다. 현재 사용자가 로컬 및 원격 컴퓨터에서 Administrators 그룹의 구성원인 경우에도 자격 증명을 제공해야 하는 경우가 있습니다.

그러나 로컬 컴퓨터가 신뢰하는 도메인에 있지 않은 원격 컴퓨터는 이러한 사용자의 자격 증명을 인증하지 못할 수 있습니다.

인증을 사용하도록 설정하려면 다음 명령을 사용하여 WinRM에서 원격 컴퓨터를 로컬 컴퓨터의 신뢰할 수 있는 호스트 목록에 추가합니다. Windows PowerShell 프롬프트에서 명령을 입력합니다.

        Set-Item WSMan:\localhost\Client\TrustedHosts -Value <Remote-computer-name>

예를 들어 Server01 컴퓨터를 로컬 컴퓨터에서 신뢰할 수 있는 호스트 목록에 추가하려면 Windows PowerShell 프롬프트에서 다음 명령을 입력합니다.

        Set-Item WSMan:\localhost\Client\TrustedHosts -Value Server01

참고 항목

about_Remote

about_Profiles

about_PSSessions

about_Remote_Jobs

about_Remote_Variables

Invoke-Command

New-PSSession

커뮤니티 추가 항목

추가
표시: