Технология дистанционного управления Intel vPro. Удаленно управляем BIOS Setup

Знаете ли Вы, что дистанционно подключиться к вашему компьютеру можно без использования не только сетевых драйверов операционной системы, но и вообще без самой ОС ? Даже можно зайти в BIOS удалённо, и вообще сделать с компьютером всё, что угодно - в том числе скачать содержимое винчестеров, стереть их, и наглухо отключить компьютер навсегда, превратив его в бесполезный кусок железа.

Технология эта вполне официальна, она называется Intel vPro и реализована аппаратно в процессорах Intel Sandy Bridge и Ivy Bridge. На самом деле кроме процессора требуется еще и соответствующий чипсет - но в этом нет проблемы, ибо чипсеты давно поставляет сам Интел, ха-ха. В идеале в материнскую плату должна быть встроена гигабитная сетевая карта и видеоадаптер, которые способны на низкоуровневую работу (а еще более в идеале - и такой же WiFi). И опять же не волнуйтесь - Intel всё это реализовал и сделал стандартом де-факто. Наиболее дальновидных ребят давно удивляло, зачем в десктопной материнке встроен WiFi интерфейс, не нужный в 99% десктопов - так вот он встроен для дела, чтобы можно было получить доступ к компьютеру, даже не подключаясь к локальной сети, и даже к компьютеру, который стоит в отдельной комнате ни к какой сети не подключенный.

Разумеется, то, что вы там в БИОСе выключили этот вайфай - никак доступу не помешает. Для Intel vPro все интерфейсы всегда работают. Более того - "выключенный" компьютер для Intel vPro тоже работает (хоть и не светит лампочками об этом). Единственный способ отрубить компьютер от Intel vPro - это обесточить его, удалив шнур питания из розетки (но по понятным причинам этот номер не пройдет с ноутбуками - батареи-то на большинстве современных аппаратов несъемные, и это не просто так сделано).

Сеанс связи шифруется, а доступ к компьютеру можно получить через консоль (serial over LAN), web-интерфейс или VNC. Web-интерфейс обладает неприметным рабочим дизайном (который при этом отлично отображается на планшетах) и позволяет получать статистику о железе, его состоянии и перезапускать компьютер, настраивать сетевой интерфейс и политики доступа к AMT, смотреть историю событий - например, узнать, почему же у секретарши не грузится система, не подходя к её компьютеру:

При подключении через консоль и VNC можно делать уже совсем всё: vPro предоставляет полноценный KVM с локальной машины на удалённую с поддержкой разрешения экрана до 1920х1200 и возможностью посмотреть, как загружается система от инициализации BIOS до непосредственной загрузки ОС. При этом даже при перезагрузке системы не происходит отключения! Единственное что для доступа в BIOS не получится просто зажать Delete при старте системы и надо будет выбрать специальный пункт «boot to BIOS». После чего в самом деле загружается BIOS:

Можно подключиться к удалённой машине по VNC даже в том случае, если там слетели драйвера сетевой карты (ведь vPro работает на более низком уровне чем ОС) и прямо через VNC поставить все драйверы.

Еще одна интересная возможность под название IDE-R позволяет загружаться с внешнего источника - как будто это внутренний жёсткий диск. То есть можно подключиться по VNC, указать образ для загрузки, и загрузиться в собственной операционной системе - так что владелец компьютера и не узнает, что его включали.

При помощи vPro работает технология Intel Anti-Theft. Если у вас украли компьютер или ноутбук, то вы можете связаться с Intel и они заброкируют его. Компьютер просто перестанет загружаться, показывая черный экран с надписью - мол, заблокировано Intel Anti-Theft, верните компьютер владельцу.

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

PS. Тут товарищ спросил - мол получается, что выключенные компы можно пинговать ?

Объясняю: в рамках Intel vPro cетевая карта слушает линию всегда, даже если компьютер "выключен". Но не всегда отвечает. То есть на вопрос «можно ли пинговать» — ответ да, можно, если это разрешить в настройках BIOS. Если не разрешить, то выключенный комп на пинг отзываться не будет, но свой порт (в общем случае это 16992) слушать будет и с Intel vPro работать будет.

Проверялось на чипсете Q45 - работает.

PPS. Cтарые чипсеты Intel и их CPU без GPU поддерживают только Serial-over-LAN часть технологии Intel vPro (то есть текстовая консоль управления работает, файлы можно скачивать, работает дистанционная загрузка операционки с удаленного диска и так далее, но не работает слежение за экраном пользователя и графическая консоль).

Для любопытных - IDE-R/SOL over TCP порт = 16994, IDE-R/SOL over TLS порт = 16995. Можете поснифить трафик в линии и посмотреть.

Ну и помните, что AMT fireware аппаратно перехватывает трафик с сетевой карты и не передает в ОС то, что касается работы vPro (порты 16992, 16993, 16994, 16995). То есть на компе с этой технологией никакие пакеты на порты 16992, 16993 и так далее вы из ОС не получите и не обнаружите. Чтобы их надежно найти - нужен старый комп со старыми сетевухами, реализующий прозрачный повторитель Stay-In-Middle и снифящий трафик.

И да, разумеется:

(а) Интел хранит возможность доступа к любой машине
(б) Может узнать, где она, и может с ней связаться в любой момент
(в) Может полностью ее заблокировать (при этом она будет продолжать подавать сигналы с координатами)

Ну и чтобы не было лишних иллюзий - про Интел я говорю только потому, что у него эта технология совершенно открыта и официально описана. Intel повел себя очень грамотно - бэкдор для спецуры не скрывается и не отрицается, а выдается за дополнительный сервис для пользователя и администратора. Аналогичные решения есть и у AMD, и у всех остальных крупных игроков на рынке микропроцессоров - просто они не столь честны, как Intel, и предпочитают играть в умолчание.

Современные чипсеты позволяют создавать на материнских платах формата Mini-ITX вполне полноценные универсальные и даже игровые системы. Но есть еще один редкий вариант - Thin Mini-ITX, который ставит даже более жесткие условия на размеры материнской платы, ограничивая не только ее проекцию, но и высоту. Согласно этому стандарту, все элементы платы не должны быть выше 25 мм. Официальное позиционирование подобных устройств - HTPC, AIO и прочие варианты, требующие ультракомпактных решений.

