Продолжим наш цикл статей посвященный удаленной работе рассказом про встроенные возможности популярного менеджера управления виртуализацией Proxmox VE.
Безусловно доступ к виртуальным машинам должен осуществляться средствами гостевой ОС, что обеспечивает безопасность для хостовой машины на которой установлен гипервизор. Но иногда возникает необходимость работы с виртуальной машиной, внешний доступ к которой не предусмотрен, или во время настройки. Особенно это актуально для рабочих станций с графическим интерфейсом.
На данный момент Proxmox VE предоставляет следующие средства:
- Консоль noVNC - основана на HTML5, требует последние версии браузеров и не нуждается в модулях Java;
- XtermJS - консоль на основе Java;
- SPICE - интегрирован в кластерную среду, систему пользователей и аутентификации и, конечно же, весь трафик полностью зашифрован.
Наиболее функциональным, безопасным и удобным для ежедневной работы является SPICE. Он так же позволяет настроить несколько независимых дисплеев, что особенно удобно при программировании.
Настройка Spice
Выбор дисплея используемой консоли определяется в процессе создания VPS или LXC. Протокол является открытым состоит из клиентской и серверной части. В процессе взаимодействия так же учавствует гипервизор.
SPICE сервер использует библиотеку libspice. Proxmox пока что основной пользователь этой библиотеки в среде виртуализации QEMU.
SPICE клиент - это программы, которые используют протокол SPICE. Безопасность обеспечивается генерацией сервером временного CSRF токен файла , который открывается на клиенте. Простой вариант получения файла доступен через веб интерфейс Proxmox VE клавиша «Консоль» - «Spice».
На клиенте нужно установить remote-viewer из пакета virt-viewer. Сейчас доступны версии для загрузки под Linux, Windows, OS X и другие платформы.
Прежде чем подключиться по протоколу Spice нужно указать в настройках VM видеокарту или изменить ее в настройках. Сделать это можно в меню VPS -> Оборудование -> Дисплей -> Spice.
Среди вариантов типов дисплея выберите Spice dual monitor, он как раз и обеспечивает режим мульти дисплеев. Пока для VM не будет установлен дисплей типа spice он не будет доступен.
Шаринг каталогов при помощи Spice
Для возможности работы проброса папок из VPS на базе Windows в параметрах опцию «Spice Enhancement» требуется установить в «Folder Sharing». Это позволит клиентам предоставить общий доступ к папкам.
Если ОС на сервере из cемейства Windows требуется установить следующие пакеты:
- UsbDk - драйвер фильтра Windows, разработанный для перенаправления USB Spice (клиентская сторона Windows) — UsbDk_1.0.22_x64.msi
- Гостевые инструменты Windows - spice-guest-tools
- Демон Spice WebDAV
Настройка нескольких мониторов
На VPS симейства Linux для полноценной поддержки spice dual monitors, должны быть установлены SPICE vdagent и x.org QXL video driver.
К примеру у Ubuntu 20
$ sudo apt-get install spice-vdagent xserver-xorg-video-qxl-hwe-18.04 $ sudo systemctl enable spice-vdagentd $ sudo systemctl start spice-vdagentd
Настройка клиентов под OS Linux
Пакет virt-manager доступен для следующих дистрибутивов :
Fedora: # yum install virt-manager;
Debian: # apt-get install virt-manager;
Gentoo: # emerge virt-manager;
OpenBSD: # pkg_add virt-manager.
Есть возможность сборки программного обеспечения из исходного кода github.
Автоматическое получение SPICE-токена
Для клиентов linux для получения SPICE-токена можно использовать API Proxmox VE. Это можно сделать написав небольшой Shel скрипт. Сценарий заключается в том, что по установленным параметрам соединения с нашим гипервизором сначала получаем «авторизационный тикет» от API, а затем получаем сгенерированный CSRF токен файл для вьювера.
Исходный код shell скрипта https://gitlab.com/snippets/32412
Формат запуска скрипта
$./spice.sh -u user@pam -p password 101 dns_name_or_ip_proxmox
После запуска на экране автоматически откроется окно консоли/рабочего стола вашей виртуальной машины. Для безопасности рекомендуем не указывать пароль доступа.
Основные возможности SPICE-клиента
Меню «Файл» - дополнительные настройки просмотра.
Меню «Просмотр» - задание масштаба отображения рабочего стола и возможность переключиться в полный экран. Также в этом меню можно активировать дополнительные дисплеи если установлен spice dual monitor.
Меню «Отправить клавишу» - позволяет отправлять различные комбинации в окно viewera.
Освободить курсор «мышки» через комбинацию — Ctrl+Alt+R.
Два дисплея в виде отдельных окон между которыми действует функционал перетаскивания.
В меню настройки консоли Remote Viewer можно указать какую папку вы монтируете в VPS и настройки совместного доступа к ней.
Работа по протоколу Spice для клиентов под Microsoft Windows
Windows 32 битная
https://virt-manager.org/download/sources/virt-viewer/virt-viewer-x86-9.0.msi
Windows 64 битная
https://virt-manager.org/download/sources/virt-viewer/virt-viewer-x64-9.0.msi
Для клиентов семейства Windows требуется чтобы внутри вашей VPS поддерживались драйвера видеокарты VirtiO, QXL. На данный момент операционные системы Windows 7/8/10 и Windows 2012/2016 полностью поддерживаются.
Функционал проброса папки в VPS семейства Windows работает пока только для клиентов под Linux.
Выводы
SPICE удобный, безопасный инструмент. Его можно использовать для доступа и работы с удаленным сервером, когда стандартные средства, такие как SSH или RDP не доступны. Безопасность передачи данных, возможность использовать графический интерфейс, мышь и клавиатуру, несколько дисплеев, выгодно выделяют SPICE среди других инструментов удаленной работы. Его можно использовать для повседневной работы с удаленным сервером, например во время для разработки программного обеспечения или просто для набора документов. Кстати именно Spice используют наши разработчики.
Приглашаем Вас протестировать Spice на наших виртуальных серверах.
Дата: 27.11.2020 Автор: Сергей
|
|
Авторам статті важлива Ваша думка. Будемо раді його обговорити з Вами:
comments powered by Disqus