Программа для подключения к текущим RDP-сессиям по средствам Shadow-подключения. Так же содержит набор модулей, направленного на автоматизацию удаленного администрирования и взаимодействия с ОС Windows.
Можно использовать как альтернативное средство для удаленного подключения, таким как Radmin или VNC, которые требуют установки программного обеспечения по модели клиент-сервер. Используется 100% кода на PowerShell и Windows Forms (без использования Toolbox), не содержит зависимостей в виде модулей. Протестировано на Windows Server 2016-2019 DC и Windows 10 Pro, не зависит от локализации ОС.
-
Get-Query - используется для парсинга программы query.exe с выводом в PSObject, с целью отображения текущих сессий и запущенных пользовательских процессов на компьютере (версия 1.2).
-
Get-Query-Network - модуль для поиска пользователей в сети.
-
Get-Invent - используется для сбора данных об оборудовании на удаленном компьютере с выводом развернутого отчета в HTML-файл (версия 1.1).
-
RSA-Modules - сборник некоторых функций, которые я выделил в отдельные модули.
При выборе сервера и нажатии кнопки Query отображается список текущих пользователей в виде таблицы, предварительно проверяется доступность хоста (ping) и WinRM а так же uptime с выводом в status bar. Для изменения списка компьютеров в меню выбрать File - List Change (Ctrl+S), для обновления списка - List Update (Ctrl+R). При выборе пользователя, можно произвести четыре действия: Connect (Shadow-подключение) с возможностью запроса на подключение и без (последнее удобно настраивается через GPO), отключение пользователя (выход из системы), отображение списка запущенных процессов пользователя с возможность их завершения (правкой кнопкой мыши по выбранному процессу - Stop Process) и отправка набранного сообщения всем пользователям на сервере или выбранному в таблице. Есть возможность заполнить список серверов компьютерами AD (Ctrl+D) а так же вывести список в формате таблицы (Ctrl+T) с возможность сортировки и взаимодействия с выбранным компьютером.
Для подключение к серверу через rdp используется mstsc с ключем /admin, что позволяет подключаться к RDSH-серверу минуя Broker. Для аутентификации используется cmdkey, после прохождения единоразовой аутентификации (File - Authentication), используется предварительная аутентификация на все сервера в списке и действует до закрытия программы, что позволяет не хранить пароль администратора в коде, а так же хранилище ключей ОС (которые можно скомпрометировать).
- Admin - Services - выводит списка служб на локальном или удаленном компьютере с возможность их запуска/перезапуска и остановки.
- Admin - All Remote User Process - используется для отображения списка всех пользовательских процессов с возможность их остановки.
- Admin & WMI - Software - выводит список установленного программного обспечения с возможность его удаления
- WMI - Windows Update - вывода списка обновлений с дальнейшим поиском по HotFixID в DISM Packages и удалением.
- Admin - SMB Open Files - отображение списка используемых сетевых сесурсов пользователями в сети с возможность закрытия их сессии.
- Admin - Get-Netstat - вывод списка слушающих и установленных TCP-соединений с преобразованием имени удаленного хоста (nslookup) и используемого процесса.
- Admin - Get-RemoteDNS - используется для удаленного просмотра на DC (не требует установки модуля из состава RSAT) списка всех DNS зон и дочерних записей выбранной зоны с возможностью удаления выбранной записи.
- Admin - GPUpdate - обновление групповых политик на удаленном компьютере.
- Admin - GPResult - составление сводного отчёта по результатам групповых политик в формате HTML для указанного пользователя на выбранном хосте.
- Power - Reboot & Power Off - перезагрузка или выключение хоста с задержкой 60 секунд.
- Power - Screen lock & Sleep mode - включение/отключение блокировки экрана и спящего режима на удаленном компьютере.
- Power - Get-ARP & Get-DHCP - используются для поиска MAC-адреса выключенного компьютера с целью его включения с помощью Wake-on-Lan.
- Event - логи питания (Power) и пять журналов событий для анализа подключений/отключений сессий.
- Broker - автоматизация командлетов взаимодействия с RDSH-фермой.
- WMI - Logical Disk & Memory - выводит общий и доступный объём локических дисков и оперативной памяти.
- WMI - Drivers - отобразить список драйверов.
- WMI - File Share - список общедоступных ресурсов на хосте (директорий или принтеров).
- WMI - Power RDP & Power NLA - проверяет статус Remote Desktop Protocol и Network Level Authentication на удаленно хосте с возможность включения и отключения.
WMI - Setup - установка программного обеспечения на удаленный компьютер. Через install-package (сейчас используется этот вариант) и два метода через WMI. В первом случае установка происходит не на всех серверах (не зависимо от использования версии TLS), в случае с wmi установка происходит из UNC-пути только на тот же сервер, где лежит msi-пакет (в т.ч. через invoke session с предварительной аутентификацией на удаленной машине, где директория доступна по пути через icm).
- Отображает текущее время на сервере и разницу с сервером источника (localhost).
- Узнать источник времени, а так же частоту и время последней синхронизации (последнее отображается в зависимости от языкового пакета на удаленной машине).
- Проверка сервера как источника времени.
- Изменить на удаленном сервере источник времени на ближайший DC (с ролью PDC) в подсети.
- Изменить на внешний источник времени (например: ru.pool.ntp.org).
- Незамедлительно синхронизировать время на удаленном сервере с источником.
- Узнать редакцию и версию ОС, канал получения лицензии, тип ключа, статус активации и сервер лицензирования.
- Узнать адрес KMS-сервера в сети по srv-записи.
- GVLK-активатор. Содержит публичные ключи GVLK (Generic Volume License Key) с возможностью удаленной активации.
- Указать в ручную KMS-сервер (например, если KMS-сервер не опубликован в DNS).
- Запросить (обновить) лицензию с KMS-сервера.