По умолчанию Windows Server допускает два одновременных сеанса удалённого рабочего стола для администрирования. Этого хватает администратору и его коллеге, но не команде, которая работает на сервере весь день. В статье: как добавить пользователей и дать им доступ по RDP, как работает ограничение в два сеанса, как автоматически завершать простаивающие и отключённые сеансы и как легально обслуживать больше пользователей с помощью роли узла сеансов удалённых рабочих столов и лицензий RDS.
Заведите каждому сотруднику отдельную учётную запись вместо общего Administrator — так видно, кто что сделал, и доступ можно отзывать по отдельности. Откройте PowerShell от имени администратора:
# Create a local user (you will be asked for the password)
$pw = Read-Host -AsSecureString "Password for alice"
New-LocalUser -Name "alice" -Password $pw -FullName "Alice" -PasswordNeverExpires
# Allow Remote Desktop without full admin rights
Add-LocalGroupMember -Group "Remote Desktop Users" -Member "alice"
# Only if this person really needs administrator rights
# Add-LocalGroupMember -Group "Administrators" -Member "alice"
Get-LocalGroupMember -Group "Remote Desktop Users"
Члены группы Пользователи удаленного рабочего стола (Remote Desktop Users) могут входить удалённо; члены группы Администраторы (Administrators) могут входить всегда. Используйте надёжные пароли и политику блокировки учётных записей (см. статью о защите Windows VPS).
Без роли узла сеансов удалённых рабочих столов Windows Server принимает не более двух активных сеансов удалённого рабочего стола одновременно (плюс консольный сеанс). Когда подключается третий человек, Windows спрашивает, кого из текущих пользователей отключить. Пользователь, который просто закрыл окно удалённого рабочего стола, остаётся в системе с сеансом в отключённом состоянии (Disconnected): такой сеанс по-прежнему учитывается в лимите и продолжает занимать память.
# See who is signed in and the session IDs
quser
query session
# Sign out a session (replace 3 with the ID from quser)
logoff 3
Откройте Редактор локальной групповой политики (gpedit.msc) и перейдите в раздел Конфигурация компьютера → Административные шаблоны → Компоненты Windows → Службы удаленных рабочих столов → Узел сеансов удаленных рабочих столов (Computer Configuration → Administrative Templates → Windows Components → Remote Desktop Services → Remote Desktop Session Host).
gpupdate /force
Для трёх и более одновременных пользователей установите роль узла сеансов удалённых рабочих столов (Remote Desktop Session Host) и сервер лицензирования удалённых рабочих столов (Remote Desktop Licensing), а также купите клиентские лицензии RDS (RDS CAL) у Microsoft или реселлера: либо на каждого пользователя (Per User), либо на каждое подключающееся устройство (Per Device).
# Install the Session Host and Licensing roles, then restart
Install-WindowsFeature RDS-RD-Server, RDS-Licensing -IncludeManagementTools
Restart-Computer
После перезагрузки Windows работает в 120-дневном льготном периоде лицензирования, в течение которого пользователи могут подключаться без CAL. До его окончания:
licmgr.exe), щёлкните правой кнопкой по серверу, выберите Активировать сервер (Activate Server), а затем Установить лицензии (Install Licenses), чтобы добавить ваши RDS CAL.gpedit.msc в разделе Узел сеансов удаленных рабочих столов → Лицензирование (Remote Desktop Session Host → Licensing) включите политику Использовать указанные серверы лицензирования удаленных рабочих столов (Use the specified Remote Desktop license servers) и укажите имя самого сервера, а также политику Задать режим лицензирования удаленных рабочих столов (Set the Remote Desktop licensing mode) — «На пользователя» (Per User) или «На устройство» (Per Device), в соответствии с купленными CAL.gpupdate /force и проверьте результат в оснастке Средство диагностики лицензирования удаленных рабочих столов (RD Licensing Diagnoser, lsdiag.msc).Если льготный период истечёт, а сервер лицензирования так и не будет настроен, пользователи увидят сообщение «отсутствуют серверы лицензирования удаленных рабочих столов, предоставляющие лицензию» (no Remote Desktop license servers available), и подключиться смогут только администраторы — командой mstsc /admin.
Каждый активный сеанс рабочего стола расходует память и процессорное время — и тем больше, если пользователи работают в браузерах или офисных приложениях. Ориентировочно закладывайте 1–2 ГБ оперативной памяти на пользователя с лёгкой нагрузкой и 2–4 ГБ на пользователя, который держит в браузере много вкладок, — сверх того, что нужно службам самого сервера. Следите за нагрузкой на вкладке Пользователи (Users) Диспетчера задач.
Два сеанса уже активны или находятся в отключённом состоянии. Завершите один из них командой logoff (шаг 2), подключитесь с помощью mstsc /admin к административному консольному сеансу и задайте ограничения по времени из шага 3, чтобы ситуация не повторялась.
Только если отключить политику Ограничить пользователей служб удаленных рабочих столов одним сеансом, но и тогда это плохая идея: настройки, файлы и журналы перемешиваются. Создайте отдельную учётную запись для каждого человека.
Это проблема связи, а не ограничения на число сеансов. См. статью о решении проблем с подключением к удалённому рабочему столу.
Если проблема не решена, создайте тикет — техническая поддержка IMIDC работает 24/7. Укажите IP сервера, версию Windows Server, нужное число пользователей и точный текст ошибки, чтобы мы быстрее нашли причину.