Вполне логично, что чем у́же специализация, тем меньше есть предложений на рынке. Но конечно, такой производитель, как Intel, который старается задавать тон всей индустрии и сам создает новые направления, не может позволить себе пропустить даже этот относительно небольшой сегмент универсальных решений.

Рассматриваемая сегодня материнская плата DQ77KB входит в серию Executive, отличающуюся расширенными возможностями управления, безопасности и энергосбережения. Как уже понятно по этому описанию, наиболее подходящим вариантом в данном случае будет использование бизнес-чипсета Intel Q77, который поддерживает vPro и другие соответствующие технологии.

Комплектация и фирменные утилиты

Представленный на тестирование семпл платы был упакован в стандартную универсальную коробку и имел минимальный комплект поставки - плата, две заглушки на заднюю панель (стандартная и «низкая»), пара кабелей SATA, кабель питания SATA, компакт-диск с драйверами и руководство по установке.

Маловероятно, что подобный продукт будет массово поставляться в формате «box», поскольку он явно ориентирован на сборщиков, а не на конечных пользователей. Судя по описанию на сайте, кроме описанных компонентов, в официальных поставках также можно будет найти переходник HDMI-DVI, а на компакт-диске дополнительно будут записаны утилиты Intel для системных интеграторов, антивирусы и программы удаленного управления. В частности, на этой плате также работает программа мониторинга Intel Desktop Utilities и утилита кастомизации BIOS Intel Intergrator Toolkit.

Особенности платы

Про платы формата Thin Mini-ITX уже сложнее говорить, что они позволяют создавать универсальные системы. Ограничение высоты заметно влияет на возможности производителей - не поставить вертикально miniPCIe-плату Wi-Fi или схему питания, да и с радиаторами особо не разгуляешься. Так что максимальная производительность явно будет ограничена. В частности, рассматриваемая DQ77KB поддерживает только процессоры для LGA1155 с TDP до 65 Вт. Хотя надо признать, что с переходом на новый техпроцесс у Intel в эту категорию попадают такие модели, как i7-3770S и i5-3570S, с частотой более 3 ГГц, а из прошлого поколения поддерживаются i7-2600S и i5-2500S. В тестировании мы использовали процессоры Intel Core i3-2120T, i5-2400S и i5-3450S.

Ограничения на устанавливаемую систему охлаждения будут диктоваться скорее требуемым корпусом, чем материнской платой, поскольку самый высокий и близкий ее элемент - разъем для вентилятора процессора, который, при необходимости, можно не использовать.

Для установки модулей оперативной памяти предусмотрено два слота SO-DIMM. Поддерживаются модули DDR3-1333/1600, максимальный объем составляет 16 ГБ. Слоты расположены параллельно печатной плате. В нашем случае использовалась пара планок по 4 ГБ DDR3-1333 на чипах Hynix.

Формат накладывает существенные ограничения и на использование плат расширения. Понятно, что любая стандартная карта расширения, установленная в слот без «углового» адаптера, будет выше, чем 25 мм. Но учитывая потенциальное применение для специальных проектов, иметь возможность конфигурации дополнительного оборудования было бы очень желательно. Так что в DQ77KB было решено установить один слот PCIe 2.0/3.0 формата x4, подключенный к контроллеру в процессоре. Жаль только, что он именно x4: места явно хватает и на x16, а установка именно «большого» слота позволила бы немного увеличить возможности продукта. При необходимости, конечно, можно воспользоваться подручными инструментами и сделать прорезь в задней стенке разъема, но не всех этот вариант устроит. Кроме того, в этом случае даже простейшей видеокартой начального уровня будет перекрыт разъем процессорного вентилятора.

Если же требуются более простые контроллеры, например Wi-Fi, то на плате есть еще два слота расширения - полный и половинный miniPCIe. Причем первый поддерживает также флэш-диски mSATA, что позволяет еще больше сократить занимаемый платформой объем. В документации указано, что в этих разъемах также присутствуют выходы USB 2.0. Для тестирования мы использовали модуль Lite-On LMT-32L3M на 32 ГБ. Кроме того, напротив этого разъема на заглушке для задней панели предусмотрено отверстие, что может позволить устанавливать специализированные карты расширения.

Из стандартных разъемов ввода-вывода на плате присутствует пять портов USB 2.0 (два порта на двух разъемах и один на третьем), последовательный COM-порт и разъем для аудио. Конечно, не забыли про традиционные индикаторы и кнопки корпуса. Для использования в системах AIO также есть коннекторы для цифровой панели, LVDS, управления питанием, отладки и прочее. Конечному пользователю может быть интересен встроенный стереоусилитель на 3 Вт, позволяющий подключить пассивную АС.

В целом компоновка неплохая, большинство разъемов находятся на краях платы и легко доступны. Сама печатная плата зеленого цвета, на ней есть пара светодиодных индикаторов (дежурное питание и статус ME), крепление к корпусу - стандартным для Mini-ITX вариантом на четыре винта. Учитывая позиционирование продукта, никаких существенных замечаний к дизайну платы нет.

Схемы питания и охлаждения

В этом разделе особо рассказывать нечего - продукт будет эксплуатироваться исключительно в штатных режимах, если даже не в специально «замедленной» конфигурации. Практический интерес представляет только подключение питания к плате. Для этого используется внешний блок питания с выходом 19 В, как и у большинства ноутбуков. Разъем аналогичен устанавливаемому на корпоративных моделях HP. Второй вариант - двухконтактный коннектор на печатной плате. Максимальное потребление заявлено на уровне 12 А, большинство реальных конфигураций, конечно, будут потреблять гораздо меньше. В случае внешнего блока питания возникает вопрос о подключении периферийных устройств, в частности накопителей. Для этого плата имеет выходной разъем питания формата SATA, обеспечивающий подачу 12, 5 и 3,3 В от встроенного преобразователя. Максимальная допустимая мощность на нем - около 25 Вт, чего вполне хватит на жесткий диск и оптический привод, не говоря уже о SSD. Чипсет закрыт небольшим радиатором, на элементах цепей питания ничего подобного нет.

Подключение вентиляторов системы охлаждения осуществляется через два 4-контактных разъема. Оба поддерживают автоматическую регулировку оборотов в зависимости от температуры, которая настраивается в BIOS Setup. При этом можно «привязать» контроль к одному или двум из датчиков температуры: процессор, чипсет, оперативная память, система питания. Что касается аппаратного мониторинга, то упомянем также наличие датчиков семи напряжений.

