Управляем Windows Server из Windows Admin Center

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

Прежде чем перейти к статье, хочу вам представить, экономическую онлайн игру Brave Knights, в которой вы можете играть и зарабатывать. Регистируйтесь, играйте и зарабатывайте!

В данной статье мы продолжаем рассказывать про работу с Windows Server Core 2019. В прошлых постах мы рассказали как готовим клиентские виртуальные машины на примере нашего нового тарифа VDS Ultralight с Server Core за 99 рублей. Затем показали как работать с Windows Server 2019 Core и как установить на него GUI. Сегодня мы поговорим про управление с помощью Windows Admin Center. 

Фото: ТАСС

Головной болью было, наверное, по соображениям безопасности, разделять роли серверов. Заводить несколько машин, чтобы физически разделить контроллер домена и файловый сервер.
Благо нам на помощь пришла виртуализация, и теперь изолированно друг от друга могут работать несколько служб, которые из соображений безопасности не могут работать на том же сервере. Виртуализация принесла массу удобства, развертывание виртуальных машин из одного шаблона экономит время специалистам, и физически, все в одной коробке с мощным железом.

Машин все меньше, а серверов все больше, даже у меня, для «просто посмотреть» образовалось два контроллера домена, файловый сервер, сервер под Java приложения и еще пачка веб серверов, поэтому давайте поговорим о том, как можно эффективно управлять серверами на Windows, не отрывая левой руки от кофе.

— С помощью Powershell!

Конечно да, но… нет. Продукт позиционируется как удобный инструмент управления гигантской инфраструктурой. Понятно, что это не совсем так, для таких случаев есть Powershell ISE и скрипты, поэтому хотелось бы рассмотреть действительно полезные юзкейсы. Если у вас есть свой опыт, которым вы вы хотели поделиться, мы можем добавить его в эту статью.

TL;DR


Windows Admin Center лучше подходит для управления стоковыми компонентами. На текущий момент только RSAT может управлять установленными ролями. 

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

Сводная таблица того, он умеет и не умеет:

Управление системой
WAC RSAT
Управление компонентами Да Да
Редактор реестра
Да
Нет
Управление сетью
Да
Да
Просмотр событий
Да
Да
Общие папки
Да
Да
Управление дисками
Да
Только для серверов с GUI
Планировщик заданий
Да
Да
Управление устройствами
Да
Только для серверов с GUI
Управление файлами
Да
Нет
Управление пользователями
Да
Да
Управление группами
Да
Да
Управление сертификатами
Да
Да
Обновления
Да
Нет
Удаление программ
Да
Нет
Системный монитор
Да
Да

Управление ролями
WAC
RSAT
Advanced Thread Protection ПРЕВЬЮ Нет
Windows Defender
ПРЕВЬЮ
Да
Контейнеры
ПРЕВЬЮ
Да
AD Administrativ Center
ПРЕВЬЮ
Да
AD Domain and Trusts
Нет
Да
AD sites and services
Нет
Да
DHCP
ПРЕВЬЮ
Да
DNS
ПРЕВЬЮ
Да
Диспетчер DFS
Нет
Да
Диспетчер GPO
Нет
Да
Диспетчер IIS
Нет
Да

Превью — установка бета версий компонентов для WAC, не входит в состав сборки. Перечислять все не нужно, потому что буквально все компоненты управляются только с помощью RSAT.

Нюансы


Powershell в Windows Admin Center не имеет своей среды сценариев аналогичной Powershell ISE.
Windows Admin Center не поддерживает Powershell ниже 5.0, на старых машинах обязательно нужно ставить новый Powershell, если хотите использовать его.

Главным минусом Windows Admin Center в микро инстансах является потребление оперативной памяти сервера. Он создает четыре сессии по 50-60 мегабайт каждая, и каждая эта сессия остается даже после закрытия Windows Admin Center. 

Та же самая проблема и с Powershell через Enter-PSSession, он так же создает новую сессию, и если просто закрыть окно терминала, сессия весом и 70 мегабайт так и останется на удалённом сервере, если её не закрыть её перед выходом с помощью Exit-PSSession или Remove-Pssession.
При использовании Windows Admin Center с этим придется мириться, он отнимет около 170 мегабайт ОЗУ, RSAT таким не страдает.


