RDS 드레인 모드를 사용할 수 있습니다. 원격 데스크톱 서비스 팜에서 터미널 호스트를 유지 관리합니다. RDS 서버에 대해 드레인 모드를 활성화하면 서버가 새 사용자의 RDP 연결을 수락하지 못하게 할 수 있으며 사용자가 RDS 세션 시간 초과에 의해 수동 또는 자동으로 로그오프할 때까지 현재 RD 연결이 활성 상태로 유지됩니다. 그러면 RDS 팜 작업(업데이트 설치, 서버 또는 앱 설정 변경, 구성 파일 업데이트 등)을 중단하지 않고 Windows Server 호스트를 유지 관리할 수 있습니다.
내용:
- Windows Server 원격 데스크톱 서비스의 드레인 모드란 무엇입니까?
- RD 세션 서버에 대한 신규 사용자 로그온을 어떻게 거부합니까?
- PowerShell을 통해 Windows Server RDS 호스트의 드레인 모드 설정
Windows Server 원격 데스크톱 서비스의 드레인 모드란 무엇입니까?
드레인 모드는 Windows Server 2008(터미널 서비스 서버 드레인 모드)에 나타났습니다. RDS 호스트를 드레인 모드로 전환하면 더 이상 새 사용자의 연결을 수락할 수 없습니다. 일반적으로 이 모드는 서버 관리자가 전체 RDS 팜의 가용성에 영향을 주지 않고 서버를 유지 관리해야 하는 경우(Windows 업데이트 설치, 앱 구성 또는 업데이트) 사용됩니다. RDS 호스트는 세 가지 유형의 드레인 모드 중 하나에서 작동할 수 있습니다.
- 모든 연결 허용 (기본 모드) — RD 세션 호스트가 새 연결을 수락합니다.
- 재연결은 허용하지만 새 로그온은 방지 — 사용자는 기존 세션에 다시 연결할 수 있지만 새 세션은 허용되지 않습니다. 서버를 다시 시작하면 사용자가 서버에 연결할 수 없습니다.
- 재연결은 허용하지만 서버가 다시 시작될 때까지 새 로그온 방지 – 이 모드는 이전 모드와 유사하지만 다시 시작한 후 사용자 로그온 모드가 모든 연결 허용으로 재설정됩니다.
RD 세션 서버에 대한 신규 사용자 로그온을 어떻게 거부합니까?
RDS 수집 설정을 통해 RDS 호스트 서버에서 드레인 모드를 활성화할 수 있습니다.
- 서버 관리자 열기 -> 모든 서버 -> 팜의 모든 RDS 서버를 추가합니다.
- 서버 관리자의 왼쪽 패널에서 원격 데스크톱 서비스를 선택합니다. RDS 컬렉션을 선택하십시오.
호스트 서버
섹션에서 드레인 모드를 활성화할 서버를 선택하고 새 연결을 허용하지 않음을 선택합니다. 컨텍스트 메뉴에서.
활성 원격 데스크톱 세션이 있는 사용자는 서버에 다시 연결할 수 있으며 모든 새 연결은 RD 연결 브로커에 의해 RDS 팜의 다른 호스트로 전달됩니다.
명령 프롬프트를 통해 RDS 호스트에서 로컬로 드레인 모드를 설정할 수도 있습니다. 이를 수행하려면 로그온 변경
명령이 사용됩니다.
새로운 사용자 연결을 방지하려면 아래 명령을 실행하십시오.
로그온/드레인 변경
New user logons are DISABLED, but reconnections to existing sessions are ENABLED
이제 새 사용자가 RDS 호스트에 직접 연결을 시도하면(RD 연결 브로커를 사용하지 않는 경우) 다음 오류가 나타납니다.
Remote logins are currently disabled.
동시에 이벤트 ID가 1070이고 TerminalServices-RemoteConnectionManager가 소스인 이벤트가 나타납니다. RDS 호스트 로그:
A logon request was denied because the RD Session Host server is currently in drain mode and therefore not accepting new user logons. To configure the server to allow new user logons, use the Remote Desktop Services Configuration tool.
다음 명령은 호스트가 다시 시작될 때까지 드레인 모드를 활성화합니다.
로그온 변경 /drainuntilrestart
활성 세션이 있는 사용자가 호스트에 연결하는 것을 방지하려면 다음 명령을 실행하십시오.
로그온 변경/비활성화
Session logins are currently DISABLED클라이언트 세션 모드에서 원격 데스크톱 세션 호스트에 연결하고 위의 명령을 사용하여 액세스를 비활성화하고 로그오프(logoff.exe)한 경우 콘솔(
mstsc)을 통해서만 서버에 연결할 수 있습니다. /관리자
).
연결을 허용하려면 다음 명령을 사용하십시오.
로그온 변경 /활성화
RDS 서버에서 드레인 모드가 활성화되어 있는지 확인하려면 아래 명령을 실행하십시오.change logon /query
Session logins are currently ENABLED
로그온 변경>을 사용하여 서버에서 드레인 모드를 설정하려고 시도한 경우 코드> 다음 오류가 표시됩니다.
Connections are currently ENABLED by Group Policy for this machine, unable to change.
이는 드레인 모드가 GPO를 통해 구성되었음을 의미합니다. 정책 설정은 사용자가 원격 데스크톱 서비스를 사용하여 원격으로 연결하도록 허용이라고 합니다. 다음 GPO 섹션에서 찾을 수 있습니다. 관리 템플릿 -> Windows 구성 요소 -> 원격 데스크톱 서비스 -> 원격 데스크톱 세션 호스트 -> 연결
정책을 비활성화하거나 구성되지 않음으로 설정합니다. .
PowerShell을 통해 Windows Server RDS 호스트의 드레인 모드 설정
PowerShell을 사용하여 RDS 호스트 컬렉션 또는 독립 실행형 RDS 서버의 드레인 모드 설정을 관리할 수 있습니다.
Import-Module RemoteDesktop
# 원격 데스크톱 서비스 호스트에 대한 새 RDP 연결을 거부하려면
Set-RDSessionHost -SessionHost mun-saprdsh1.woshub.com -NewConnectionAllowed 아니요 -ConnectionBroker mun-saprdcb.woshub. com# 연결을 허용하려면
Set-RDSessionHost -SessionHost mun-saprdsh1.woshub.com -NewConnectionAllowed 예 -ConnectionBroker mun-saprdcb.woshub.com
- WinStation 비활성화됨 HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon\
- TSServerDrainMode HKLM\System\CurrentControlSet\Control\터미널 서버\
예를 들어 드레인 모드가 활성화되면 레지스트리 값이 WinStationsDisabled =0
으로 설정됩니다. 및 TSServerDrainMode =2
.
아래 PowerShell 스크립트를 사용하여 호스트의 드레인 모드가 활성화되어 있는지 확인할 수도 있습니다.
Get-WmiObject win32_terminalservicesetting -N "root\cimv2\terminalservices" | %{
if ($_.logons -eq 1){
"비활성화됨"}
Else {
스위치($_.sessionbrokerdrainmode)
{
0 {"활성화됨"}
1 {"DrainUntilRestart"}
2 {"드레인"}
기본값 {"오류"}
}
}
}
PowerShell을 통해 드레인 모드를 활성화하려면(change logon /Drain
과 유사) ):
$temp =(Get-WmiObject win32_terminalservicesetting -N "root\cimv2\terminalservices")
$temp.sessionbrokerdrainmode=2
$temp.put()
RDS 호스트를 일반 모드로 전환하려면(change logon /enable
), 다음 명령을 실행하십시오:
$temp =(Get-WmiObject win32_terminalservicesetting -N " root\cimv2\terminalservices ")
$temp.sessionbrokerdrainmode=0
$temp.logons=0
$temp.put( )