Проверка эффективности системы питания и охлаждения проводилась совместно с процессором Intel Core i5-2400S и стандартным кулером Intel с медным сердечником для этого сокета. При нагрузке программой LinX максимальная температура процессора составила 63, чипсета - 45, а системы питания - 40 градусов соответственно. Никакого опасения данные цифры не вызывают. Напомним, что стенд был открытый, а штатный кулер, тихо работая на 1800 об/мин, также частично направляет потоки воздуха и на радиатор чипсета и на схемы питания.

BIOS

Настройки BIOS вполне стандартны для систем Intel. Реализована поддержка интерфейса EFI и использование мыши для навигации.

Всего в меню есть семь знакомых про прошлой статье разделов:

  • Main: информация о плате, процессоре и памяти, установка даты и времени;
  • Configuration: настройка периферийных контроллеров, портов накопителей, встроенного графического ядра, управление вентиляторами, контроль аппаратных датчиков;
  • Performance: изменение некоторых из параметров работы процессора, графического ядра и оперативной памяти;
  • Security: установка паролей системы и жесткого диска;
  • Power: управление режимами системы питания;
  • Boot: выбор устройств, порядка и опций загрузки системы;

Обновление BIOS проще всего осуществить с использованием встроенной утилиты, но можно использовать программы для Windows или MS-DOS. Отметим наличие специального дополнения Intel Management Engine, которое используется для работы технологий Intel AMT, vPro и других.

В тестировании использовалась версия BIOS 0042.

    IPMI (от англ. Intelligent Platform Management Interface) - интеллектуальный интерфейс управления платформой, предназначенный для автономного мониторинга и управления функциями, встроенными непосредственно в аппаратное и микропрограммное обеспечения серверных платформ. Другими словами IPMI – это средство управления, которое реализовано независимо от основного оборудования сервера и обеспечивает его включение, выключение, сброс, удаленное подключение виртуальных мониторов, клавиатур и мышей, наблюдение за работой оборудования и оповещение о важных событиях, связанных с работоспособностью сервера. Спецификация IPMI версии 1.0 была опубликована еще в 1998г. и базировалась на подключении к модулю IPMI через последовательный интерфейс RS-232. Текущая спецификация IPMI опубликована в 2004 г. и базируется на использовании стандартного сетевого интерфейса.

Ядром системы управления серверной платформой является специализированное устройство - Baseboard Management Controller (BMC) , который практически является специализированным компьютером, встроенным в серверную платформу, имеющим свои собственные процессор, память, периферийное оборудование и операционную систему. Спецификация IPMI не задает жестких стандартов по реализации IPMI-устройств. Они могут быть выполнены в виде отдельного адаптера, могут быть распаяны непосредственно на материнской плате или выполнены в виде отдельного микроконтроллера. В настоящее время, наиболее распространены интегрированные в серверные материнские платы контроллеры BMC на базе технологии “система на одном кристалле” (System-on-Chip, SoC), позволяющие реализовать как эффективное взаимодействие с управляемой платформой, так и огромное количество функций по удаленному мониторингу, оповещению о важных событиях по e-mail или SNMP, ведению журналов и т.п.

Контроллеры BMC для серверных материнских плат подключаются к ним через системный интерфейс, названный IPMB (Intelligent Platform Management Bus/Bridge) или к другим контроллерам BMC через интерфейс IPMC (Intelligent Platform Management Chassis). Для удаленного управления оборудованием через контроллер BMC может быть использован специальный протокол прикладного уровня Remote Management Control Protocol (RMCP) , обеспечивающий работу через обычную локальную сеть. Как правило, современные контроллеры BMC обеспечивают управление серверными платформами через веб-интерфейс, а также обеспечивают удаленное подключение устройств CD/DVD и работу клавиатуры-видео-мыши по сети (IP KVM), что позволяет легко выполнять, например изменять настройки BIOS или выполнять установку операционной системы, не имея физического доступа к оборудованию сервера.

Возможности управления материнской платой через IPMI.

Рассмотрим возможности управления сервером через интерфейс IPMI на примере материнской платы Supermicro X8DTT-IBQF с интегрированным контроллером Nuvoton WPCM450 Baseboard Management Controller с поддержкой IPMI 2.0. Данный контроллер поддерживает графическое ядро с PCI-интерфейсом, устройства Virtual Media (виртуальные CD/DVD) и перенаправление клавиатуры-видео-мыши (Keyboard/Video/Mouse, KVM). Для подключения к локальной сети используется внешний контроллер Ethernet, распаянный на материнской плате. Для взаимодействия с компонентами управляемой системы используются шины управления платформой Platform Environment Control Interface (PECI) . На материнской плате имеется перемычка для отключения BMC-контроллера, если возникнет такая необходимость. Также, на ней имеется светодиод BMC LED (BMC Heartbeat LED) для индикации работоспособного состояния контроллера – зеленый мерцающий индикатор, начает, что BMC работает нормально.

Первичная настройка интерфейса IPMI выполняется в разделе Adnanced – IPMI Configuration основного BIOS.

Status of BMC состояние контроллера BMC

View BMC System Event Log - просмотр системного журнала событий (SEL), который ведется контроллером BMC.

Clear BMC System Event Log - очистка журнала событий

Set LAN Confi guration - настройка сетевой конфигурации адаптера, используемого контроллером BMC. Можно настроить на получение IP-адреса, маски и адреса шлюза автоматически по DHCP, или задать их вручную.

Set PEF Confi guration - настройка фильтра событий, регистрируемых контроллером Platform Event Filter (PEF). В данном пункте меню можно настроить реакцию контроллера на определенные события, как например, выключение питания при увеличении температуры, или снижении скорости вращения вентиляторов. По умолчанию, фильтрация событий отключена.

BMC Watch Dog Timer Action - можно настроить опрос состояния управляемой системы и ее сброс, перезагрузку или выключение питания при зависании. По умолчанию, отключено.

Основные возможности по управлению и мониторингу состояния платформы доступны через веб-интерфейс. Для подключения к модулю BMC используется любой браузер с поддержкой java, в адресной строке которого вводится IP-адрес IPMI-устройства и, после подключения, выполняется авторизация с использованием имени пользователя и пароля, указанных в документации или заданных пользовательскими настройками. Имя пользователя и пароль по умолчанию для IPMI-устройств производства Supermicro - ADMIN / ADMIN . После успешной авторизации откроется основное окно управления платформой с активированной вкладкой “System Information”:

