Удаленного управление windows через консоль

Консоль удаленного рабочего стола(rdp console)

Клиент удаленного рабочего стола (rdp) предоставляет нам возможность войти на сервер терминалов через консоль. Что это означает для нас?

При использовании клиента удаленного рабочего стола Windows в качестве средства подключения к компьютеру с Windows Server 2000/2003 с запущенной службой сервера терминалов, у вас есть возможность подключения на консоль сервера. Используя эту опцию, вы можете войти на сервер, так, как если бы вы сидели прямо перед ним, а не создавать новые сессии через сетевое подключение. Дело в том, что при удаленной установке некоторых программ, могут возникнуть проблемы, которые не позволят вам сделать это из терминальной сессии, поэтому вам понадобиться войти на сервер через консоль. Также некоторые службы, при наличии ошибок, могут выкинуть окно с ошибкой, но не в терминальную сессию, в которой работает пользователь, а именно на консоль.

Для использования этой опции в командной строке, к команде mstsc просто добавьте параметр «/console» («mstsc /console»). Вы также можете просто поставить галочку при создании нового соединения в «terminal services administrative tool» в Windows Server 2003 Adminpak.

В обновленной версии терминального клиента rdp 6.0,6.1 и выше (windows 2008/ windows 7) для тех же самых целей используется команда “mstsc /admin”

Однако, помните, что если Вы зайдете на консоль сервера удаленно, вы просто выкинете человека, который залогинен локально.

Удаленный рабочий стол (RDP). Командная строка

Меня всегда напрягал момент поиска утилиты удаленного рабочего стола в меню Пуск. Никогда не помнил, в каком именно разделе она находится и всегда тратил много времени на поиск.
Так я долго мучился,пока один добрый человек (спасибо тебе, Паша) не показал мне:
Win + R, mstsc

mstsc.exe — такое имя файла имеет утилита удаленного рабочего стола. Просто запомнить, легко вводить.

Параметр Описание
Задает имя файла .rdp для подключения.
/v: Указывает ширину экрана удаленного рабочего стола.
/h: Указывает высоту экрана удаленного рабочего стола.
/public Запускает удаленный рабочий стол в общедоступном режиме.
/span Сопоставление ширины и высоты удаленного рабочего стола с локальным виртуальным рабочим столом и развертывание на несколько мониторов при необходимости.
/multimon Задает расположение мониторов сеанса служб удаленного рабочего стола в соответствии с текущей конфигурацией на стороне клиента.
/edit Открывает указанный файл .rdp для редактирования.
/migrate Переносит устаревшие файлы подключений, созданные диспетчером клиентских подключений, в новые файлы .rdp
/control разрешает управление сеансом
/? Показывает помощь по параметрам командной строки.

Ключ помощи показывает окно с командами, соответствующими текущей версии программы.

Следует заметить, что ключ /console применяется для подключения к сеансу физической консоли на сервере (также известный как сеанс 0). Этот режим использовался в Windows Server 2003. В Windows Server 2008 или Windows Server 2008 R2,а также более новых версий, данный режим является устаревшим, т.к. сеанс 0 стал неинтерактивной сессией, зарезервированной для службы.

Поэтому RDC 6.1 не поддерживает ключ /console. Тем не менее, для обеспечения обратной совместимости, можно использовать параметр /admin для подключения к сеансу физической консоли на сервере под управлением Windows Server 2003. Подробнее можно почитать в данной статье: Изменения для удаленного администрирования в Windows Server 2008

Кроме того, ключ /admin обладает еще и следующими особенностями:

  • При использовании этого ключа с MSTSC соединения не требуется лицензии клиентского доступа (CAL) Terminal Services.
  • Ключ /admin связан с повышением прав. Например, если на пользователя, имеющего полномочия применять ключ /admin, наложен запрет Deny Users Permissions To Log On To Terminal Server, он сможет подключиться через mstsc/admin.
  • Даже если сервер терминала не принимает новых сеансов, все же можно создать сеанс /admin.
  • Сеанс /admin не учитывается в счет предела, установленного на сервере терминала с целью ограничить число сеансов.

Как обычно, ссылки к дополнительной информации:

Все статьи на тему RDP и устранения проблем в его работе на нашем сайте.

