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

в 8:30, , рубрики: WAC, Windows Admin Center, Windows Server, Блог компании UltraVDS, Серверное администрирование, системное администрирование, хостинг

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

Управляем Windows Server из Windows Admin Center - 1Фото: ТАСС

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

Машин все меньше, а серверов все больше, даже у меня, для «просто посмотреть» образовалось два контроллера домена, файловый сервер, сервер под 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 таким не страдает.

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

(См. wsmprovhost.exe)

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

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

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

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

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

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

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

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

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

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

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

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

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

Установка в качестве шлюза, на отдельный сервер, наиболее безопасный и рекомендуемый вариант. Это аналог схемы с 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, можно только вызывать готовые скрипты.

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

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

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

Выводы

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

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

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

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

Автор: ultra_vds

Источник


* - обязательные к заполнению поля