Вкладка “Server Health” позволяет контролировать состояние оборудования сервера:

Sensor Reading - просмотр данных контролируемых датчиков

Sensor Reading with Thresholds - просмотр данных контролируемых датчиков и пороговых значений

Event Log - просмотр журнала событий

Отображаемая информация датчиков включает их имена, состояние и считанное значение. В нижней части экрана имеются кнопки Refresh - обновить данные датчиков и Show Thresholds - показать пороговые значения. С помощью подменю Select a sensor type category можно выбрать тип датчиков (температура, напряжение и т.п.). Пример отображаемой информации:

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

Вкладка Configuration позволяет выполнить настройки оповещений о состоянии оборудования, изменять сетевые параметры, настроить политику доступа к устройству IPMI.

Alerts - настройка оповещений. Можно создать до 15 записей с различными правилами оповещений. Имеется возможность задать категорию событий, по которым выполняется оповещение – информация, предупреждение, критическое событие, невосстановимое состояние. Оповещение возможно по электронной почте или через отправку SNMP trap. В первом случае, необходимо указать e-mail, на который будет отправлено письмо, при возникновении события заданной категории, во втором – IP-адрес сервера, собирающего SNMP-оповещения. При использовании оповещения через электронную почту, необходимо указать IP-адрес и порт SMTP-сервера и адрес отправителя в разделе SMTP

Разделы LDAP , Active Directory , RADIUS ,Users и SSL sertificate настраиваются в зависимости от требований безопасности доступа к IPMI-устройствам. В разделе Network можно изменить сетевые настройки IP-адрес, маску, шлюз. В разделе Ports - номера портов, которые используются при эмуляции виртуальных устройств загрузки, видеомонитора, клавиатуры и мыши. Также можно изменить номер порта для веб-доступа к устройству IPMI.

Вкладка Remote Control позволяет выполнить удаленное подключение к консоли сервера с использованием java-апплета. Необходимо учитывать, что при первом подключении, консоль может длительное время не работать, поскольку для выполнения апплета требуется запуск виртуальной машины Java. Кроме обычной эмуляции терминала, в данной программе возможно выполнение записи сеанса работы через меню Video – Capture Screen , использование программной клавиатуры (Keyboard – Soft Keyboard ) и подключение виртуальных носителей (Media – Virtual Media Wizard )

Вкладка Remote Control используется для включения, выключения и сброса сервера. Maintenance - для обновления прошивки и принудительного сброса IPMI-устройства.     Для управления платформами через интерфейс IPMI используется программное обеспечение, разрабатываемое производителями оборудования или открытое ПО.

КРИС КАСПЕРСКИ

Удаленно управляем BIOS Setup

Каждый из вас хотя бы раз в жизни сталкивался с необходимостью войти в BIOS Setup и слегка его «подкрутить» или починить «рухнувшую» Windows NT, Linux/FreeBSD. Традиционно эта задача решается при помощи мыши и клавиатуры, но что делать, если сервер физически недоступен?

Компьютеры семейства IBM PC долгое время рассматривались как недорогие рабочие станции и сервера на их основе начали строить лишь недавно. Разработчики увеличили количество процессоров, добавили поддержку коррекции памяти, отказоустойчивые дисковые массивы и прочие прелести, однако полное превращение в сервер так и не наступило. В частности, сохранилась проблема удаленного администрирования. Операционные системы семейства Windows NT поддерживают удаленный контроль лишь формально. Даже такие программы, как Remote Admin, выполняют ограниченный спектр простейших операций, и на полноценное обслуживание сервера по сети не способны. В мире UNIX дела обстоят чуть-чуть получше, но проблемы все равно есть.

Вот, например, BIOS отказывается грузиться, предлагая нажать для входа в BIOS Setup или для загрузки с параметрами по умолчанию (см. рис. 1). Но сервер находится в другом конце города, да еще в помещении, ключей от которого у администратора нет. Знакомая ситуация, не правда ли? Другой вариант: после установки очередного пакета обновления операционная система «умерла», стала жертвой хакерской атаки или просто зависла. Во всех этих случаях стандартные средства удаленного управления уже не работают и приходится приближаться к серверу вплотную, что достаточно затруднительно. Даже если сервер расположен на соседнем этаже, намного предпочтительнее управлять им без отрыва от своего любимого кресла, чем бегать с дискетами (лазерными дисками) туда-сюда.

И это действительно можно сделать! Существуют по меньшей мере три пути, о которых я и хочу рассказать.

Удаленный контроль за BIOS

Порядок загрузки BIOS в общих чертах выглядит так. Первым получает управление BOOT-block (загрузочный блок или первичный загрузчик, не путать с boot-сектором!). Он выполняет инициализацию основного оборудования (оперативная память, контроллер прерываний, системный таймер и т. д.), сканирует ISA-шину и подключает BIOS всех обнаруженных устройств (например, SCSI-контроллеров, видео, сетевых карт и т. д.). Перед завершением своей работы BOOT-block распаковывает основной код BIOS (так называемый BIOS extensions, или вторичный загрузчик) и передает ему управление. Вторичный загрузчик сканирует PCI-шину и выполняет окончательную инициализацию оборудования – распознает IDE-диски, при необходимости выводит интерактивный редактор BIOS Setup, распределяет системные ресурсы между PnP-устройствами и, наконец, считывает boot-сектор с гибкого или жесткого диска.

Таким образом, BIOS, установленные на картах расширения, получают управление на самой ранней стадии инициализации, задолго до того, как начинается подсчет контрольной суммы CMOS или распаковка вторичного загрузчика. Кстати говоря, большинство утилит «прожига» BIOS не трогают BOOT-block и даже если прожиг прошел неудачно, ISA-слоты расширения все-таки инициализируются. С PCI-слотами все обстоит намного сложнее, и в общем случае они доступны только из вторичного загрузчика (а он гибнет при неудачном прожиге). Некоторые производители, например ASUS, включают в BOOT-block специальный драйвер для работы с PCI-шиной, чтобы материнская плата могла инициализировать видеокарту и хоть что-то вывести на экран, даже если основной код BIOS повержен. Но мне не известен ни один BIOS, BOOT-block которого мог бы работать с шиной AGP или PCI-express.