Windows/Удалённое управление —

Sconfig.cmd

Запоминать команды админы Win не очень любят, в системе можно найти удобную оболочку для большинства консольных команд Sconfig.cmd. Изначально она разрабатывалась для Server Core, но в Win2021R2 доступна и в режиме полной установки сервера.

Sconfig не требует знания всех ключей и позволяет, перемещаясь по 15 пунктам, быстро произвести основные установки или выполнить некоторые команды: добавить сервер в домен или рабочую группу, сменить имя компьютера, добавить локального администратора, настроить удаленное управление через WinRM и удаленный рабочий стол, настроить сеть, Windows Update, время и дату, перезагрузить и выключить компьютер.

А вот с монтированием сетевых дисков не все так просто. Традиционно эта операция выполняется при помощи net use:

Базовые операции

На самом деле развитие консольных утилит все это время тоже не стояло на месте. Список команд не сильно изменился: net, netdom, whoami, скрипт активации slmgr.vbs, программа управления службами sc, сетевые утилиты для настройки и диагностики ipconfig, netsh, netstat/nbtstat, arp/getmac, ping, tracert, nslookup и многие другие.

Такая судьба постигла консольный вариант диспетчера сервера ServerManagerCmd.exe и утилиту установки компонентов OCSetup.exe, которые, появившись в Win2008, пропали уже в Win2021. Теперь для установки компонентов из консоли используются командлеты Install-WindowsFeature и Add-WindowsFeature.

Читайте также:  Как восстановить оем версию windows 10

Консольные утилиты по-прежнему привычнее, чем командлеты, но результат, полученный при помощи PowerShell, позволяет выбирать больше параметров, фильтровать их, обрабатывать в скриптах. А главное — теперь нужные данные можно получить не только с локальной, но и с удаленной системы, и в удобном виде. Все это говорит о том, что нужно уже быть готовым к переменам.

В последних редакциях ОС ярлык для запуска cmd.exe спрятали подальше в меню. Правда, и особой необходимости в его использовании нет, так как все традиционные консольные команды можно вводить непосредственно в консоли PowerShell (хотя есть и нюансы), обладающей несомненным преимуществом — автодополнением (по Tab).

Постепенно на замену старым добрым утилитам появляются соответствующие командлеты, которые выдают аналогичный результат. Попробуем разобраться со всеми операциями по порядку, рассмотрим типичные задачи с использованием консольных команд и PowerShell.

Сразу после установки операционная система получает имя, сгенерированное случайным образом. Чтобы переименовать систему и подключить ее к домену, используется утилита netdom:

Добавление пользователя в локальную группу

1) Если у нас есть возможноть удалённого управления ПК, то проще всего запустить на локальном ПК Оснастку управелния компьютером

и подключиться к удалённому ПК:

  1. Щёлкнуть правой клавишей мышы по корневому пункту бокового меню «Управление компьютером» и выбрать в контекстном меню пункт « Подключиться к другому компьютеру… «
  2. Ввести имя или IP адрес ПК или нажать «Обзор…» и поискать в домене

После подключения выбрать в боковом меню: Локальные пользователи и группы — Группы

И добавить нужных пользователей в нужную группу.

2) Если возможности удалённого управления нет, то можно попробовать его получить отключив брандмауэр на удалённом ПК и включив на нём службу «Удаленный реестр» (см. выше). Или получив с помощью утилиты psExec доступ к командной строке на удалённом ПК управлять пользователями и группами через командную строку.

Как настроить подключение к rdp из интернета

RDP разрешает любые подключения, будь то из локальной сети или из Интернета. Для подключения из Интернета требуется, чтобы у вашего компьютера был белый IP.


Если же ваш Интернет-провайдер использует NAT, то вам нужно арендовать внешний (белый) IP адрес.

Если вы подключены к роутеру (они тоже всегда используют NAT), то вам нужно настроить проброску (форвардинг, переадресацию) портов следующим образом:

1. Начать нужно с «Настройки постоянного IP в Windows».

2. Последующие настройки нужно делать в роутере. Поскольку у всех разные модели роутеров, то конкретные действия и названия вкладок в панели администрирования роутеров могут различаться. Главное понять суть и найти соответствующую вкладку в роутере. Помните, что нужно перенаправить порты TCP и UDP с номером 3389.

