Убираем ограничение на количество RDP сессий в Windows 8 | Windows для системных администраторов

Убираем ограничение на количество RDP сессий в Windows 8

В ОС Windows 8 / 8.1, как и предыдущих версииях клиентских ОС Microsoft, поддерживается только одно одновременное входящее RDP-подключение. Это означает что к компьютеру Windows 8 через удаленный рабочий стол может одновременно подключиться только один пользователь (одна сессия). В большинстве случаев этого достаточно, но иногда бы иметь возможность одновременной работы сразу нескольких пользователей в собственных сессиях. Хорошим примером может быть компьютер в роли Media Center, когда в консольной сессии воспроизводится видео, и одновременно необходимо удаленно поработать с системой без прерывания видео на TV.

Совет. Удаленный RDP доступ не работает в домашних редакциях Windows, требуется редакции Pro или Enterprise.

При попытке открыть вторую RDP-сессию к компьютеру с Windows 8, появляется сообщение о том, что уж в системе уже залогинен другой пользователь и его сессия может быть завершена.

Another user is signed in. If you continue, they will be disconnected.

Another user is signed in. If you continue, they will be disconnected.

Совет. Предварительно на компьютере нужно включить RDP доступ и добавить учетные записи нужных пользователей (если они не являются локальными администраторами) в группу Remote Desktop Users.

Так, например, в серверной версии Windows поддерживаются два одновременных административных подключения с индивидуальными сессиями (в случае организации на базе Windows Server терминального сервера RDS , это число может быть еще большим).

Тем не менее, на просторах интернета можно найти специальный патч, позволяющий обойти это ограничение. Благодаря этому патчу несколько пользователей смогут одновременно подключиться по RDP к компьютеру с Windows 8 / Windows 8.1.

Важно. Использование данного патча, по сути, является нарушением лицензионного соглашения и условий использования продуктов Microsoft. Поэтому все описанные ниже операции вы выполняете на свой риск.

Итак, патч предполагает собой замену оригинального системного файла %SystemRoot%\System32\termsrv.dll (библиотека, используемая службой Remote Desktop Services).

Ссылки на модифицированную версию библиотеку termsrv.dll:

Перед заменой системной библиотеки создадим резервную копию файла termsrv.dll командой:

copy c:\Windows\System32\termsrv.dll termsrv.dll_old

Скопировать оригинальный termsrv.dllТеперь, если что-то пойдет не так, всегда можно вернуться к начальной конфигурации, заменив текущий файл оригинальным termsrv.dll_old.

Скачайте архив с библиотекой для своей версии Windows.

В Windows 8 предварительно нужно изменить значение следующих ключей в ветке реестра HKLM\System\CurrentControlSet\Control\Terminal Server\:

fSingleSessionPerUser снять ограничение на одну сессию для пользователяЭту же операцию можно выполнить из командной строки:

REG ADD "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 0 /f
REG ADD "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fSingleSessionPerUser /t REG_DWORD /d 0 /f

Затем переходим в каталог C:\Windows\System32, находим файл termsrv.dll и открываем его свойства.

Свойства файла termsrv.dllПо-умолчанию, владельцем этого файла является TrustedInstaller и даже у администратора нет прав на его замену.TrustedInstaller  - владелец файла termsrv.dll

Перейдем на вкладку Security и нажмем кнопку Edit. В списке доступа найдите группу локальных администраторов и предоставьте ей полные права на файл (Full Control) и сохраните изменения.

NTFS разрешения на файл termsrv.dllСледующий шаг перед заменой файла библиотеки, открыть консоль управления службами (services.msc) и остановить службу Remote Desktop Services.

Остановить службы Remote Desktop ServicesСкопируем файл termsrv.dll из скачанного архива для своей версии Windows в каталог %SystemRoot%\System32\ (с заменой).

Примечание. Архив для Windows 8.1 содержит два файла 32_termsrv.dll и 64_termsrv.dll, для 32-х и 64-х битной версии Windows 8.1 соответственно. Распакуйте архив и переименуйте файл для своей версии системы в termsrv.dll

После замены файла запустите службу Remote Desktop Services и попытайтесь создать две RDP сессии с пропатченной машиной под разными учетными записями. Если вы все сделали правильно, должно открыться две независимые сессии удаленного рабочего стола.

Windows 8 несколько независимых RDP сессий под разными пользователями

Совет. Возможно потребуется перезагрузка компьютера.
Еще записи по теме: Windows 8
Понравилась статья? Скажи спасибо и расскажи друзьям!
Назад:
Вперед:

Комментариев: 28