Следовательно, все, что нам нужно, – изготовить «фиктивную» ISA- или PCI-карту, установить на ней «свой» BIOS и запрограммировать его на удаленное управление. Когда-то я «дорабатывал» древние сетевые карты (которые просто выбрасывались), превращая их в «пульт» удаленного управления, позволяющий редактировать настройки BIOS по локальной сети. Это совсем несложно сделать! Достаточно уметь программировать на Ассемблере и чуть-чуть разбираться в архитектуре «железа» (см. рис. 2).

Впрочем, корпеть над отладчиком совсем необязательно, все можно купить и готовое. Такие платы (они называются Remote Boards) выпускает множество фирм. Обычно они представляют из себя стандартную VGA-карту с интегрированным COM-портом, к которому подключается внешний модем. В некоторых моделях имеется Ethernet-порт. Его можно воткнуть в DSL-модем или соединить со Switch. Через эти порты передается копия экрана на удаленный монитор и принимаются команды от клавиатуры, в результате чего IBM PC превращается в самый настоящий «мейн-фрейм» и физического доступа к нему уже не требуется (см. рис. 3)!

Большой популярностью пользуется модель Remote Insight от Hewlett-Packard, которая вставляется в PCI-слот и управляется через 10/100 Мбит Ethernet-порту. Она поддерживает как текстовые, так и графические режимы (вплоть до 1280х1024/256 цветов), питается от внешнего источника, что позволяет ей «нажимать» на кнопки «Power» и «Reset». В дополнение к удаленной мыши и клавиатуре имеется возможность подключать удаленный дисковод и привод CD-ROM, без которых не обходится ни одна переустановка системы. Это просто фантастика! Всегда можно загрузиться с Live CD и посмотреть, что случилось с сервером и сохранить уцелевшие данные на любой носитель, который только будет под рукой. Это усиливает безопасность системы, поскольку сервер, оснащенный «Remote Insight», может вообще не иметь никаких съемных носителей!

Кстати, о безопасности. Remote Insight поддерживает SSL и 128-битное шифрование, что позволяет ему функционировать даже на незащищенных каналах (а других каналов в распоряжении рядового администратора зачастую просто не оказывается).

Все управление происходит либо через telnet, либо через веб-браузер. Как будет удобнее администратору. На сервере может быть установлена практически любая операционная система: Windows 2000/2003 (Advanced Server, Data Center, Terminal Server, Standard или Enterprise Edition), Novell NetWare 5.1, 6.0, Red Hat Advanced Server2.1, Red Hat Linux 7.3/8.0, SuSE Linux Enterprise Server V7/V8 и некоторые другие (см. рис. 4).

Карту можно приобрести в магазине или заказать по Интернету непосредственно в самой Hewlett-Packard. Она обойдется в $399, которые явно стоят того! В принципе можно найти производителя и подешевле, но в отношении цена/функциональность этой карте равных нет, тем не менее она далека от идеала. Исходных текстов прошивки нам никто не даст, и доработать «напильником» под свои конкретные нужны ее не удастся (теоретически это возможно, но очень затруднительно). К тому же качество реализации протоколов шифрования находится под большим вопросом. Возможно, в карте присутствуют отладочные люки или переполняющиеся буферы, которые позволят атакующему захватить штурвал управления в свои руки (см. рис. 5)!

Этих недостатков лишена PC Weasel 2000 от одноименной компании. Вместе с самой платой покупатель получает полный исходный код прошивки и лицензию на право его изменения. Это все та же самая VGA-плата, только вместо Ethernet-порта на ней находится контроллер UART (он же стандартный COM-порт типа 16550). К сожалению, ее функциональность намного беднее. Поддерживаются только текстовые видеорежимы и отсутствуют удаленные приводы, правда, сохраняется возможность «нажать» серверу на «Reset» или посмотреть POST-коды, чтобы сразу оценить масштабы неисправности (см. рис. 6).

ISA-вариант обойдется вам в $250, а PCI – во все $350. Не слишком ли большая цена за открытую лицензию при урезанной функциональности? Не торопитесь с выводами. Исходные тексты – великая штука! Можно купить одну плату и установить ее на неограниченном количестве машин. Клонировать аппаратное обеспечение нам не понадобится. Если слегка переделать прошивку можно обойтись и стандартными компонентами, но об этом – чуть позже. Сначала познакомимся с диаметрально противоположным классом устройств удаленного управления, среди которых, возможно, притаилось устройство вашей мечты (см. рис. 7).

KVM, или Удаленный контроль продолжается

Главный недостаток VGA-плат с модифицированным BIOS состоит в том, что они требуют вскрытия корпуса сервера, что не всегда желательно. К тому же техника перехвата изображения и эмуляция клавиатурного ввода далека от идеала и чрезвычайно конфликтна. KVM-коммутаторы исповедуют совершенно иной подход. Свое название они получили по трем первым буквам: Keyboard, Video-monitor и Mouse. Коммутатор представляет собой автономное устройство, подключаемое к компьютеру через стандартные PS/2 и DB15 VGA-коннекторы. Их сигнал преобразуется в цифровой поток и передается на соседний KVM-терминал, подключенный к удаленному компьютеру. Грубо говоря, мы как бы подключаем клавиатуру, мышь и монитор очень длинными кабелями (см. рис. 8).

Можно настраивать BIOS Setup или рассматривать Windows, свалившуюся в синий экран, но ни удаленных дисководов, ни даже возможности нажать на Reset у нас нет, то есть иллюзия полного физического доступа оказывается не такой уж и полной. Зато поддерживаются практически все видеорежимы и в код BIOS не вносится никаких изменений, а в критических инфраструктурах это очень актуально. Внедрять посторонний эмулятор в банковский компьютер нам попросту не дадут, поскольку эта технология не сертифицирована, а вот у KVM-коммутаторов все необходимые сертификаты, как правило, имеются (см. рис. 9).

Подавляющее большинство моделей рассчитано на управление несколькими серверами с одного терминала, при этом сигнал пускается по экранированной витой паре с максимальной длиной в несколько сотен метров. Это совсем не Ethernet и в сетевой концентратор его вставлять нельзя! Для реального удаленного управления по Интернету или модему нам потребуется установить дополнительный компьютер, принимающий KVM-сигнал и с помощью специального программного обеспечения ретранслирующий его в «удобоваримую» сетевую форму. А это нехорошо! К счастью, некоторые модели поддерживают работу по модему или локальной сети. Такой тип KVM-коммутаторов называется «over IP», хотя здесь не обходится без вариаций. Просто загляните в спецификацию: если там встретится что-то похожее на LAN или Dial-Up, это то, что нам нужно (рис. 10)!