Перейдите в панель управления роутером. В настройках роутера перейдите в раздел «Интернет» (может называться WAN), затем во вкладку «Переадресация портов» (может называться «Перенаправление портов», «Port Forwarding»):

3. Добавьте новое правило:

4. И нажмите кнопку «Добавить».

5. Сохраните сделанные изменения.


IP адрес компьютера Windows можно посмотреть командой:

Про переадресацию портов, о том, что это такое (на примере веб сервера), дополнительно читайте в статье «Apache Forwarding — проброска портов веб-сервера».

Ещё одним вариантом является использование VPN (виртуальной частной сети), в которой каждому компьютеру присваивается локальный адрес, но сама виртуальная частная сеть включает компьютеры которые могут быть размещены за пределами реальной частной сети. Подробности о VPN смотрите в статье «Доступ к службам компьютера через NAT и с серым IP с помощью OpenVPN».

Настраиваем windows remote desktop в командной строке. подключение к удаленному рабочему столу с помощью встроенного в windows rdp-клиента

Если вы интересуетесь использованием Windows Remote Desktop, то вы уже наверняка знаете, что эта служба делает, но, возможно, у вас нет полного представления о ее возможностях. Windows Remote Desktop позволяет вам удаленно контролировать практически любой ПК или сервер с Windows. Вы можете удаленно управлять ПК с ПК, сервером с сервера, ПК с сервера или сервером с ПК.

Серверный компонент RDP встроен в операционную систему Windows — в XP, Vista и Windows 7 (но вы должны включить remote desktop на целевом компьютере). Если вы удаленно работаете с компьютером, это соединение с ПК является единственным, и вы при этом контролируете консоль.

Если же вы работаете с сервером (скажем, с Windows 2003 или 2008), вы можете подключить многих пользователей к серверу с помощью службы Terminal Services.

Однако, вне зависимости от того, используете ли вы серверную ОС или нет, клиентская часть одна и та же — Remote Desktop Connection или клиент Remote Desktop, как я ее называю. Исполняемый файл для удаленного соединения называется mstsc.exe, он располагается в %systemroot%/system32/mstsc.exe.

Давайте же разберемся с тем, что вы можете сделать с помощью mstsc.exe»

Настройки mstsc

Рассмотрим дополнительные настройки программы mstsc, которые открываются при нажатии на кнопку «Показать параметры»:

На вкладке «Общие» вы можете указать имя пользователя.

Вы можете поставить галочку «Разрешить мне сохранять учётные данные» чтобы не вводить каждый раз имя пользователя и пароль.


При желании вы можете сохранить настройки в RDP файл или выбрать сохранённый ранее файл с настройками RDP.

На вкладке «Экран» доступны настройки:

  • Укажите размер удалённого рабочего стола. Крайнее правое положение ползунка соответствует полноэкранному режиму.
  • Использовать все мои мониторы для удалённого сеанса
  • Укажите глубину цвета для удалённого сеанса.
  • Отображать панель подключений при работе на полном экране

На вкладке «Локальные ресурсы» вы найдёте настройки:

  • звука (где проигрывать и записывать звуки удалённого рабочего стола)
  • клавиатуры (где будут работать сочетания клавиш — на текущем или удалённом рабочем столе)
  • локальные ресурсы (использовать ли принтеры, буфер обмена, смарт-карты, порты, диски, устройства видеозахвата и PnP устройства)
Читайте также:  Можно ли удалить windows live id sign in assistant


Вкладка «Взаимодействие»:

В разделе «Быстродействие» вы можете выбрать тип подключения и включить или отключить второстепенные функции, чтобы при любой скорости Интернета работа с удалённым столом была комфортной.

По умолчанию качество соединения определяется автоматически и также автоматически включаются или отключаются второстепенные функции.

Вручную можно включить или отключить (функции, зависимые от качества соединения):

  • Фон рабочего стола
  • Сглаживание шрифтов
  • Композиция рабочего стола
  • Отображать содержимое окна при перетаскивании
  • Визуальные эффекты при отображении меню и окон
  • Стили оформления