Оставить комментарий
  1. Петька | 26.01.2015

    В таком случае, может ли одновременно один пользователь работать локально за компьютером, а другой — по RDP?

    Ответить
    • itpro | 26.01.2015

      Да, можно

      Ответить
      • Петька | 26.01.2015

        Спасибо!

        Ответить
  2. Дмитрий | 28.01.2015

    А если не использовать патч, то можно ли будет также создать две RDP сессии, но при том, что одна из них будет консольная? Т.е. это команды:
    mstsc.exe /v:»Имя/IP-адрес:порт» /f — Терминальное подключение RDP
    mstsc /v:»Имя/IP-адрес:порт» /admin /f — Консольное подключение RDP

    Ответить
    • itpro | 28.01.2015

      Нет, в клиентских ОС всегда идет RDP подключение на консоль. Ключи /admin и /console (в зависимости от версии RDP клиента) можно использовать для подключении к консоли в серверных ОС Microsoft.

      Ответить
  3. Ilya | 09.02.2015

    универсальный способ решения вышеописанной проблемы от висты до 10ки : https://github.com/binarymaster/rdpwrap

    по описанию — всё необходимое патчится на лету, не ломается при обновлении системы.
    ваше мнение?

    Ответить
    • itpro | 10.02.2015

      Судя по описанию — вполне себе годная и универсальная вещица.
      Важный плюс — устойчивость к замене файла termsrv.dll при обновлении Windows.
      Спасибо за инфу!

      Ответить
  4. Вадим | 26.02.2015

    Долго мучался и не понимал, в чём дело.
    Уже начал было думать, что очередной развод.
    Потом оказалось, что при копировании через Тотал файл не заменяется, хотя выдаёт, что всё ОК.
    После этого попробовал через проводник с изменением прав доступа и всё заработало.
    Спасибо за полезную статью.

    Ответить
    • Станислав | 02.03.2015

      Дело в том, что у Вас, скорее всего, 64-битная ОС, а в тотале не включена опция «отключить перенаправление System32 -> SysWOW64″, соответственно файл просто попадает не в ту папку.

      Ответить
    • Anton | 14.07.2015

      Спасибо за замечание, 2 часа промучался…пока не прочитал Ваше замечание. И всё получилось!

      Ответить
  5. Михаил | 11.03.2015

    Не получается изменить свойства termsrv.dll. галки не проставляются так как они неактивные.

    Ответить
  6. Роман | 14.08.2015

    При запуске ошибка код 126 , не найден модуль. У меня оригинальная Windows 8 build 9200 , а ваш файлик от системы build 9300 может поэтому??

    Ответить
  7. Alex | 15.08.2015

    Как галки проставить то? там все бледное у админа, как ему прав больше дать?

    Ответить
  8. Александр | 24.11.2015

    И так у меня главный вопрос. подключение RDP сессий в Windows 8 и 10 идет только по локальной сети или можно настроить на глобальную сеть?Всем день добрый. Я настроил только Локальную а мне нужно найти выход на глобальную сеть так как частые командировки и нужен выход на главный компютер.

    Ответить
    • itpro | 24.11.2015

      Не имеет значения. Если компьютеру назначен «белый» ip-адрес или есть возможность настроить проброс порта 3389 с железки доступа в интернет, можно подключаться по rdp и снаружи.

      Ответить
  9. Александр | 27.11.2015

    Спасибо за ответ, но к сожалению из вне на 10 я не могу войти( параметры настроены вроде правильно, все как на 7, порты проброшены по 3389 на несколько внутренних айпи с 101 по 105) …на 7 которая сейчас стоит проблем нет. а вот на 10 увы..хотя внутри сети на 10 без проблем. если вам не сложно не могли бы по пунктам расписать как на 10 настроить сами настройки, может я действительно что то не так настроил, хотя повторюсь все брал как на 7. заранее спасибо.

    Ответить
    • itpro | 03.12.2015

      Возможно дело в разных настройках брандмауэра? Попробуйте на 10 отключить его для всех профилей и проверить соединение.

      Ответить
      • Александр | 08.12.2015

        Если Вам не сложно, можете по пунктам расписать настройку рдп на 10, так как я копировал настройки с 7 и возможно что то упустил. повторюсь по локальной сети есть удаленка, по глобальной нет, возможно что я где то что то упустил, заранее спасибо.

        Ответить
        • itpro | 10.12.2015

          Попробуйте такими правилами для брандмауэра разрешить входящий RDP для всех профилей:

          netsh.exe advfirewall firewall add rule name=»Remote Desktop — User Mode (TCP-In)» dir=in action=allow program=»%%SystemRoot%%\system32\svchost.exe» service=»TermService» description=»Inbound RDP traffic[TCP 3389]» enable=yes profile=any localport=3389 protocol=tcp
          netsh.exe advfirewall firewall add rule name=»Remote Desktop — User Mode (UDP-In)» dir=in action=allow program=»%%SystemRoot%%\system32\svchost.exe» service=»TermService» description=»Inbound RDP traffic[UDP 3389]» enable=yes profile=any localport=3389 protocol=udp

          Ответить
  10. Александр | 28.11.2015

    Если Вам не сложно, можете по пунктам расписать настройку рдп на 10, так как я копировал настройки с 7 и возможно что то упустил. повторюсь по локальной сети есть удаленка, по глобальной нет, возможно что я где то что то упустил, заранее спасибо.

    Ответить
    • Aleksey | 08.12.2015

      какой порт у Вас проброшен на 10 ?

      Ответить
      • Александр | 08.12.2015

        Порт 3389 роутер д линк 300

        Ответить
  11. Alex | 31.01.2016

    после замены termsrv.dll, служба Remote Desktop Services больше не запускается, пишет отказано в доступе, если назад старую вернуть dll, служба запускается, что я не так сделал? Все шаги были выполнены верно, win 8.

    Ответить
  12. Роман | 08.09.2016

    Стоит Win 8.1 Проф
    файл termsrv.dll есть только тут c:\Windows\WinSxS\amd64_microsoft-windows-t..teconnectionmanager_31bf3856ad364e35_6.3.9600.17415_none_7faa3caf28018a5e\termsrv.dll

    Выполнение данных инструкций не спасает… Что сделать можно?
    Может в 8.1 проф, за RDS какая-то другая библиотека отвечает?

    Ответить
  13. Я не робот | 25.10.2016

    Мне потребовалось еще настроить брендмауэр — правила на общение с портом 3389 были отключены. А так — все работает! Спасибо!

    Ответить
Полные правила комментирования на сайте winitpro.ru. Вопросы, не связанные с содержимым статьи или ее обсуждением удаляются.

Сказать Спасибо! можно на этой странице или (еще лучше) поделиться с друзями ссылкой на понравившуюся статью в любимой социальной сети(специально для этого на сайте присуствуют кнопки популярных соц. сетей).

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Я не робот( Обязательно отметьте)



MAXCACHE: 0.28MB/0.00106 sec