Налаштування віддаленого доступу до Hyper-V, Для системного адміністратора -Nikolay Alekseyev - s blog
Налаштування віддаленого доступу до Hyper-V Для системного адміністратора
Знайшов корисні статті по роботі з HV. Автор: Олексій Кібкало
Делегування прав на Hyper-V
За умовчанням Hyper-V дозволяє створення та управління віртуальними машинами лише адміністраторам. Сьогодні ми поговоримо про те, як делегувати ці права користувачам, які не мають права адміністратора сервера.
Операція (Operation)
Завдання (Task)
Завдання - це група операцій, потрібних для виконання деяких дій. За замовчуванням ми не створюємо жодних завдань, але якби ми могли створити завдання control_VM, то нам би потрібно було додати до цієї групи операції із запуску (op_Start_VM), зупинки (op_Stop_VM), призупинення (op_Pause_VM) і перезапуску (op_Restart_VM) для виконання необхідних задачі дій.
Роль (Role)
Роль визначає посаду, коло завдань чи зону відповідальності користувача. Наприклад, може знадобитися роль Virtual_Network_Admin. Ця роль матиме права на всі операції та завдання, пов'язані з віртуальними мережами. У разі потреби цю роль можна буде призначати користувачам.
Область (Scope)
Область дозволяє вказати, які об'єкти управляються конкретними ролями. Якщо у вас є система, і ви хотіли б бути дати користувачеві адміністративний доступ до певного набору віртуальних машин в ній, вам потрібно створити область, що містить ці конкретні віртуальні машини, а потім застосувати ваші налаштування до цієї області.
За замовчуванням (Default Scope)
За замовчуванням область присвоюється віртуальним машинам, для яких явно не задана інша область.
На цьому ваше завдання виконане. Користувач можеповністю контролювати Hyper-V, не будучи адміністратором на цьому сервері. Делегування гранулярних прав на конкретні віртуальні машини здійснюється таким самим чином.
Налаштування віддаленого доступу до Hyper-V
Ми тільки-но розглянули, як делегувати користувачеві права на управління Hyper-V. Але цими правами користувач зможе скористатися лише працюючи на сервері локально.
Для того, щоб керувати гіпервізором з іншого комп'ютера, користувачу, який не є адміністратором, потрібно виконати ряд налаштувань як на стороні сервера, так і на стороні клієнта.
Описані в цій статті кроки застосовуються до версії RC0 гіпервізора Hyper-V та RC0 версії клієнтської утиліти управління Hyper-V Manager для Vista SP1 (x86 та x64).
Отже, на сервері слід виконати такі кроки:
- Дозволити у Windows Firewall правило Windows Management Instrumentation (WMI) наступною командою:
netsh advfirewall firewall set rule group="windows management instrumentation (wmi)" new enable=yes
Увага: у різних локалізованих ОС вбудовані правила брандмауеєра можуть бути по-різному. Необхідно вказати назву правила саме так, як вона виглядає в інструментах керування Windows Firewall. Наприклад, в українській версії Windows Server 2008 наведений вище рядок буде виглядати так:
netsh advfirewall firewall set rule group="Інструментарій керування Windows (WMI - вхідний трафік)" new enable=yes
- Надати користувачеві права на віддалений запуск (remote launch and activation ) у DCOM. Це можна зробити як для конкретного користувача або групи, так і для всіх AUTHENTICATED USERS.
- НатиснітьStart,виберітьRun, запустітьdcomcnfg.exe.
- УComponent Services розкрийтеComputers, правою кнопкою натиснітьMy Computer і виберіть у меню пунктProperties.
- УMy Computer Properties розкрийтеCOM Security.
- УLaunch and Activation Permissions виберітьEdit Limits.
- У випадку, якщо користувач не вказаний у спискуGroups of user names у вікніLaunch Permission, додайте його кнопкоюAdd.
- УLaunch Permission виберіть користувача або групу та в колонціAllow уPermissions for user вкажітьRemote Launch таRemote Activation >. НатиснітьOK.
- Надати користувачеві права на віддалене управління (remote enable ) у просторі імен (namespace) rootCIMv2 та rootvirtualization. Це можна зробити як для конкретного користувача чи групи, чи для AUTHENTICATED USERS.
- УControl Panel зайдіть уAdministrative Tools і запустітьComputer Management.
- УComputer Management розкрийтеServices and Applications, правою кнопкою виберітьWMI Control і натиснітьProperties.
- У закладціSecurity виберітьAdvanced.
- У випадку, якщо користувач не вказаний у спискуPermission у вікніAdvanced Security Settings, додайте йогоAdd.
- УAdvanced Security Settings виберіть ім'я користувача та натиснітьEdit.
- У випадаючому менюApply To вікнаPermission Entry виберітьThis namespace and subnamespaces і вкажітьRemote Enable у колонціAllow. НатиснітьOK.
- Надайте право користувача на Hyper-V.
- Перезавантажте сервер. (Якщо ви хочете уникнути перезавантаження сервера, достатньо перезапустити такі сервіси: winmgmt, vmms, vhdsvc & nvspwmi). При зупинці winmgmt інші ролі зникнуть за депенденсами.
тобто. достатньо цих команд у командному рядку (з правами адміністратора):
net start winmgmtnet start vmmsnet start vhdsvcnet start nvspwmi
Увага: якщо сервер із встановленою роллю Hyper-V, яким ви хочете керувати віддалено, використовуючи локальний запис з правами адміністратора, не входить до домену, і при цьому на сервері включений User Account Control (UAC), то майте на увазі таке. За промовчанням до локальних облікових записів при неінтерактивному (у тому числі мережному) доступі застосовується UAC Filtering. Тобто, навіть якщо ви адміністратор сервера, при спробі віддаленого підключення UAC надасть вам права стандартного користувача. Тому в такому випадку вам потрібно буде безпосередньо надати користувачеві права на Hyper-V способом, описаним у попередній статті.
Налаштування клієнтського комп'ютера
Отже, сервер ми налаштували. Тепер ряд налаштувань потрібно виконати і на клієнтському комп'ютері з Vista SP1.
- Дозволити на Windows Firewall правило Windows Management Instrumentation (WMI) командою
netsh advfirewall firewall set rule group="windows management instrumentation (wmi)" new enable=yes
В українській версії Windows Vista ця ж команда виглядає так:
netsh advfirewall firewall set rule group="Інструментарій керування Windows (WMI - вхідний трафік)" new enable=yes
А на системах з ОС, що передують Windows Vista (Windows XP/2003), для цього слугує команда
netsh firewall setservice RemoteAdmin enable
- На системах з ОС, що передують Vista (Windows XP / 2003), слід також додати виняток для файлу Unsecapp.exe:
netsh firewall add allowedprogram program=%windir%system32wbemunsecapp.exe name=UNSECAPP
- Додати у Windows Firewall виняток для виконуваного файлу mmc.exe:
netsh firewall add allowedprogram program=%windir%system32mmc.exe name="Microsoft Management Console"
- Якщо клієнт або сервер знаходяться в робочій групі або вони знаходяться в різних доменах, між якими немає довірчих відносин, з'єднання від сервера до клієнта, що встановлюється для доставки результуючої інформації, відбувається анонімно. Анонімне з'єднання завершується невдало з кодом помилки0x80070005 або0x8007000e доти, доки анонімному з'єднанню не буде надано право Remote Access на DCOM клієнта. Дати це право можна, виконавши такі кроки:
- НатиснітьStart, виберітьRun, запустітьdcomcnfg.exe.
- УComponent Services розкрийтеComputers, правою кнопкою виберітьMy Computer та вкажітьProperties.
- УMy Computer Properties розкрийтеCOM Security.
- УLaunch and Activation Permissions виберітьEdit Limits.
- У вікніAccess Permissions виберітьANONYMOUS LOGON у спискуGroup or user names. У колонціAllow у Permissions for User вкажітьRemote Access та натиснітьOK.
Після виконання всіх описаних дій ви отримаєте можливість віддалено підключатися до сервера і керувати роллю Hyper-V.