Групповые политики управления теневыми подключениями к RDS сессиям в Windows
Параметры удаленного управлениями RDS сессиями пользователя настраиваются отдельным параметром групповых политик — Set rules for remote control of Remote Desktop Services user sessions (Установить правила удаленного управления для пользовательских сеансов служб удаленных рабочих столов). Данная настройка находится в разделе Policies -> Administrative Templates -> Windows components -> Remote Desktop Services -> Remote Session Host -> Connections (Административные шаблоны –> Компоненты Windows –> Службы удаленных рабочих столов – Узел сеансов удаленных рабочих столов –> Подключения) в пользовательской и компьютерной секциях GPO. Данной политике соответствует DWORD параметр реестра Shadow в ветке HKLM\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services (значения этого параметра, соответствующие параметрам политики указаны в скобках).
Этой политикой можно настроить следующие варианты теневого подключения RD Shadow:
- No remote control allowed — удаленное управление не разрешено (значение параметра реестра Shadow = 0 );
- Full Control with users’s permission — полный контроль сессии с разрешения пользователя ( 1 );
- Full Control without users’s permission — полный контроль без разрешения пользователя ( 2 );
- View Session with users’s permission – наблюдение за сеансом с разрешением пользователя ( 3 );
- View Session without users’s permission – наблюдение за сеансом без разрешения пользователя ( 4 ).
После изменения настроек не забудьте обновить настройки групповых политик на RDP/RDS хосте.
Вы можете настроить правила удаленного подключения в домене из консоли управления GPO gpmc.msc с помощью рассмотренного параметра политики, либо групповой политикой, вносящей изменения напрямую в реестр системы (последний вариант позволяет более тонко нацелить политику на компьютеры с помощью Group Policy Item Level Targeting).
Устранение неполадок с конфигурацией компьютера
В этом разделе рассматриваются проблемы удаленного взаимодействия, связанные с конкретными конфигурациями компьютера, домена или предприятия.
Настройка удаленного взаимодействия на альтернативных портах
Удаленное взаимодействие PowerShell по умолчанию использует порт 80 для транспорта HTTP. Порт по умолчанию используется всякий раз, когда пользователь не указывает параметры ConnectionURI или Port в удаленной команде.
Чтобы изменить порт по умолчанию, используемый в PowerShell, используйте командлет на диске WSMan: для изменения значения порта в конечном узле прослушивателя.
Например, следующая команда изменяет порт по умолчанию на 8080.
Настройка удаленного взаимодействия с прокси-сервером
Так как удаленное взаимодействие PowerShell использует протокол HTTP, на него влияют параметры прокси-сервера HTTP. На предприятиях с прокси-серверами пользователи не могут напрямую получить доступ к удаленному компьютеру PowerShell.
Чтобы устранить эту проблему, используйте параметры прокси-сервера в удаленной команде. Доступны следующие параметры.
- ProxyAccessType
- ProxyAuthentication
- ProxyCredential
Чтобы задать эти параметры для определенной команды, выполните следующую процедуру:
-
Используйте параметры ProxyAccessType, ProxyAuthentication и ProxyCredential командлета , чтобы создать объект параметра сеанса с параметрами прокси-сервера для вашего предприятия. Сохранить объект option является переменной.
-
Используйте переменную, содержащую объект option, в качестве значения параметра SessionOption команды , или .
Например, следующая команда создает объект параметра сеанса с параметрами сеанса прокси-сервера, а затем использует объект для создания удаленного сеанса.
Дополнительные сведения о командлете см. в разделе New-PSSessionOption.
Чтобы задать эти параметры для всех удаленных команд в текущем сеансе, используйте объект option, который создает в значении переменной предпочтения. Дополнительные сведения см. в разделе about_Preference_Variables.
Чтобы задать эти параметры для всех удаленных команд во всех сеансах PowerShell на локальном компьютере, добавьте переменную предпочтения в профиль PowerShell. Дополнительные сведения о профилях PowerShell см. в разделе about_Profiles.
Обнаружение 32-разрядного сеанса на 64-разрядном компьютере
Если удаленный компьютер работает под управлением 64-разрядной версии Windows, а удаленная команда использует 32-разрядную конфигурацию сеанса, например Microsoft.PowerShell32, удаленное управление Windows (WinRM) загружает процесс WOW64 и Windows автоматически перенаправляет все ссылки на каталог в каталог.
В результате при попытке использовать средства в каталоге System32, которые не имеют аналогов в каталоге SysWow64, например , средства не будут найдены в каталоге .
Чтобы найти архитектуру процессора, используемую в сеансе, используйте значение переменной среды PROCESSOR_ARCHITECTURE . Следующая команда находит архитектуру процессора сеанса в переменной .
Дополнительные сведения о конфигурациях сеансов см. в разделе about_Session_Configurations.
Удаленное управление из Windows 7
Хотя компьютерами, работающими под управлением Windows 7, нельзя управлять с помощью Диспетчер серверов, можно установить Диспетчер серверов на компьютере под управлением Windows 7, установив для этого Средства администрирования удаленного сервера. Средства администрирования удаленного сервера для Windows 7 можно загрузить на веб-сайте корпорации Майкрософт (https://go.microsoft.com/fwlink/?LinkId=131280). После установки Средства администрирования удаленного сервера можно подключить консоль Диспетчер серверов к удаленному компьютеру под управлением Windows Server 2008 R2 и выполнять задачи управления на сервере назначения, который определен в пункте настоящего раздела.
Установив Средства администрирования удаленного сервера на компьютере под управлением Windows 7, так же как на компьютере под управлением Windows Server 2008 R2, можно создать настраиваемую консоль ММС Диспетчер серверов для управления несколькими удаленными компьютерами, на которых установлен Windows Server 2008 R2. Чтобы создать настраиваемую консоль ММС Диспетчер серверов на компьютере, где установлены ОС Windows 7 и Средства администрирования удаленного сервера, см. пункт настоящего раздела.
Для удаленного управления с компьютера, на котором установлена ОС Windows 7, выполните следующие действия. |
Установите Средства администрирования удаленного сервера на компьютере под управлением Windows 7.
Загрузите пакет Средства администрирования удаленного сервера с веб-сайта корпорации Майкрософт и затем следуйте инструкциям по установке Средства администрирования удаленного сервера, приведенным на странице Центра загрузки.
Чтобы использовать средства и оснастки, предназначенные для конкретных ролей или компонентов в консоли Диспетчер серверов, подключенной к удаленному серверу, эти средства необходимо установить на исходном компьютере при помощи Средства администрирования удаленного сервера.
После установки Средства администрирования удаленного сервера откройте Диспетчер серверов. Чтобы открыть компонент «Управление сервером», нажмите Пуск, Администрирование, а затем Управление сервером.
В древовидном представлении щелкните правой кнопкой мыши узел Диспетчер сервера и выберите команду Подключиться к другому компьютеру.
В диалоговом окне Подключение к другому компьютеру введите имя или IP-адрес компьютера, работающего под управлением Windows Server 2008 R2, в поле Другой компьютер или найдите другой сервер в сети при помощи обзора
Нажмите кнопку ОК.
Обратите внимание, что после подключения к удаленному компьютеру имя компьютера появится в консоли Диспетчер серверов. Вы увидите имя удаленного компьютера, к которому подключены, в узле Диспетчер серверов древовидного представления, в поле Полное имя компьютера области Сводка сервера Диспетчер серверов и имя компьютера в заголовке консоли.
Устранение неполадок с политикой и предпочтениями
В этом разделе рассматриваются проблемы удаленного взаимодействия, связанные с политиками и предпочтениями, установленными на локальных и удаленных компьютерах.
Изменение политики выполнения для Import-PSSession и Import-Module
Командлеты и создают модули, содержащие неподписанные файлы скриптов и файлы форматирования.
Чтобы импортировать модули, созданные этими командлетами, с помощью или , политика выполнения в текущем сеансе не может иметь значение Restricted или AllSigned. Сведения о политиках выполнения PowerShell см. в разделе about_Execution_Policies.
Чтобы импортировать модули без изменения политики выполнения для локального компьютера, заданного в реестре, используйте параметр Scope для установки менее строгой политики выполнения для одного процесса.
Например, следующая команда запускает процесс с политикой выполнения. Изменение политики выполнения влияет только на текущий процесс и не изменяет параметр реестра PowerShell ExecutionPolicy .
Можно также использовать параметр ExecutionPolicy для запуска одного сеанса с менее строгой политикой выполнения.
Дополнительные сведения о политиках выполнения см. в разделе about_Execution_Policies. Для получения дополнительных сведений введите .
Установка и изменение квот
Квоты можно использовать для защиты локального и удаленного компьютеров от чрезмерного использования ресурсов, как случайных, так и вредоносных.
В базовой конфигурации доступны следующие квоты.
-
Поставщик WSMan (WSMan:) предоставляет несколько параметров квоты, таких как параметры MaxEnvelopeSizeKB и MaxProviderRequests в узле, а также параметры MaxConcurrentOperations, MaxConcurrentOperationsPerUser и MaxConnections в узле.
-
Локальный компьютер можно защитить с помощью параметров MaximumReceivedDataSizePerCommand и MaximumReceivedObjectSize командлета и переменной предпочтения.
-
Вы можете защитить удаленный компьютер, добавив ограничения в конфигурации сеанса, например с помощью параметров MaximumReceivedDataSizePerCommandMB и MaximumReceivedObjectSizeMB командлета .
Если квоты конфликтуют с командой, PowerShell создает ошибку.
Чтобы устранить эту ошибку, измените удаленную команду в соответствии с квотой. Или определите источник квоты, а затем увеличьте квоту, чтобы разрешить выполнение команды.
Например, следующая команда увеличивает квоту на размер объекта в конфигурации сеанса Microsoft.PowerShell на удаленном компьютере с 10 МБ (значение по умолчанию) до 11 МБ.
Дополнительные сведения о командлете см. в разделе .
Дополнительные сведения о квотах WS-Management см. в разделе about_WSMan_Provider.
Устранение ошибок времени ожидания
Вы можете использовать время ожидания, чтобы защитить локальный и удаленный компьютер от чрезмерного использования ресурсов, как случайных, так и вредоносных. Если время ожидания задано как на локальном, так и на удаленном компьютере, PowerShell использует параметры самого короткого времени ожидания.
В базовой конфигурации доступно следующее время ожидания.
-
Поставщик WSMan (WSMan:) предоставляет несколько параметров времени ожидания на стороне клиента и службы, таких как параметр MaxTimeoutms в узле и параметры EnumerationTimeoutms и MaxPacketRetrievalTimeSeconds в узле.
-
Вы можете защитить локальный компьютер с помощью параметров CancelTimeout, IdleTimeout, OpenTimeout и OperationTimeout командлета и переменной предпочтения.
-
Вы также можете защитить удаленный компьютер, задав значения времени ожидания программным способом в конфигурации сеанса.
Если значение времени ожидания не позволяет завершить операцию, PowerShell завершает операцию и создает ошибку.
Чтобы устранить эту ошибку, измените команду на выполнение в течение интервала времени ожидания или определите источник ограничения времени ожидания и увеличьте интервал времени ожидания, чтобы разрешить выполнение команды.
Например, следующие команды используют командлет , чтобы создать объект параметра сеанса со значением OperationTimeout 4 минуты (в MS), а затем использовать объект параметра сеанса для создания удаленного сеанса.
Дополнительные сведения о времени ожидания WS-Management см. в разделе справки для поставщика WSMan (тип ).
Дополнительные сведения о командлете см. в разделе New-PSSessionOption.
Личный помощник для удаленной работы
Ранее считалось, что персональный секретарь может быть только рядом, за стенкой, в соседнем кабинете, сегодня ассистент онлайн — новый уровень. Что может решать такой помощник?
- вести календарь встреч, дел;
- искать новых клиентов;
- контролировать выполнение задач другими работниками;
- заниматься рекламой, SMM-продвижением;
- покупать товары, заказывать услуги.
Основные навыки личного помощника
Если бы я искала такого человека, то оценила его личный опыт удаленной работы: какими программами владеет, что может делать, насколько быстро реагирует на поставленные задачи. Разумеется, ассистент-помощник должен быть ответственным, многозадачным, не пропадать, постоянно быть онлайн.
Сложность профессии в том, что вы даже можете не знать, как выглядит человек, но должны доверить ему планирование своего и бизнес-графика.
Когда идет набор персонала, оценивается внешность, манера, наличие диплома, харизма, опыт. Здесь проще: либо человек справляется — либо же нет. В моем материале о самых популярных профессиях такая вакансия не описана, но попали те, которые будут востребованы в будущем и уже сегодня оценивается высокими зарплатами.
Дополнительные навыки личного помощника
Принимая в внимание, что личный помощник руководителя должен быть современным и мульти задачным, обязанности постоянно расширяются и дополняются новыми умениями. Среди них выделю такие:
- мобильность;
- коммуникабельность (несмотря на то, что прямого контакта фактически нет, но общение должно быть комфортным для всех);
- умение собраться и работать в стрессовых условиях.
- Также сюда я бы отнесла и акцент на развитие, ориентация на современные ценности, внешнюю эрудированность.
Классический секретарь-помощник может появляться на встречах, пригласить гостей в офис, организовывать ивенты, но с онлайн специалистом их объединяет то, что придерживаются стандарта профессиональной этики, корпоративного хранения тайн: начиная от тонкостей работы, заканчивая финансовые вопросами. А кто такой современный инвестор, нужен ли ему помощник или больше все же консультант — в готовом материале на блоге.
Среди основных сервисов, знания которых требуются при трудоустройстве, Google Docs, Тrello Jira; наличие аккаунтов в соцсетях, умелое пользование ПК.
Radmin (shareware)
Лет десять назад самой популярной программой для удаленного доступа была Radmin, она и сейчас есть (www.radmin.ru) — она никуда не подевалась за это время. С нее и начнем обзор.
Рис. 1. Окно настройки Radmin Server
Другие статьи в выпуске:
Хакер #176. Анонимность в интернете
- Содержание выпуска
- Подписка на «Хакер»-60%
Программа состоит из двух частей: Server и Viewer. Первая запускается на удаленном компьютере (или удаленных компьютерах), а вторая — на твоем компьютере и используется для подключения к удаленным машинам, которые ты собираешься настраивать. На сайте разработчиков можно скачать как полный комплект, так и отдельные компоненты. Также есть portable-версия Viewer, работающая без установки, и версия Radmin Server 3.5 NTI — это специальная версия без пиктограммы в трее, то есть пользователь удаленного компа и не узнает, что на нем установлена Radmin, пока ты не начнешь управлять его компьютером.
Рис. 2. Radmin Viewer
Отмечу ключевые возможности: поддержка Windows 8 32/64 bit, поддержка переключения сессий пользователей в Windows XP/Vista/7/8, совместимость с Wine (Radmin может организовать удаленный доступ к ПК под управлением Linux через Wine), поддержка Telnet, удаленное выключение ПК, сканер серверов Radmin (позволяет найти все ПК, которыми ты можешь управлять в своей сети), передача файлов между Server и Viewer.
Рис. 3. Брандмауэр заблокировал попытку подключения
Выводы:
- Функционал программы: здесь и собственная аутентификация, и поддержка голосового чата, и возможность передачи файлов. Все очень удобно.
- Благодаря тому, что на удаленном компе установлен Server, не нужно присутствие пользователя, как в других подобных программах. Например, ты можешь администрировать удаленные ПК своих коллег, когда те ушли на обед. В других подобных программах необходимо или чтобы пользователь разрешил соединение, или же чтобы пользователь предоставил тебе пароль, который генерируется автоматически при каждом сеансе связи.
- Низкие системные требования, программа совсем не грузит процессор, что особо актуально для моего старого ноута с процем от AMD, который греется как утюг, — он и выступал в роли «удаленного» компа.
- Просто запустить Server недостаточно, нужно его еще и настраивать.
- Многие пользователи любят TeamViewer не за его функциональность, а за то, что он не требует каких-либо особых портов (по умолчанию он использует 80-й порт) и не требует настройки брандмауэра. Radmin Server использует порт 4899, и запустить его без настройки брандмауэра не получится.
- Нет мобильных клиентов.
- Не поддерживает другие ОС.
Групповые политики и скрипты
Если предыдущие варианты не требовали доменной среды, то в этом случае потребуется домен. Поддерживаются скрипты при входе и выходе пользователя из системы, а также при ее включении и выключении. Поскольку каждый администратор Windows сталкивался с ними, я не буду подробно расписывать как ими пользоваться ― лишь напомню, где их искать.
Скрипты, выполняющиеся при старте и завершении системы.
Скрипты, выполняющиеся при входе и выходе пользователя из системы.
Скрипты, настраиваемые в пользовательском разделе, выполняются от имени пользователя, а в разделе компьютера ― под аккаунтом SYSTEM.
Подключение дисков удаленно
Каждая из команд может выполняется удаленно. У команды ‘New-SMBMapping’ для этого есть встроенный параметр ‘CimSession’. В случае обоих подходов можно использовать команды из модуля PSRemoting, например ‘Invoke-Command’. Нужно отметить, что сетевые папки в Powershell всегда подключаются под тем пользователем, под которым была запущена консоль или скрипт. Если вы были аутентифицированы под пользователем ‘alex’ и открыли консоль Powershell, то диски будут подключены пользователю ‘alex’. Кроме этого, для каждой команды у вас должен быть запущен WinRM и установлены настройки в TrustedHost.
Пример команды, которая подключит диск у пользователя:
Для обеих команд подойдет следующий способ:
…
Рекомендую
Удаленное выполнение PowerShell с помощью Invoke-Command
Командлет Invoke-Command позволяет выполнить команду на одном или нескольких удаленных компьютерах.
Например, для запуска одиночной команды на удаленном компьютере можно использовать такую команду:
Invoke-Command -ComputerName 10.10.10.12 -ScriptBlock {$PSVersionTable.PSVersion} Major Minor Build Revision PSComputerName ----- ----- ----- -------- -------------- 5 1 19041 610 192.168.98.12
Либо с авторизацией
Invoke-Command -ComputerName 10.10.10.12 -Credential Domain\UserName -ScriptBlock {$PSVersionTable.PSVersion}
Эта команда выведет в вашу консоль значение версии PowerShell, установленной на удаленном компьютере, имя которого указано в параметре . В блоке указывается команда, которую нужно запустить на удаленном компьютере.
Можно задать несколько команд в блоке , их нужно разделить точкой с запятой. Например, следующая команда выведет текущий часовой пояс и изменит его на другой:
Invoke-Command -ComputerName 110.10.10.12 -ScriptBlock {Get-TimeZone| select DisplayName;Set-TimeZone -Id "Russian Standard Time"} DisplayName PSComputerName RunspaceId ----------- -------------- ---------- (UTC+03:00) Москва, Санкт-Петербург 10.10.10.12 a5f90193-b5d0-42f3-9cee-d2ec7378b513
позволяет выполнять не только отдельные команды, но и запускать скрипты PowerShell. Для этого используется аргумент (вместо –ScriptBlock). При этом вы указываете путь к локальному PS1 файлу скрипта на вашем компьютере (вам не нужно копировать файл скрипт на удаленный компьютер):
Invoke-Command -ComputerName HostName -FilePath c:\Path\to\file\ScriptName.ps1
Как включить удалённый рабочий стол RDP
Клиент и сервер присутствуют по умолчанию во всех версиях Windows. Для запуска клиента не требуется дополнительная настройка.
Что касается сервера, то он может быть отключён и/или доступ к порту RDP может быть заблокирован файерволом.
Это универсальный способ включения RDP, работающих в большинстве Windows.
Нажмите Win+r и введите:
SystemPropertiesRemote
В открывшемся окне выберите «Разрешить удалённые подключения к этому компьютеру»:
При необходимости добавьте пользователей, которые могут удалённо подключиться, щёлкнув «Выбрать пользователей». Члены группы «Администраторы» получают доступ автоматически:
Чтобы правильно добавить пользователя, введите его имя:
И нажмите кнопку «Проверить имена»:
Команду SystemPropertiesRemote также можно запустить в командной строке, либо в PowerShell.
Как включить удалённый рабочий стол на Windows 11 в графическом интерфейсе
Откройте «Параметры», для этого нажмите Win+i.
На вкладке «Система» прокрутите список пунктов вниз.
Найдите и кликните «Удалённый рабочий стол».
На вкладке «Удалённый рабочий стол» включите соответствующий ползунок.
Подтвердите выбранное действие:
Также вы можете выбрать пользователей, которые могут подключаться удалённо к компьютеру.
Как включить удалённый рабочий стол на Windows в командной строке
Для включения удалённого рабочего стола в PowerShell выполните следующие команды:
Set-ItemProperty -Path 'HKLM:\System\CurrentControlSet\Control\Terminal Server' -Name "fDenyTSConnections" -Value 0 Set-ItemProperty -Path 'HKLM:\System\CurrentControlSet\Control\Terminal Server\WinStations\RDP-TCP\' -Name "UserAuthentication" -Value 1 Enable-NetFirewallRule -DisplayGroup "Remote Desktop"
Команды необходимо выполнять с правами администратора, подробности смотрите в статье «Как запустить PowerShell с правами администратора».
В привычном CMD аналогом являются следующие команды:
reg add "HKLM\System\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 0x00000000 /f reg add "HKLM\System\CurrentControlSet\Control\Terminal Server\WinStations\RDP-TCP" /v UserAuthentication /t REG_DWORD /d 0x00000001 /f netsh advfirewall firewall set rule group="remote desktop" new enable=Yes
Как включить удалённый рабочий стол на Windows Server 2019/2022 в PowerShell
Разрешение службы удалённых рабочих столов в Windows Server 2019 быстрее сделать в PowerShell, чем в графическом интерфейсе. Для этого параметра мы будем использовать командлет Set-ItemPropery для изменения параметра флага реестра.
Запустите сеанс PowerShell от имени администратора. Для этого нажмите Win+x и выберите Windows PowerShell (администратор):
Затем выполните следующие команды:
Set-ItemProperty -Path 'HKLM:\System\CurrentControlSet\Control\Terminal Server' -Name "fDenyTSConnections" -Value 0 Set-ItemProperty -Path 'HKLM:\System\CurrentControlSet\Control\Terminal Server\WinStations\RDP-TCP\' -Name "UserAuthentication" -Value 1
Файервол Windows не разрешает удалённые подключения к RDP Нам нужно настроить файервол, чтобы он разрешал удалённые подключения RDP, для этого выполните команду:
Enable-NetFirewallRule -DisplayGroup "Remote Desktop"
Для отключения RDP запустите:
Set-ItemProperty -Path 'HKLM:\System\CurrentControlSet\Control\Terminal Server' -name "fDenyTSConnections" -value 1