пятница, 27 марта 2015 г.

Антивирус на Non-Persistent виртуальных рабочих столах XenDesktop

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

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

Если решение об установке антивируса все таки принято, то знайте - нельзя так просто взять и поставить антивирус на не постоянный виртуальный рабочий стол (аля Citrix PVS).


1. Желательно чтобы антивирус был заточен под VDI. Все не постоянные виртуальные машины загружаются с одного образа и разницы между ними особой нет, поэтому хорошо если антивирус имеет функционал сканирования файлов и генерации хэша просканированного файла, чтобы в случае если похожий файл (по хэшу) найдется в соседней виртуальной машине, он мог его просто пропустить, тем самым не нагружать диск дополнительными iops.

2. Обновление антивирусных баз. Обновлять антивирусную базу после каждой перезагрузки? Генерируется дополнительный трафик, потребляются дополнительные ресурсы виртуальной машины, забивается кэш диск (а это очень плохо). Либо отключить автообновление и обновлять мастер образ раз в сутки (сомнительное удовольствие), либо расширить кэш диск и смирится.

3. Сканирование по расписанию. Очень жесткая с точки зрения ресурсоемкости операция. Стоит ли включать если виртуалка перезагружается раз в сутки и восстанавливается в первоначальное состояние?

4. Тип антивируса? Я бы выделил три: тяжелый агент, легкий агент, безагентный. С точки зрения потребления ресурсов, предпочтительнее безагентный антивирус.

5. Исключения. Если используется технология Citrix PVS и кэш хранится на диске виртуальной машины, то лучше исключить файл кэша из проверки. Также стоит исключить процессы отвечающие за стриминг образа на таргет устройство (в нашем случае виртуальная машина). У
бедится в том что исключения работают поможет счетчик переподключений виртуальной машины к vDiskу, если переподключений много значит что то настроено не так, в идеале переподключений быть не должно).
Если используете принт сервер и печать по сети, то убираем из проверки спулер и т.д. Для VDI должен быть настроен отдельный профиль и чем больше там исключений тем производительнее виртуальная машинка.
Консолидированный список исключений от citrix можно найти по адресу: http://blogs.citrix.com/2013/09/22/citrix-consolidated-list-of-antivirus-exclusions/

Также подобный список можно найти на сайте вашего антивируса.

Я сейчас тестирую тяжелый агент на своих виртуальных столах и это ужасно. Большинство операций выполняются на 10-20 секунд дольше чем на виртуальном столе без антивируса.
Я думаю, что идеальный вариант для VDI это безагентный антивирус, т.к.:
1. Антивирусом не потребляются драгоценные ресурсы виртуальной машины, соответственно больше плотность виртуальных машин на хост.
2. Решается вопрос с обновлением антивируса, кэш диск не забивается лишними данными, нет лишних iops на хранилку.


четверг, 26 марта 2015 г.

Citrix Xenmobile

Краткое резюме по продукту Citrix XenMobile

С помощью Citrix XenMobile можно решить две основные задачи:
1. Обеспечение безопасности данных на мобильном устройстве.
2. Повышение мобильности пользователей.

XenMobile состоит из двух основных компонентов:
1. Система управления мобильными устройствами Device Manager
2. Корпоративный магазин мобильных приложений AppController .

Компонент Device Manager отвечает за контроль и управления мобильными устройствами через политики.
Как выглядит процесс управления мобильным устройством:
1. Пользователь устанавливает WorxHome клиент из публичного app store
2. Вводит адрес сервера Device Manager (должен быть опубликован во вне)
3. Вводит логин/пароль AD
4. Администратор видит, что такой то пользователь зарегистрировался с такого то устройства.
5. Что может администратор:
5.1 Заблокировать устройство
5.2 Частично или полностью очистить устройство
5.3 Накатить политику которая меняет какую-нибудь настройку устройства (например запретить запускать AngryBirds), также можно накатить настройки шифрования устройства, настройки vpn, настройки почтового клиента, настроить скрытый wi-fi, запретить заходить на определенные сайты, запретить использовать камеру и прочее.
5.4 Отправить на устройство файлы (допустим сертификаты).
5.5 Установить на пользовательское устройство мобильное приложений (можно воспользоваться .ipa/.apk файл, если есть, либо воспользоваться app store google play).
5.1 Отследить с помощью gps где находится устройство. Можно отслеживать перемещения устройства за определенный период времени, все маршруты устройства накладываются на google maps.

Компонент AppController отвечает за доставку мобильных приложений на мобильное устройство пользователя.
Citrix AppController связывается с Citrix MDM сервером и магазин приложений становится доступен по кнопке  + в клиенте WorxHome. Пользователь может войти в корпоративный магазин приложений и установить себе любое из перечисленных приложений.

Есть несколько способов публикации приложений в корпоративном магазине:
1. Публикация обычного мобильного приложения (для этого нужно иметь .ipa файл для iOS и .apk файл для Android)
2. Публикация защищенного мобильного приложения MDX. Процесс создания и публикации таких приложений будет описан позднее.
3. Проброс приложений из публичного магазина приложений, в этом случае указывается ссылка на приложение itunes или google play.
4. Проброс приложений XenApp и XenDesktop в WorxHome (Citrix Receiver однако, должен быть все равно установлен). Для этих целей нужен установленный и настроенный сервер Citrix StoreFront.

