Windows 원격 관리를 위한 설치 및 구성
WinRM(Windows 원격 관리) 스크립트를 실행하고 Winrm 명령줄 도구가 데이터 작업을 수행하려면 WinRM을 설치하고 구성해야 합니다.
또한 다음 요소는 WinRM 구성에 따라 달라집니다.
- Windows 원격 셸 명령줄 도구인 Winrs.
- 이벤트 전달.
- Windows PowerShell 2.0 원격.
WinRM의 설치 위치
WinRM은 현재 지원되는 모든 버전의 Windows 운영 체제와 함께 자동으로 설치됩니다.
WinRM 및 IPMI 구성
다음 WinRM 및 IPMI(Intelligent Platform Management Interface) WMI 공급자 구성 요소가 운영 체제와 함께 설치됩니다.
- WinRM 서비스는 Windows Server 2008 이상에서 자동으로 시작됩니다. 이전 버전의 Windows(클라이언트 또는 서버)에서는 서비스를 수동으로 시작해야 합니다.
- 기본적으로 WinRM 수신기 는 구성되지 않습니다. WinRM 서비스가 실행 중인 경우에도 데이터를 요청하는 WS-Management 프로토콜 메시지를 받거나 보낼 수 없습니다.
- ICF(인터넷 연결 방화벽)는 포트에 대한 액세스를 차단합니다.
winrm
명령을 사용하여 명령 프롬프트에서 다음 명령을 입력하여 수신기 및 주소를 찾습니다.
winrm enumerate winrm/config/listener
구성 설정의 상태를 확인하려면 다음 명령을 입력합니다.
winrm get winrm/config
빠른 기본 구성
로컬 컴퓨터에서 WS-Management 프로토콜을 사용하도록 설정하고 명령을 winrm quickconfig
사용하여 원격 관리에 대한 기본 구성을 설정합니다.
명령(축약 winrm qc
가능)은 winrm quickconfig
다음 작업을 수행합니다.
- WinRM 서비스를 시작하고 서비스 시작 유형을 자동 시작으로 설정합니다.
- 모든 IP 주소에서 HTTP 또는 HTTPS를 사용하여 WS 관리 프로토콜 메시지를 보내고 받는 포트에 대한 수신기를 구성합니다.
- WinRM 서비스에 대한 ICF 예외를 정의하고 HTTP 및 HTTPS에 대한 포트를 엽니다.
참고 항목
이 명령은 winrm quickconfig
현재 사용자 프로필에 대해서만 방화벽 예외를 만듭니다. 어떤 이유로든 방화벽 프로필이 변경된 경우 새 프로필에 대해 방화벽 예외를 사용하도록 설정하려면 실행 winrm quickconfig
합니다(그렇지 않으면 예외를 사용하지 않을 수 있습니다).
구성 사용자 지정에 대한 정보를 검색하려면 명령 프롬프트에 다음 명령을 입력합니다.
winrm help config
기본 설정으로 WinRM을 구성하려면
로컬 컴퓨터 관리자 계정으로 실행되는 명령 프롬프트에서 다음 명령을 실행합니다.
winrm quickconfig
로컬 컴퓨터 관리자로 실행하지 않는 경우 시작 메뉴에서 관리자 권한으로 실행을 선택하거나 명령 프롬프트에서 명령을 사용합니다
Runas
.도구에 이러한 변경 내용이 표시되면 [y/n]?을 입력합니다.
구성에 성공하면 다음 출력이 표시됩니다.
WinRM has been updated for remote management. WinRM service type changed to delayed auto start. WinRM service started. Created a WinRM listener on https://* to accept WS-Man requests to any IP on this machine.
WinRM의 클라이언트 및 서버 구성 요소에 대한 기본 설정을 유지하거나 사용자 지정합니다. 예를 들어 클라이언트 구성
TrustedHosts
목록에 특정 원격 컴퓨터를 추가해야 할 수 있습니다.상호 인증을 설정할 수 없는 경우 신뢰할 수 있는 호스트 목록을 설정합니다. Kerberos는 상호 인증을 허용하지만 작업 그룹에서는 사용할 수 없습니다. 도메인만 해당합니다. 작업 그룹에 대해 신뢰할 수 있는 호스트를 설정할 때 가장 좋은 방법은 목록을 가능한 한 제한하는 것입니다.
다음 명령을 입력하여 HTTPS 수신기를 만듭니다.
winrm quickconfig -transport:https
참고 항목
HTTPS 전송이 작동하도록 포트 5986을 엽니다.
수신기 및 WS-Management 프로토콜 기본 설정
수신기 구성을 얻으려면 명령 프롬프트를 입력 winrm enumerate winrm/config/listener
합니다. 수신기는 전송(HTTP 또는 HTTPS) 및 IPv4 또는 IPv6 주소로 정의됩니다.
이 winrm quickconfig
명령은 수신기에 대해 다음과 같은 기본 설정을 만듭니다. 둘 이상의 수신기를 만들 수 있습니다. 자세한 내용은 명령 프롬프트를 입력 winrm help config
합니다.
주소
이 수신기를 만들 주소를 지정합니다.
전송
WS-Management 프로토콜 요청 및 응답을 보내고 받는 데 사용할 전송을 지정합니다. 값은 HTTP 또는 HTTPS여야 합니다. 기본값은 HTTP입니다.
포트
이 수신기가 만들어지는 TCP 포트를 지정합니다.
WinRM 2.0: 기본 HTTP 포트는 5985입니다.
Hostname
WinRM 서비스가 실행 중인 컴퓨터의 호스트 이름을 지정합니다. 값은 정규화된 도메인 이름, IPv4 또는 IPv6 리터럴 문자열 또는 와일드카드 문자여야 합니다.
사용
수신기를 사용하도록 설정할지 또는 사용하지 않도록 설정할지를 지정합니다. 기본값은 True입니다.
URLPrefix
HTTP 또는 HTTPS 요청을 수락할 URL 접두사를 지정합니다. 이 문자열에는 a-z, A-Z, 9-0, 밑줄(_) 및 슬래시(/) 문자만 포함됩니다. 문자열은 슬래시로 시작하거나 슬래시(/)로 끝나서는 안 됩니다. 예를 들어 컴퓨터 이름이 SampleMachine인 경우 WinRM 클라이언트는 대상 주소에 지정 https://SampleMachine/<URLPrefix>
합니다. 기본 URL 접두사는 .입니다 wsman
.
CertificateThumbprint
서비스 인증서의 지문을 지정합니다. 이 값은 인증서의 지문 필드에 있는 두 자리 16진수 값의 문자열을 나타냅니다. 이 문자열에는 인증서의 SHA-1 해시가 포함됩니다. 인증서는 클라이언트 인증서 기반 인증에 사용됩니다. 인증서는 로컬 사용자 계정에만 매핑할 수 있습니다. 도메인 계정에서 작동하지 않습니다.
ListeningOn
수신기에서 사용하는 IPv4 및 IPv6 주소를 지정합니다. 예들 들어 111.0.0.1, 111.222.333.444, ::1, 1000:2000:2c:3:c19:9ec8:a715:5e24, 3ffe:8311:ffff:f70f:0:5efe:111.222.333.444, fe80::5efe:111.222.333.444%8, fe80::c19:9ec8:a715:5e24%6
입니다.
프로토콜 기본 설정
MaxEnvelopeSizekb 또는 SoapTraceEnabled와 같은 대부분의 구성 설정은 WinRM 클라이언트 및 서버 구성 요소가 WS-Management 프로토콜과 상호 작용하는 방법을 결정합니다. 다음 섹션에서는 사용 가능한 구성 설정을 설명합니다.
MaxEnvelopeSizekb
최대 SOAP(Simple Object Access Protocol) 데이터를 킬로바이트 단위로 지정합니다. 기본값은 150KB입니다.
참고 항목
MaxEnvelopeSizekb가 1039440보다 큰 값으로 설정된 경우 동작이 지원되지 않습니다.
MaxTimeoutms
요청 이외의 Pull
모든 요청에 사용할 수 있는 최대 제한 시간(밀리초)을 지정합니다. 기본값은 60000입니다.
MaxBatchItems
응답에 사용할 Pull
수 있는 최대 요소 수를 지정합니다. 기본값은 32000입니다.
MaxProviderRequests
서비스에서 허용하는 최대 동시 요청 수를 지정합니다. 기본값은 25입니다.
WinRM 2.0: 이 설정은 더 이상 사용되지 않으며 읽기 전용으로 설정됩니다.
WinRM 클라이언트 기본 구성 설정
WinRM의 클라이언트 버전에는 다음과 같은 기본 구성 설정이 있습니다.
NetworkDelayms
클라이언트 컴퓨터가 네트워크 지연 시간을 고려하기 위해 기다릴 추가 시간(밀리초)을 지정합니다. 기본값은 5000밀리초입니다.
URLPrefix
HTTP 또는 HTTPS 요청을 수락할 URL 접두사를 지정합니다. 기본 URL 접두사는 wsman입니다.
AllowUnencrypted
클라이언트 컴퓨터가 암호화되지 않은 트래픽을 요청할 수 있습니다. 기본적으로 클라이언트 컴퓨터에는 암호화된 네트워크 트래픽이 필요하며 이 설정은 False입니다.
기본
클라이언트 컴퓨터가 기본 인증을 사용할 수 있습니다. 기본 인증은 사용자 이름 및 암호를 서버 또는 프록시에 일반 텍스트로 보내는 체계입니다. 이 방법은 가장 안전하지 않은 인증 방법입니다. 기본값은 True입니다.
다이제스트
클라이언트가 다이제스트 인증을 사용할 수 있습니다. 다이제스트 인증은 시도에 대해 서버 지정 데이터 문자열을 사용하는 시도-응답 체계입니다. 클라이언트 컴퓨터만 다이제스트 인증 요청을 시작할 수 있습니다.
클라이언트 컴퓨터는 인증 요청을 서버에 보내고 서버에서 토큰 문자열을 받습니다. 그런 다음 클라이언트 컴퓨터는 토큰 문자열과 결합된 암호의 사용자 이름 및 암호화 해시를 포함하여 리소스 요청을 보냅니다.
다이제스트 인증은 HTTP 및 HTTPS에 대해 지원됩니다. WinRM Shell 클라이언트 스크립트 및 애플리케이션은 다이제스트 인증을 지정할 수 있지만 WinRM 서비스는 다이제스트 인증을 수락하지 않습니다. 기본값은 True
입니다.
참고 항목
HTTP를 통한 다이제스트 인증은 안전한 것으로 간주되지 않습니다.
인증서
클라이언트에서 클라이언트 인증서 기반 인증을 사용할 수 있습니다. 인증서 기반 인증은 서버가 X509 인증서로 식별된 클라이언트를 인증하는 체계입니다. 기본값은 True입니다.
Kerberos
클라이언트가 Kerberos 인증을 사용할 수 있습니다. Kerberos 인증은 클라이언트와 서버가 Kerberos 인증서를 사용하여 상호 인증하는 체계입니다. 기본값은 True입니다.
Negotiate
클라이언트가 협상 인증을 사용할 수 있도록 허용합니다. 협상 인증은 클라이언트가 인증을 위해 요청을 서버로 보내는 체계입니다.
서버는 Kerberos 프로토콜 또는 NTLM(NT LAN Manager)을 사용할지 여부를 결정합니다. 도메인 계정을 인증하기 위해 Kerberos 프로토콜이 선택됩니다. 로컬 컴퓨터 계정에 대해 NTLM이 선택됩니다. 사용자 이름은 도메인 사용자의 domain\user_name 형식으로 지정해야 합니다. 사용자 이름은 서버 컴퓨터의 로컬 사용자에 대해 server_name\user_name 형식으로 지정해야 합니다. 기본값은 True
입니다.
CredSSP
클라이언트에서 CredSSP(자격 증명 보안 지원 공급자) 인증을 사용할 수 있습니다. CredSSP를 사용하면 애플리케이션이 클라이언트 컴퓨터에서 대상 서버로 사용자의 자격 증명을 위임할 수 있습니다. 기본값은 False
입니다.
DefaultPorts
클라이언트가 HTTP 또는 HTTPS에 사용하는 포트를 지정합니다.
WinRM 2.0: 기본 HTTP 포트는 5985이고 기본 HTTPS 포트는 5986입니다.
TrustedHosts
신뢰할 수 있는 원격 컴퓨터의 목록을 지정합니다. 작업 그룹의 다른 컴퓨터 또는 다른 도메인의 컴퓨터를 이 목록에 추가해야 합니다.
참고 항목
신뢰할 수 있는 호스트 목록의 컴퓨터는 인증되지 않습니다. 클라이언트는 해당 컴퓨터에 자격 증명 정보를 보낼 수 있습니다.
신뢰할 수 있는 호스트에 대해 IPv6 주소를 지정한 경우 다음 Winrm
유틸리티 명령에서 설명한 대로 주소를 대괄호로 묶어야 합니다.
winrm set winrm/config/client '@{TrustedHosts ="[0:0:0:0:0:0:0:0]"}'
목록에 컴퓨터를 추가하는 방법에 대한 자세한 내용은 다음을 TrustedHosts
입력합니다 winrm help config
.
WinRM 서비스 기본 구성 설정
WinRM의 서비스 버전에는 다음과 같은 기본 구성 설정이 있습니다.
RootSDDL
수신기에 대한 원격 액세스를 제어하는 보안 설명자를 지정합니다. 기본값은 O:NSG:BAD:P(A;;GA;;;BA)(A;;GR;;;ER)S:P(AU;FA;GA;;;WD)(AU;SA;GWGX;;;WD)
입니다.
MaxConcurrentOperations
최대 동시 작업 수입니다. 기본값은 100입니다.
WinRM 2.0: 설정은 MaxConcurrentOperations
더 이상 사용되지 않으며 읽기 전용으로 설정됩니다. 이 설정은 .로 대체 MaxConcurrentOperationsPerUser
되었습니다.
MaxConcurrentOperationsPerUser
모든 사용자가 동일한 시스템에서 원격으로 열 수 있는 최대 동시 작업 수를 지정합니다. 기본값은 1500입니다.
EnumerationTimeoutms
메시지 간의 Pull
유휴 시간 제한(밀리초)을 지정합니다. 기본값은 60000입니다.
MaxConnections
서비스에서 동시에 처리할 수 있는 활성 요청의 최대 수를 지정합니다. 기본값은 300입니다.
WinRM 2.0: 기본값은 25입니다.
MaxPacketRetrievalTimeSeconds
WinRM 서비스가 패킷을 검색하는 데 걸리는 최대 시간(초)을 지정합니다. 기본값은 120초입니다.
AllowUnencrypted
클라이언트 컴퓨터가 암호화되지 않은 트래픽을 요청할 수 있습니다. 기본값은 False
입니다.
기본
WinRM 서비스에서 기본 인증을 사용할 수 있도록 허용합니다. 기본값은 False
입니다.
인증서
WinRM 서비스에서 클라이언트 인증서 기반 인증을 사용할 수 있도록 허용합니다. 기본값은 False
입니다.
Kerberos
WinRM 서비스가 Kerberos 인증을 사용할 수 있도록 허용합니다. 기본값은 True
입니다.
Negotiate
WinRM 서비스에서 Negotiate 인증을 사용할 수 있도록 허용합니다. 기본값은 True
입니다.
CredSSP
WinRM 서비스에서 CredSSP(자격 증명 보안 지원 공급자) 인증을 사용할 수 있습니다. 기본값은 False
입니다.
CbtHardeningLevel
인증 요청에 채널-바인딩 토큰 요구 사항에 대한 정책을 설정합니다. 기본값은 Relaxed입니다.
DefaultPorts
WinRM 서비스에서 HTTP 또는 HTTPS에 사용하는 포트를 지정합니다.
WinRM 2.0: 기본 HTTP 포트는 5985입니다. 기본 HTTPS 포트는 5986입니다.
IPv4Filter 및 IPv6Filter
수신기에서 사용할 수 있는 IPv4 또는 IPv6 주소를 지정합니다. 기본값은 다음과 같습니다 IPv4Filter = *
IPv6Filter = *
.
- IPv4: IPv4 리터럴 문자열은 각각 0부터 255까지의 4개의 점선 소수로 구성됩니다. 예를 들어, 192.168.0.0입니다.
- IPv6: IPv6 리터럴 문자열은 대괄호로 묶이고 콜론으로 구분된 16진수를 포함합니다. 예: [::1] 또는 [3ffe:ffff::6ECB:0101].
EnableCompatibilityHttpListener
호환성 HTTP 수신기를 사용할 수 있는지 여부를 지정합니다. 이 설정인 경우 수신기는 True
포트 5985 외에도 포트 80에서 수신 대기합니다. 기본값은 False
입니다.
EnableCompatibilityHttpsListener
호환성 HTTPS 수신기를 사용할 수 있는지 여부를 지정합니다. 이 설정인 경우 수신기는 True
포트 5986 외에 포트 443에서 수신 대기합니다. 기본값은 False
입니다.
Winrs 기본 구성 설정
또한 이 winrm quickconfig
명령은 Winrs 기본 설정을 구성합니다.
AllowRemoteShellAccess
원격 셸에 액세스할 수 있도록 합니다. 이 매개 변수를 False
설정하면 서버에서 새 원격 셸 연결을 거부합니다. 기본값은 True
입니다.
IdleTimeout
원격 셸에 사용자 작업이 없을 때 원격 셸이 열린 상태로 유지되는 최대 시간(밀리초)을 지정합니다. 원격 셸은 해당 시간 후에 삭제됩니다.
WinRM 2.0: 기본값은 180000입니다. 최소값은 60000입니다. 이 값을 60000보다 작게 설정해도 제한 시간 동작에는 영향을 주지 않습니다.
MaxConcurrentUsers
원격 셸을 통해 같은 컴퓨터에서 동시에 원격 작업을 수행할 수 있는 최대 사용자 수를 지정합니다. 새 원격 셸 연결이 제한을 초과하면 컴퓨터에서 이를 거부합니다. 기본값은 5입니다.
MaxShellRunTime
원격 명령 또는 스크립트를 실행할 수 있는 최대 시간(밀리초)을 지정합니다. 기본값은 28800000입니다.
WinRM 2.0: 설정이 MaxShellRunTime
읽기 전용으로 설정됩니다. 값을 MaxShellRunTime
변경해도 원격 셸에는 영향을 주지 않습니다.
MaxProcessesPerShell
셸 작업에서 시작할 수 있는 최대 프로세스 수를 지정합니다. 값이 0이면 허용되는 프로세스 수에 제한이 없습니다. 기본값은 15입니다.
MaxMemoryPerShellMB
셸의 자식 프로세스를 포함하여 셸당 할당된 최대 메모리 양을 지정합니다. 기본값은 150MB입니다.
MaxShellsPerUser
모든 사용자가 동일한 컴퓨터에서 원격으로 열 수 있는 최대 동시 셸 수를 지정합니다. 이 정책 설정을 사용하면 개수가 지정된 한도를 초과하는 경우 사용자가 새 원격 셸을 열 수 없습니다. 이 정책 설정이 사용하지 않도록 설정되었거나 구성되지 않은 경우 이 제한은 기본적으로 사용자당 5개의 원격 셸로 설정됩니다.
그룹 정책을 사용하여 WinRM 구성
그룹 정책 편집기를 사용하여 엔터프라이즈의 컴퓨터에 대해 Windows 원격 셸 및 WinRM을 구성합니다.
그룹 정책을 사용하여 구성하려면 다음을 수행합니다.
- 관리자 권한으로 명령 프롬프트를 엽니다.
- 명령 프롬프트에서
gpedit.msc
를 입력합니다. 그룹 정책 개체 편집기 창이 열립니다. - 컴퓨터 구성\관리 템플릿\Windows 구성 요소에서 Windows 원격 관리 및 Windows 원격 셸 GPO(그룹 정책 개체)를 찾습니다.
- 확장 탭에서 설정을 선택하여 설명을 표시합니다. 설정을 두 번 클릭하여 편집합니다.
Windows 방화벽 및 WinRM 2.0 포트
WinRM 2.0부터 구성된 Winrm quickconfig
기본 수신기 포트는 HTTP 전송용 포트 5985, HTTPS용 포트 5986입니다. WinRM 수신기는 임의의 포트에서 구성할 수 있습니다.
컴퓨터를 WinRM 2.0으로 업그레이드하는 경우 이전에 구성된 수신기가 마이그레이션되고 트래픽이 계속 수신됩니다.
WinRM 설치 및 구성 정보
WinRM은 을 제외한 WinHttp
다른 서비스에 종속되지 않습니다. IIS 관리 서비스가 동일한 컴퓨터에 설치된 경우 IIS(인터넷 정보 서비스) 전에 WinRM을 로드할 수 없음을 나타내는 메시지가 표시될 수 있습니다. 그러나 WinRM은 실제로 IIS에 의존하지 않습니다. 이러한 메시지는 부하 순서가 HTTP 서비스 전에 IIS 서비스가 시작되도록 하기 때문에 발생합니다. WinRM을 WinHTTP.dll
등록해야 합니다.
컴퓨터에 ISA2004 방화벽 클라이언트가 설치된 경우 WS-Management(Web Services for Management) 클라이언트가 응답을 중지할 수 있습니다. 이 문제를 방지하려면 ISA2004 방화벽 SP1을 설치합니다.
IP 주소가 다른 두 수신기 서비스가 동일한 포트 번호와 컴퓨터 이름으로 구성된 경우 WinRM은 하나의 주소에서만 메시지를 수신하거나 수신합니다. 사용되는 이 방법은 WS-Management 프로토콜에서 사용하는 URL 접두사는 동일하기 때문입니다.
IPMI 드라이버 및 공급자 설치 정보
드라이버에서 Microsoft가 아닌 IPMI 드라이버가 있는지 감지하지 못할 수 있습니다. 드라이버가 시작되지 않으면 사용하지 않도록 설정해야 할 수 있습니다.
BMC(베이스보드 관리 컨트롤러) 리소스가 시스템 BIOS에 표시되면 ACPI(플러그 앤 플레이)는 BMC 하드웨어를 검색하고 IPMI 드라이버를 자동으로 설치합니다. 플러그 앤 플레이 지원은 모든 BMC에 없을 수 있습니다. 플러그 앤 플레이 BMC가 검색되면 하드웨어 관리 구성 요소가 설치되기 전에 알 수 없는 디바이스가 장치 관리자 나타납니다. 드라이버가 설치되면 새 구성 요소인 Microsoft ACPI 일반 IPMI 규격 디바이스가 장치 관리자 나타납니다.
시스템이 BMC를 자동으로 검색하고 드라이버를 설치하지 않지만 설치 프로세스 중에 BMC가 검색된 경우 BMC 디바이스를 만듭니다. 디바이스를 만들려면 명령 프롬프트에 다음 명령을 입력합니다.
Rundll32 ipmisetp.dll, AddTheDevice
이 명령을 실행하면 IPMI 디바이스가 만들어지고 장치 관리자 표시됩니다. 하드웨어 관리 구성 요소를 제거하면 디바이스가 제거됩니다.
자세한 내용은 하드웨어 관리 소개를 참조하세요.
IPMI 공급자는 WMI의 루트\하드웨어 네임스페이스에 하드웨어 클래스를 배치합니다. 하드웨어 클래스에 대한 자세한 내용은 IPMI 공급자를 참조하세요. WMI 네임스페이스에 대한 자세한 내용은 WMI 아키텍처를 참조 하세요.
WMI 플러그 인 구성 정보
Windows 8 및 Windows Server 2012 부터 WMI 플러그 인 에는 고유한 보안 구성이 있습니다. 관리자가 아닌 일반 또는 전원 사용자의 경우 WMI 플러그 인을 사용할 수 있도록 수신기가 구성된 후 해당 사용자에 대한 액세스를 사용하도록 설정합니다. 다음 단계 중 하나를 통해 WMI에 대한 원격 액세스를 위해 사용자를 설정합니다.
실행
lusrmgr.msc
하여 로컬 사용자 및 그룹 창의 WinRMRemoteWMIUsers__ 그룹에 사용자를 추가합니다 .Winrm 명령줄 도구를 사용하여 WMI 플러그 인의 네임스페이스에 대한 보안 설명자를 구성합니다.
winrm configSDDL http://schemas.microsoft.com/wbem/wsman/1/wmi/ WmiNamespace
사용자 인터페이스가 나타나면 사용자를 추가합니다.
WMI에 대한 원격 액세스를 위해 사용자를 설정한 후에는 사용자가 플러그 인에 액세스할 수 있도록 WMI를 설정해야 합니다. 액세스를 허용하려면 wmimgmt.msc를 실행하여 WMI 컨트롤 창에서 액세스할 네임스페이스에 대한 WMI 보안을 수정합니다.
관리를 위한 대부분의 WMI 클래스는 root\cimv2 네임스페이스에 있습니다.