Также вы есть настройки:

  • Постоянное кэширование точечных рисунков
  • Восстановить подключение при разрыве

Проверка подлинности сервера: Проверка подлинности сервера удостоверяет, что подключение выполняется к правильному удалённому компьютеру. Строгость проверки, необходимая для подключения, определяется политикой безопасности


Если не удалось подтвердить подлинность удалённого компьютера, то доступны варианты:

  • Предупреждать
  • Подключаться без предупреждения
  • Не соединять

Подключение из любого места: Настройка параметров для подключения через шлюз при удалённой работе.

Настройки сети

Комплект консольных сетевых утилит достаточно хорошо известен администраторам, ведь их приходится использовать довольно часто, как при установке, так и для диагностики. Настраивают сетевой интерфейс при помощи netsh interface. Для примера просмотрим список и для одного из доступных установим IP и DNS-сервер:

> netsh interface ipv4 show interfaces
> netsh interface ipv4 set address name=»1″ source=static address=192.168.1.10 mask=255.255.255.0 gateway=192.168.1.1.
> netsh interface ipv4 add dnsserver name=»Local» address=8.8.8.8 index=1

Для установки и изменения параметров сетевого интерфейса при помощи PowerShell 3.0 и выше используются командлеты New-NetIPAddress и Set-NetIPAddress.

PS> Get-NetIPInterface
PS> Set-NetIPAddress –InterfaceAlias Ethernet –IPv4Address 192.168.1.10 –PrefixLength 24 –DefaultGateway 192.168.1.1
PS> Set-DNSClientServerAddress –InterfaceAlias Ethernet -ServerAddresses «192.168.1.10»,»8.8.8.8″

Причем New-NetIPAddress позволяет задавать несколько IP для одного интерфейса. Вместо InterfaceAlias можно использовать индекс InterfaceIndex, который легко узнать в выводе Get-NetIPInterface.

На смену команде route пришел набор командлетов, очень простых и понятных в использовании.

PS> Get-NetRoute
PS> New-NetRoute -DestinationPrefix «0.0.0.0/0» -NextHop «10.10.10.1» -InterfaceAlias Ethernet

Аналогом ping служат два командлета Test-Connection и Test-NetConnection (сокращенно tnc). Первый очень простой и напоминает обычный ping, второй позволяет проверить доступность определенного порта или системы с разных ПК. Например, посмотрим, на каких ПК в группе включен RDP, и проверим подключение к example.org с двух систем:

PS> Test-NetConnection -ComputerName example.org -source localhost, SRV02
PS> (Get-ADComputer -LDAPFilter «(name=office*)»).DNSHostName | Test-NetConnection -Port 3389

Но иногда вместо одной команды придется запомнить несколько командлетов. Так, состояние сетевых интерфейсов традиционно можно узнать при помощи ipconfig. До Win2021/8, чтобы сделать то же самое при помощи PowerShell, приходилось обращаться непосредственно к WMI. Например, нам нужны МАС- и IP-адреса:

PS> Get-WmiObject -Class Win32_NetworkAdapterConfiguration -Filter IPEnabled=TRUE | Select MACAddress,IPAddress

Нет подключения( )

Иногда пользователи могут столкнуться с ситуацией, когда rdp не работает. При этом важно отметить, что, если судить по статистике, пользователю удается все же попасть на сервер, но какие-то инструменты сети не пускают его дальше. Для решения этой проблемы есть несколько действенных способов.

Полезный, практичный инструмент, позволяющий запускать приложения из-под DOS. Хорошо ею пользоваться при сбоях, настройке системы. Запускается через «Пуск», найти её там можно в папке стандартных программ. А также открывается через «Выполнить», если вписать в строку cmd.

Как выполнить запуск рабочего стола посредством командной строки.

Помощь этой утилиты весьма полезна, когда у вас не загружается рабочий стол. Обычно причиной этой проблемы становится вредоносное ПО, подправившее реестр . Ниже объясняется, как запустить рабочий стол через командную строку, подсоединиться удалённо с другого устройства.

За процесс запуска области отвечает файл explorer.exe. Иногда, когда происходит сбой из-за перепадов напряжения, отключения электричества или других причин, нарушается интерфейс, затем при последующем включении происходят неполадки в работе.