Довольно хорошо зарекомендовала себя фирма Minicom, в ассортименте которой можно обнаружить по меньшей мере две подходящие модели – Phantom Dial-Up Remote Access и Smart IP Extender Switch Over IP. Первая стоит в районе $800, вторая… – $3500. Для банков и прочих денежных учреждений такая сумма, может быть, и подойдет, но вот для мелкой конторы – навряд ли. Кончено, порывшись в магазинах, можно найти KVM-коммутатор и подешевле, но лучше собрать систему удаленного управления самостоятельно.

Как это работает, или Удаленный контроль своими руками!

Для создания собственной системы удаленного управления нам понадобится любая PCI-карта и материнская плата, поддерживающая работу с PCI-шиной через BOOT-block (например, ASUS). На борту карты обязательно должна присутствовать «кроватка» с BIOS. На худой конец BIOS может находиться в отдельной микросхеме, которую несложно выпаять с платы и воткнуть в программатор. К сожалению, сетевые карты с «внешним» BIOS выходят из употребления и найти их становится все сложнее и сложнее. Современные Ethernet-контроллеры интегрируют BIOS в микросхему чиспета, и мы уже не можем ничего с ним сделать (только не перепутайте BIOS с панельной для Boot-ROM, это совсем не одно и то же!).

Вот и приходится пересаживаться на SCSI-контроллеры, цены на которые упали до 10$-14$. Разумеется, речь идет о простейших моделях, но ведь нам ничего, кроме BIOS, не нужно! Поэтому, даже дешевая модель будет работать ничуть не хуже дорогой. Заботиться о сохранении работоспособности контроллера не обязательно. Намного проще переписать BIOS с чистого листа, чем добавлять свои собственные модули в уже существующий (однако при желании это можно сделать) (см. рис. 11).


Дополнительный UART-контроллер приобретать не нужно. Лучше воспользоваться тем, что встроен в материнскую плату, а при желании можно задействовать еще и интегрированный Ethernet или любое другое средство коммуникации.

Разработка прошивок обычно ведется на Ассемблере, но при желании можно использовать и высокоуровневые языки типа Си/Си++. Только ни в коем случае не используйте стандартные библиотеки ввода/вывода и прикажите линкеру отключить Start-Up. Для этого достаточно переименовать функцию main в нечто вроде MyMain. Поскольку Си не поддерживает базирования, откомпилированный код должен быть полностью перемещаем (то есть выполняться независимо от базового адреса загрузки в память). Этого можно добиться, отказавшись от глобальных переменных и выключив все опции компилятора, которые могут генерировать неперемещаемый код, о котором мы даже не подозреваем (например, контроль «срыва» стека). Если вы не уверены, что хорошо знаете «задний двор» компилятора, – не используйте его! Программируйте на Ассемблере. Он не подведет!

Код прошивки исполняется в 16-разрядном сегменте реального режима, однако никто не запрещает нам переходить в защищенный режим и выходить оттуда, правда, не совсем понятно, зачем это нужно. Использовать служебные функции BIOS недопустимо, поскольку часть аппаратуры еще не инициирована, да и сам BIOS еще не распакован. Работайте только через порты ввода/вывода, однако перед этим не забудьте, что оборудование должно быть инициализировано вручную. В частности, интегрированный COM-порт еще не имеет ни базового адреса, ни IRQ, ведь PnP-менеджер, распределяющий системные ресурсы, еще не получил управления! Приходится открывать документацию на южный мост чипсета и программировать все железо с нуля. Это самый низкий уровень «общения» с аппаратурой! Необычайно сложный, но в то же время захватывающе интересный! К счастью, серверный мост уже частично инициализирован, поэтому настраивать контроллер памяти не обязательно.

Теперь поговорим о методиках эмуляции и перехвата. Для вывода информации на экран BIOS использует свою собственную сервисную службу INT 10h. Она же используется на стадии первичной загрузки операционных систем семейства Windows и UNIX. Перехватив это прерывание, мы сможем грабить весь вывод на экран и передавать его на удаленный компьютер («грабить» – вполне легальный термин, позаимствованный у англоязычных инженеров, которые говорят в этом случае «grab», звучит грубовато, зато почестному).

Разумеется, без сложностей здесь не обходится. Поскольку в процессе инициализации BIOS вектора прерывания могут переустанавливаться многократно, одной лишь модификации таблицы прерываний (т.е. классического способа перехвата) будет явно недостаточно. Да, мы можем изменить far-указатель по адресу: 0000h:10h*sizeof(DWORD) == 0000h:0040h,перенаправив его на свой собственный обработчик, но… через некоторое время контроль за INT 10h будет утерян. Чтобы этого избежать, необходимо установить аппаратную точку останова на запись этой ячейки памяти. В этом нам помогут отладочные регистры семейства DRx. Регистры Dr0-Dr3 хранят линейный физический адрес точки останова, а Dr7 определяет условия, при которых она срабатывает, заставляя процессор генерировать прерывание INT 01h, на котором должен находиться наш обработчик, выполняющий повторную «экспроприацию» INT 10h у системы.

Пример работы с отладочными регистрами приведен ниже.

Листинг 1. Перехватчик передает управление нашему коду в момент загрузки Boot-сектора

; перехватываем INT 01h

MOV ax, CS

XOR bx,bx

MOV DS,bx

; смещение нашего обработчика

MOV , offset our_vx_code

; относительно сегмента 0000h

MOV ,bx

MOV DS, ax

; устанавливаем точку останова на исполнение

MOV eax,302h

; линейный физический адрес точки останова

MOV ebx,7С00h

; Заносим значения в отладочные регистры

MOV dr7,eax

mov dr0,ebx

Прерывание INT 10h поддерживает свыше сотни различных функций, номер которых передается в регистре AH. В частности, 02h управляет курсором, а 09h печатает символ. Естественно, чтобы грабить вывод на экран, необходимо уметь отличать одну функцию от другой и знать, чем именно каждая из них занимается. Описание функций можно найти либо в технической документации на конкретную видеокарту (а если карта встроена в материнскую плату, то в документации на серверный мост чипсета), либо в знаменитом Interrupt List Ральфа Брауна, правда, он уже давно не обновлялся и сильно устарел. Последняя версия датируется летом 2000 года. С тех пор вышло множество новых карт! Впрочем, базовые видео-функции не претерпели никаких изменений, и если отбросить нестандартные видеорежимы, все будет работать на ура.