Можно настроить ручную установку приложений на устройство или автоматическую (правда, на ios пользователь все равно должен одобрить установку).

С Citrix AppController очень тесно интегрируется Citrix Sharefile, особенно если вы хотите расположить хранилище файлов Citrix Sharefile на своих серверах и настроить вход в Citrix Sharefile по доменной учетной записи. В этом случае Citrix AppController выступает в роли удостоверяющего сервера для Citrix Sharefile, консоль управления которого в любом случае находится на публичном сервере Citrix Sharefile.


На рисунке ниже представлена архитектура Citrix XenMobile 8.6 Enterprise Edition. На момент написания топика вышла уже 10ая версия Citrix XenMobile и сервера XenMobile MDM и Citrix AppController объединились в один сервер Citrix XenMobile Server, правда утилиты на апгрейд с XenMobile 9 на XenMobile 10 еще нет.


В следующих статьях по XenMobile я опишу каждый из компонентов подробнее, а также приведу список необходимых условий для внедрения XenMobile 10 в редакции Enteprise Edition

Видео и звук в Microsoft Lync 2013 на виртуальных рабочих столах Citrix XenDesktop 5.6

Есть два варианта использования видео и звука в Lync 2013 на виртуальных рабочих столах XenDesktop 5.6

1. Не редиректить видео и звук на клиентское устройство и использовать ресурсы виртуального стола.
2. Редиректить видео и звук на клиентское устройство и тем самым использовать ресурсы клиентского устройства для обработки видео и звука.

Мне устроил первый вариант, качество звука и видео не сильно отличается от второго и не приходится жертвовать некоторым функционалом.

Первый вариант настройки в отличие от второго очень простой:

1. Ставится наиболее свежая версия VDA агента 5.6.500 (самый свежий хотфикс на момент написания топика)
2. Политика Client USB device redirection на контроллере Citrix XenDesktop ставится в Prohibited (по дефолту Prohibited)
3. Устанавливается Lync 2013 и проверяются настройки звука и видео.

Если возникли проблемы:

1. Лично я столкнулся с проблемой обнаружения звукового устройства в lync 2013 и проблема решилась удалением устройств Citrix remote USB bus и Citrix remote USB host controller на виртуальном рабочем столе. Данные устройства ставятся вместе с VDA агентом. После чего я установил VDA агент версии 5.6.500 и вместе c агентом установились устройства Citrix remote USB bus и Citrix remote USB host controller, проблема с отображением звуковых устройств исчезла.

2. Возможно у вас включена политика Client USB device redirection на контроллере Citrix XenDesktop. По дефолту эта политика выключена (Prohibited). Данная политика пробрасывает USB устройства в сессию citrix не используя драйвера установленные на клиентских устройствах, т.е. это low level redirection. 
Если она у вас включена (Client USB device redirection - Allow) то скорее всего пробросит вашу usb гарнитуру в сессию, что приведет к деградации звука или вообще к отсутствию звукового устройства в настройках. В этом случае необходимо настроить правило на запрет проброса вашей USB гарнитуры, делается это  в соседней политике Client USB device redirection rules. Чтобы запретить гарнитуру необходимо добавить строчку Deny: VID=046D PID=0A38, где VID и PID это ID оборудования, которое можно посмотреть в диспетчере устройств в свойствах устройства.


Если правило не помогает, попробуйте отключить политику Client USB device redirection (Prohibited) только для данного пользователя и проверить обнаружилось ли звуковое устройство.

Второй вариант немного по сложнее.

1. Необходимо установить VDA агент версии не ниже 7.0 на виртуальный стол (контроллер XenDesktop 5.6 работает с агентом VDA 7.0-7.6, но отвалятся (будут работать по дефолту) политики Citrix XenDesktop 5.6 и DesktopDirector не сможет отображать информацию об агентах и запускать Shadow).

2. Необходимо установить Microsoft Lync VDI 2013 plugin на ПК или ТК (тонкий клиент).

3. Если ТК не в домене, то необходимо добавить корневые сертификаты сервера Lync в доверенные и прописать адрес сервера Lync в реестре (обратите внимание ветка реестра юзерская, так что делать изменения под учеткой с которой будет запускаться виртуальный стол).
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Office\15.0\Lync
"ConfigurationMode"=dword:00000001" (DWORD 32-bit)
"ServerAddressInternal"="LyncServer.domain.com" (String)
"ServerAddressExternal"="LyncServer.domain.com" (String)

3. Включить политику EnableMediaRedirection на сервере Lync для пользователя которому необходим редирект видео и аудио.

4. Запустить Lync 2013 и проверить, появился ли в правом нижнем углу окна Lync 2013 значок редиректа:

При первом запуске значок монитора будет мигать, после чего появится зеленая галочка, это означает что lync настроил ауди и видео для редиректа. Если значок монитора будет мигать продолжительное время, значит lync не может пробросить аудио и видео, необходимо еще раз проверить настройки.