По сути, сам рабочий стол представляет собой папку, инициируемую тем самым процессом explorer.exe. Значит, чтобы вернуть нормальное состояние, нужно просто запустить настоящий, не изменённый вирусами процесс. Если папка, путь по её адресу повреждены, explorer.exe функционирует некорректно.

Восстанавливать работоспособность, возобновлять нормальное течение процессов удобно через командную строку.

А ещё можно пройти по пути «Пуск» — «Все программы» — «Служебные», там также кликнуть ПКМ по значку утилиты, запуская затем её от администратора.

Отличия powershell и cmd в windows


В Windows PowerShell уже давно устанавливается по умолчанию.

Чтобы открыть PowerShell, нажмите Win x и выберите Windows PowerShell (администратор):

В приглашении командной строки вы увидите PS и текущую рабочую директорию:


Чтобы открыть CMD нужно нажать Win r, напечатать cmd и нажать ENTER:

Приглашение командной строки CMD выглядит так:

В CMD можно запустить:

  • утилиты командной строки Windows
  • встроенные функции CMD
  • файлы .bat


В PowerShell можно запустить всё то же самое, что и в CMD, а также дополнительно:

  • команды языка PowerShell
  • скрипты PowerShell

В PowerShell сработает такая простая команда как dir:

Но если выполнить эту команду в PowerShell и в CMD, то можно увидеть, что вывод этих команд различается.

А если попытаться выполнить эту команду с опцией, например:


То в CMD она сработает, а в PowerShell завершится ошибкой.

Дело в том, что вместо реализации таких же утилит как в CMD, в PowerShell используются собственные командлеты, работа которых различается, например, выводом или поддержкой опций. В PowerShell сработают команды cd, ls, dir, cat, man, kill, mount, move, sort, pwd, wget, curl и другие, знакомые по Linux, но это НЕ ОЗНАЧАЕТ что эти команды поддерживают те же самые опции, что и опции в Linux.

Читайте также:  Legacy windows detected please enable

Способы новые или куда же без powershell

PowerShell, оправдывая свое название, может подключаться к удаленным компьютерам при помощи WMI, RPC и WS-Management (WSMan). Использование последнего метода требует предварительной настройки.

Командлеты, не требующие предварительной настройки, как правило, имеют параметр ComputerName, но не имеют параметра Session. Посмотреть список таких командлетов можно командой:

Для настройки WSMan в общем случае достаточно выполнить команду Enable-PSRemoting-Force. Она запустит службу удаленного управления WinRM и пропишет исключения в фаерволе ― в принципе, это можно сделать для всего домена при помощи групповых политик. Подробнее настройка описана в документации.

После того как все компьютеры будут готовы принимать запросы, мы сможем подключаться при помощи соответствующих командлетов PowerShell. Для проверки возможности подключения используется командлет Test-WSMan.


Проверка возможности подключения.

Для того чтобы выполнить определенную команду или скрипт, используется командлет Invoke-Command со следующим синтаксисом:

Удаленное управление сеансом пользователя windows стандартными средствами

Однажды мне захотелось управлять одним из домашних компьютеров удаленно, но при этом взаимодействовать с текущим пользователем, но компьютер был довольно слабый и при запуске например TeamViewer’а нагрузка процессора поднималась до 98% и компьютер начинал заметно тормозить. Попробовал стандартный RDP, но тогда «выбивался» текущий пользователь и для входа локально приходилось набивать пароль. Но чуть позже мне случайно попалась команда

Наблюдать за другим сеансом служб удаленных рабочих столов.
SHADOW < | >[/SERVER: ] [/V] Имя сеанса.
Идентификатор сеанса.
/SERVER: Сервер терминалов (по умолчанию текущий).
/V Отображение информации о выполненных действиях.

Например для управления консольным сеансом(пользователем который непосредственно сидит перед компьютером) текущего терминального сервера достаточно ввести команду выполнить — shadow 0 . Выход осуществляется через alt * на обычном компьютере и через ctrl * на терминальном сервере.
Но есть неприятная особенность: эта команда работает только из под rdp сессии. Но мой управляемый компьютер был под управлением windows xp поэтому пришлось расширить его возможности сделав из него терминальный сервер (в интернете полно статей как это можно сделать). Тогда все стало довольно просто, подключаемся любым пользователем с правами администратора по rdp и запускаем команду выполнить — shadow 0 попадаем в консольный сеанс, собственно что мне и нужно было. Для уменьшения аппаратных затрат можно при создании rdp подключения выбрать функцию « При подключении запускать следующую программу » и там набрать shadow 0 как на рисунке.