Текстовые режимы грабятся просто замечательно, а вот графические в пропускную способность аналоговых модемов уже не вмещаются, и передаваемую информацию приходится как-то сжимать. Самое простое – передавать только изменения, предварительно упаковав их по gzip-алгоритму, для работы с которым существует множество готовых библиотек.

Правда, с переходом операционной системы в защищенный режим, весь наш перехват будет «подавлен», и удаленный компьютер отобразит унылый застывший экран. В принципе с этим можно и смириться. Главное, что нам подконтролен BIOS Setup и начальная стадия загрузки оси, а там можно и стандартным telnet воспользоваться, если, конечно, на середине загрузки Windows не выбросит синий экран.

В своих первых моделях систем удаленного управления я поступал так: отслеживал попытку перехода в защищенный режим (а отследить ее можно с помощью все тех же отладочных регистров), переходил в защищенный режим сам, устанавливал свои обработчики прерывания и отдавал управление операционной системе, не позволяя ей ничего менять. Это работало! Хотя и сбоило тоже. Универсального перехватчика создать не получилось, и пришлось учитывать особенности реализации всех операционных систем. В конце концов я махнул рукой и написал обыкновенный драйвер-фильтр, работающий, как VGA-miniport, и пересылающий экранный вывод на «нашу» карту расширения (рис. 12).

Некоторые системы удаленного контроля (например, уже упомянутый комплекс PC Weasel 2000) вместо перехвата INT 10h просто грабят видео-буфер, что на первый взгляд существенно упрощает реализацию. Не нужно возиться с отладочными регистрами, рыться в Interrupt List и т. д. На самом деле даже в текстовом режиме имеется множество экранных страниц, а уж про графический мы вообще молчим! Причем совершенно неясно, как синхронизовать экранный вывод с его перехватом. Сканировать видеопамять с частой 50-60 Гц вполне реально, но вот запихать награбленные данные в модемный канал получится едва ли. А как это дело будет тормозить! Неудивительно, что PC Weasel 2000 работает только с текстовыми режимами!

Теперь перейдем к эмуляции ввода с клавиатуры. Мышь рассматривать не будем, поскольку нормальные администраторы свободно обходятся и без нее. Весь клавиатурный сервис сосредоточен в прерывании INT 16h, которое мы должны перехватить. Когда программа (и в частности, BIOS Setup) ожидает нажатия на клавишу, она обнуляет регистр AH и вызывает INT 16h. Конечно, существуют и другие варианты, но этот – самый популярный. В этом случае наш обработчик прерывания должен поместить ASCII-код символа, нажатого на удаленной клавиатуре, в регистр AL и возвратить управление. Естественно, все это будет работать только до перехода операционной системы в защищенный режим, а после – придется подгружать свой драйвер, «садящийся» поверх стандартного клавиатурного драйвера и эмулирующего ввод.

Удаленные диски реализуются совсем тривиально. За это отвечает прерывание INT 13h. Функция 02h обеспечивает чтение сектора, 03h – его запись. Номер сектора передается в регистрах CX и DX в CHS-формате. Удаленный CD-ROM реализуется чуть-чуть сложнее. Если вы не сильны в системном программировании, на первых порах лучше ограничиться виртуальными дискетами. Между прочим, использовать физические дискеты совсем не обязательно – удаленная машина может работать с их образом, записанным на жестком диске в виде файла. Для удаленной переустановки Windows NT этот прием вполне подходит. А смену виртуальных дискет автоматизировать совсем нетрудно.

В результате мы получим довольно могучий комплекс удаленного управления, и самое главное – очень дешевый. Конечно, наше время тоже что-то стоит (а времени на разработку и пуско-наладку уйдет много), но если такие комплексы изготавливать под заказ, они быстро себя окупят, тем более что на них наблюдается устойчивый спрос, ведь западные аналоги большинству просто не по карману.

Для завершения картины остается сущая мелочь – удаленный Reset, без которого наше творение будет неполноценно. Ну тут все просто. Достаточно подключить к LPT-порту реле, ведущее к «заветной» кнопке, и проблема будет решена. Из прошивки SCSI-контроллера мы можем управлять LPT-портом, конечно, не забыв, что перед этим его нужно инициализировать.

Один маленький трюк напоследок. Если полноценная система удаленного управления вам не нужна и всего лишь требуется запретить BIOS требовать нажатия на клавишу при загрузке, то без дополнительного оборудования легко обойтись. Достаточно загрузить прошивку основного BIOS в дизассемблер и найти все «ругательные» сообщения. Перекрестные ссылки приведут нас к машинному коду, который эти строки и выводит. Там же будет код, ожидающий нажатия на клавишу, который мы должны удалить. Прямой вызов INT 16h используется редко. Скорее всего, мы увидим что-то вроде CALL xxx, где xxx – адрес функции-обертки. Для достижения задуманного мы должны заменить CALL xxx на «MOV AX,scan-code», указав скэн-код требуемой клавиши. Например, клавиша в большинстве BIOS означает «загрузку с настройками по умолчанию», однако в некоторых случаях может потребоваться нажать или.

Проблема в том, что основной образ BIOS упакован и защищен контрольными суммами. Практически все разработчики BIOS распространяют утилиты для распаковки/упаковки и пересчета контрольных сумм, однако никакой гарантии, что модифицированный BIOS будет исправно работать, у нас нет. Ошибки могут появляться в самых неожиданных местах. Работа системы становится нестабильной, материнская плата без всяких видимых причин начинает зависать и т. д. Разумеется, для серверов это неприемлемо, поэтому приходится идти другим путем.

Вместо того чтобы модифицировать упакованный образ основного кода BIOS, мы возьмем неупакованный BOOT-block и добавим в него автоматический патчер, правящий нужные байты прямо в памяти, когда распаковка уже завершена. Поскольку основной код BIOS распаковывается в RAM, никаких проблем с его исправлением не возникает. Главное – определить нужные адреса. В этом нам поможет тот факт, что сам BIOS свой образ не затирает и в момент загрузки boot-сектора он присутствует в памяти. Достаточно написать крошечную ассемблерную программу, считывающую первые 640 Кб нижней памяти и записывающую их на гибкий диск, а затем внедрить ее в boot-сектор. После перезагрузки системы мы станем обладателями распакованного BIOS, лежащего по своим «родным» адресам.