(См. wsmprovhost.exe)

Упрощаем работу


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

Импортировать список серверов можно с помощью txt файла, перечислив имена серверов переносом строки, как и в RSAT.

Что тоже радует, ранее, чтобы интегрировать в AD виртуальную машину на Server Core, приходилось делать это через sconfig, а это значит нужен прямой доступ к его экрану. В случае с хостингами приходилось делать все это через VNC. Теперь, при переходе на главную страницу можно нажать «Изменить идентификатор компьютера» и ввести в домен.



Кстати, чтобы ввести в домен Windows Server 2019, больше не требуется делать Sysprep, потому что Sysprep тоже нужно было завершать через VNC.

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

Это выходит так же быстро, как и через WinRM, только одной рукой.



Повышаем безопасность


На текущий момент есть четыре типа развертывания. Локальный, в качестве шлюза, установка на один из продакшн серверов и в составе кластера.


*Картинка с сайта майкрософт

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

Согласитесь, гораздо удобнее держать на одной вкладке видосы и мемасы, а на другой Windows Admin Center, нежели целиком терять подключение к ютубу из-за входа в защищенную сеть.
Как же обезопасить все свои N серверов? С помощью следующего скрипта:

## Список серверов через запятую ##
$servers = Get-Content -Path .\Servers.txt
## Список правил через перенос строки ##
$rules = Get-Content -Path .\Rules.txt
## IP адрес нашего гейта с установленным WAC ##
$gate = "1.1.1.1"
 
$MySecureCreds = Get-Credential
 
foreach ($server in $servers.Split("`n")) {
    foreach ($line in $rules.Split("`n")) {
        Invoke-Command -ComputerName $server -ScriptBlock {
            Set-NetFirewallRule -Name $Using:line -RemoteAddress $Using:gate 
        } -Credential $MySecureCreds 
    }
}

# список правил, RULES.txt#
 
RemoteDesktop-UserMode-In-TCP
RemoteDesktop-UserMode-In-UDP
WINRM-HTTP-In-TCP
WINRM-HTTP-In-TCP-PUBLIC

# список ваших серверов, SERVERS.txt#
 
1.1.1.1, 1.1.1.2, 1.1.1.3

Этот скрипт изменит стандартные правила брандмауэра таким образом, что вы сможете использовать RDP и WinRM только с определенного IP адреса, понадобится для организации безопасного доступа к инфраструктуре.

Powershell в Windows Admin Center не имеет своей среды сценариев аналогичной Powershell ISE, можно только вызывать готовые скрипты.



Кстати, вот так выглядит RDP на Windows Server Core.



Выводы


На текущий момент Windows Admin Center не способен заменить RSAT, однако в нём уже присутствуют функции, которых нет у RSAT. Добавляются старые оснастки, которые не так удобны для управления через браузер.

Странным является приоритет разработки, наиболее активно добавляются функции интегрированные с Azure, хостингом от Майкрософт, вместо реально полезных функций.
К сожалению, пока что, управлять всеми функциями Windows Server с удобствами можно только подключившись к нему по RDP.

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

Источник: https://habr.com/ru/company/ultravds/blog/476416/


Интересные статьи

Интересные статьи

Когда мы говорим о KPI и эффективности, возникает вопрос: а что вообще должен отслеживать SOC в своей повседневной деятельности? С одной стороны, тут все понятно: во-первых, соблюдение SL...
Parallels Remote Application Server 18, выходящий в декабре текущего года, значительно расширит возможности ИТ-администраторов и географически распределенных пользователей с помощью и...
Исторически утилиты командной строки в Unix-системах развиты лучше чем в Windows, однако с появлением нового решения ситуация изменилась. Windows PowerShell позволяет системным администраторам...
Доброго времени суток! В данной статье я опишу создания своих элементов для C# Windows Form. Для примера буду создавать таблицу со всем функционалом DataGridView. Позже перейдем на свои эл...
Не так давно на Хабре публиковалась новость о раскрытии кода Калькулятора Windows, одной из наиболее известных программ в мире. Исходный код этого ПО выложен на GitHub. Тогда же говорилось...