Тогда получается что запускается всего 2 процесса.

Для того что бы все это работало нам необходимо сначала включить RemoteRPC, например через реестр:

После этого можно будет через Диспетчер служб удаленных рабочих столов посмотреть какие пользователи залогинены на компьютере, какие у них id и какие процессы запущены (жаль только названия, нет информации о нагрузке).

По умолчанию пользователю будет задаваться вопрос с разрешением управления, можно отключить вопрос или сделать только удаленное наблюдение, меняется через реестр:

[HKEY_LOCAL_MACHINESOFTWAREPoliciesMicrosoftWindows NTTerminal Services]«Shadow»=dword:0000000 x

Где x может иметь значения:
0 — удаленное управление не разрешено
1 -полный контроль с разрешения клиента
2 -полный контроль без разрешения клиента
3 -наблюдение за сеансом с разрешением клиента
4 -наблюдение за сеансом без разрешения клиента

По умолчания этой строчки вообще нет и её нужно будет создавать.

Так же можно включить через групповые политики локальные или доменные. Для включения локально запускаем gpedit.msc — выбираем административные шаблоны — добавление и удаление шаблонов , добавляем System.adm из папки WINDOWSinf

Теперь настраиваем: конфигурация компьютера — административные шаблоны — компоненты windows — службы терминалов — устанавливает правила для удаленного управления . Для windows xp.

И конфигурация компьютера — административные шаблоны — компоненты windows- службы удаленных рабочих столов – узел сеансов удаленных рабочих столов – подключения – устанавливает правила удаленного управления для пользовательских сеансов служб удаленных рабочих столов . Для windows 7.
Все это работает и в домене, если у пользователя есть соответствующие права.

В доменных настройках профиля пользователя тоже есть настройка подобных прав (я встречал эти настройки даже в домене win 2000)

Если рассматривать терминальный сервер, то там через свойства RDP(через конфигурация узла сеансов удаленных рабочих столов ) можно выставить любому пользователю права на удаленное управление,

и отдельно настроить взаимодействие или управление удаленным сеансом.

Для удобства можно подключаться через диспетчер задач

Управление byod при помощи powershell

Одна из самых больших проблем, с которыми сталкиваешься при работе с моделью BYOD, — отсутствие управления устройствами пользователей. В Win2021R2 этим заправляет Device Registration Service (DRS), при регистрации на устройство устанавливается сертификат, а в AD создается новый объект устройства.

Этот объект устанавливает связь между пользователем и устройством, создавая нечто вроде двухфакторной аутентификации. Пользователи получают доступ к корпоративным ресурсам, которые были недоступны, когда они работали за пределами доменной сети. Для работы потребуется роль Active Directory Federation Services (AD FS) и собственно служба DRS (устанавливается при помощи командлета Install-AdfsFarm). Теперь инициализируем службу и приступаем к регистрации устройств пользователей.

PS> Initialize-ADDeviceRegistration -ServiceAccountName exampleadfsfarm
PS> Enable-AdfsDeviceRegistration

В консоли AD FS Management переходим к Authentication Policies, выбираем Edit Global Primary Authentication и активируем Enable Device Authentication. Теперь, используя командлет Get-AdfsDeviceRegistration, можем просматривать и подтверждать устройства ().

Управление wfas

Настройка брандмауэра Windows в режиме повышенной безопасности WFAS (Windows Firewall with Advanced Security) традиционно производится при помощи netsh advfirewall, появившейся в ОС начиная с Win2k8/Vista и практически не изменившейся с тех пор.

Контекст advfirewall позволяет использовать семь команд (export, import, dump, reset, set, show и help) и четыре субконтекста (consec, firewall, mainmode и monitor). Просмотреть подробности можно, использовав ключ help или ‘/?’, да и в Сети доступно достаточное количество примеров.

Оцените статью