Остается только прожечь обновленный BOOT-block и можно наслаждаться бесперебойной работой сервера!

Заключение

Полноценный удаленный контроль за системой – это реальность! Ассортимент возможных решений необычайно широк: от готовых (и весьма дорогостоящих!) KVM-устройств до более дешевых, но вместе с тем и более функциональных (!) плат расширения, которые большинство программистов легко изготовят самостоятельно. Физический доступ к серверу будет требоваться только при его ремонте (здесь без него никак не обойтись, ведь плоскогубцы с отверткой по модему не передашь), однако фатальные отказы происходят не так уж и часто.

  1. Remote Insight «Lights Out» boards – обзор систем удаленного управления (на англ.): http://www.paul.sladen.org/lights-out/riloe.html .
  2. Remote Insight Lights-Out Edition II – описание платы удаленного управления от Hewlett-Packard с возможностью заказа по Интернету (на англ.): http://h18004.www1.hp.com/products/servers/management/riloe2/server-slot-matrix.html .
  3. PC Weasel 2000 – описание альтернативной платы удаленного управления, микрокод, который распространяется по открытой лицензии (на англ.): http://www.realweasel.com/intro.html .
  4. Технические характеристики огромного количества систем удаленного управления (преимущественно KVM-коммутаторов, на англ.): http://www.kvms.com .
  5. Raritan IP-Reach TR364 – описание KVM-коммутатора TR364 (на англ.): http://www.42u.com/telereach_bk.htm .
  6. Архитектура ввода-вывода персональных ЭВМ IBM PC – электронная версия книги, посвященной устройству IBM PC, которую настоятельно рекомендуется прочитать перед разработкой собственной системы удаленного управления (на русском языке): http://redlib.narod.ru/asmdocs/asm_doc_07.zip .
  7. Ralf Brown Interrupt List – электронный справочник по всем прерываниям, портам ввода/вывода, «волшебным» адресам памяти, включая нестандартные расширения и недокументированные возможности (на англ.):

Когда-то давно, когда я ещё не был программистом, но с компьютерами уже дружил, технологии по типу RAdmin для меня были подобны чуду. Можно было подключиться к удалённому компьютеру, прямо как в самом крутом фильме про хакеров, открыть блокнот и написать там угрожающую надпись. Правда, пользоваться мне этим было негде.

Потом в мою жизнь пришёл ssh: осознание, что управляешь сервером за океаном сначала восхищало, а теперь уже стало обыденностью. Пока не наберешь случайно halt, ага. А потом начинаешь открывать админку хостера и пытаться зайти в консоль управления сервером, чтобы его запустить. А она почему-то сегодня тупит. Тогда пишешь в саппорт и нерничаешь. Не очень нравится. Но это мои личные программерские страхи.

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

И тут на сцену выходит Intel vPro.

Intel vPro – это такая штука, которая позволяет не бояться вещей, описанных выше и даже делать намного больше. Состоит vPro из двух компонентов: аппаратного и программного и про них я расскажу под катом.

Аппаратная часть

На аппаратном уровне нужен процессор и материнская плата (чипсет, как правило, начинается на Q, но нужно смотреть спецификации), поддерживающая vPro. В материнскую плату встроена гигабитная сетевая карта и видеоадаптер, которые способны на низкоуровневую работу. На практике это значит, что подключиться к компьютеру при помощи vPro можно без использования, мало того, что сетевых драйверов ОС, так и без самой ОС! И да, можно зайти в BIOS удалённо.

Поддерживается как проводное, так и беспроводное подключение. В случае WiFi полёта для фантазии не очень много – операционная система должна быть загружена и подключена к точке доступа, зато вот при использовании провода подключиться можно даже к выключенному компьютеру. Ну, так говорят маркетологи: на деле же выключенный компьютер можно включить и – далее как обычно.

Программная часть

Программная часть заключена в аббревиатуре AMT – это Intel Active Management Technology, которая обслуживает подключения и обладает огромными возможностями.

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

Сеанс связи шифруется, а доступ к серверу можно получить через консоль (serial over LAN), web-интерфейс или VNC. Web-интерфейс обладает неприметным рабочим дизайном (который при этом отлично отображается на планшетах) и позволяет получать статистику о железе, его состоянии и перезапускать компьютер, настраивать сетевой интерфейс и политики доступа к AMT, смотреть историю событий – узнать, почему же у секретарши не грузится система, не подходя к её компьютеру.

При подключении через консоль и VNC можно делать уже совсем всё: vPro предоставляет полноценный KVM с локальной машины на удалённую с поддержкой разрешения экрана до 1920х1200 и возможностью посмотреть, как загружается система от инициализации BIOS до непосредственной загрузки ОС. При этом даже при перезагрузке системы не происходит отключения! Единственное что для доступа в BIOS не получится просто зажать Delete при старте системы и надо будет выбрать специальный пункт «Reboot to BIOS».

После чего в самом деле загружается BIOS.

Особенно приятно то, что можно подключиться к удалённой машине по VNC даже в том случае если там слетели драйвера сетевой карты (ведь vPro работает на более низком уровне чем ОС) и прямо через VNC поставить все драйверы. И если в пределах офиса это ещё решаемо, то вот ехать в дата-центр может быть не с руки.

Есть еще одна интересная возможность под название IDE-R которая позволяет загружаться с внешнего источника как будто это внутренний жёсткий диск. То есть можно подключиться по VNC, указать образ для загрузки и загрузиться в заведоморабочей системе. Очень может быть полезная функция как для диагностики, так и для администрирования. Например можно загружать клиентскую машину с системой в которой настроен эталонный антивирус, проверять жетский диск и незаметно уходить.

Про безопасность

При помощи vPro работает технология Intel Anti-Theft. Если у вас украли ноутбук, то вы можете связаться с Intel и они заброкируют его. В блоге Intel есть уже данной технологии. После блокировки новый обладатель компьютера увидит такую картинку.

Заключение и ссылки

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

Подпишитесь на комментарии к посту - в них обещает быть много интересного. Или проверьте топик через пару дней - я вынесу все самые интересные комментарии отдельным списком внизу поста.