Intel AMT - история появления и развития функционала

Intel® Active Management Technology (Intel® AMT) - аппаратная технология, позволяющая удалённо управлять компьютером. Так будет, если кратко описать суть AMT. Если же интересует "некратко" - далее чутка букв об истории появления и развития Intel AMT (с упором на функционал и хронологию, т.е. без подробностей "программного" характера - вопросы активации/инициализации/конфигурирования слишком обширны и будут описаны отдельно).

Intel® Management Engine (Intel® ME)

Intel AMT базируется на Intel ME, потому для начала, кто захочет разобраться, стоит прочитать статьи о "предыстории появления ME" и более подробная по "Intel ME".

Технологии удалённого управления до Intel AMT

Intel AMT - технология по удалённому управлению компьютером, потому она есть продолжение-развитие предшествующих ей решений.

Wired for Management (WfM)

В середине 90-ых был бум так называемых NetPC - когда взрывообразное развитие интернета, казалось, уже совсем скоро распространится на всё, а потому будущее за "сетевыми компьютерами", целиком "интегрированными в сеть" (в т.ч. так называемые "тонкие клиенты" - бездисковые рабочие станции, которые загружаются удалённо). Для реализации подобного жизненно требовались стандарты, описывающие работу таких систем. Так в 1997-м году появилась первая подобная спецификация - WfM 1.0. В её составе были ставшие после классическими Wake-on-LAN (WoL) и Preboot Execution Environment (PXE). Стандарт WoL описывал возможность удалённого включения компьютера, а PXE - удалённой загрузки по сети.

Alert on LAN

В 1998-м году на Pentium II системах с расположенной на материнской плате сетевой картой Intel 82558, появилась возможность не только включать и загружать компьютер, но также и отправлять через неё системные сообщения о состоянии компьютера. Технология реализована аппаратно - чипсет, соединённый с сетевым адаптером через шину SMBus, выдавал все подробности о состоянии системы (температура датчиков, сообщения об ошибках загрузки и т.п.), а тот пересылал их на предварительно сконфигурированный адрес (т.е. администратору).

Alert Standart Format (ASF)

Во второй версии Alert-on-Lan (AoL) обзавёлся возможностью не только отсылать данные, но и обратную возможность - администратору включить/выключить/перезагрузить компьютер. После оформления его в готовую спецификацию (2001-ый год) AoL-2 переименовали в ASF.

Появление Intel AMT

Первый опыт эксплуатации ASF высветил ряд серьёзных проблем в его использовании. В первую очередь это было отсутствие шифрования канала (хотя данный недостаток в какой-то мере был устранён в ASF 2.0). Однако кроме этого был ряд серьёзных моментов - работа по UDP, отсутствие политик обработки сообщений (лишь один админ на все устройства), невозможность сохранения сообщений в лог локально (т.е. если не было сети, то что "было" с компьютером после определить невозможно, т.к. сообщение о состоянии компьютера может быть лишь "сразу отправлено") и др.
Это подвигло всё ту же команду Интел наряду с разработкой второй версии ASF, сразу же заняться разработкой будущего, более продвинутого стандарта по управлению, где-то схожего с IPMI, но для "несерверов", подходящего также и для "мобильного" применения (т.е. применимого для ноутбуков).

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

Путь к AMT

Под собранные данные был разработан прототип стандарта, который через год ещё раз был уточнён и согласован с ними же. По результатам в 2004-м году появилась первая версия AMT, которая была анонсирована на IDF’04. После окончания тестирования, она вышла на рынок летом 2005-го года в составе чипсета i945/ICH7 с сетевой картой i82573E.

Intel AMT 1.0

Процессор для первой версии Intel ME/AMT был встроен в сетевой контроллер Intel 82573E (кодовое название "Tekoa"):

AMT1

При расположении на материнской плате он был "аппаратно" связан с южным мостом ICH7 посредством SMBus. "Программно" данная связь реализовалась посредством устанавливаемого AMT KCS-драйвера, что позволяло взаимодействовать с ОС.

Аббревиатура KCS расшифровывается как Keyboard Control Style - характерный для простых ("однопроводных") интерфейсов (каким является SMBus) вариант взаимодействия, ещё с древних времён (1980г.) популярного контроллера клавиатуры Intel 8051.

Общая схема работы Intel AMT1.0 следующая:

Общая схема работы AMT

Весь входящий трафик фильтруется на входе (Packet Filter) и все пакеты, предназначенные "для AMT" из него "вырезаются" (т.е. ОС этот "management"-трафик "не видит", т.к. банально не получает, потому, в частности, и название "out-of-bond" - "внеполосной") и отправляются на ME/AMT. Всё взаимодействие с AMT происходит через веб-сервисы, потому на входе у ME имеется HTTP-сервер, преобразующий через API получаемые команды/данные. Для работы по шифрованному каналу может быть использовано TLS-шифрование, потому также присутствует необходимый для реализации данного функционала блок. Для взаимодействия ME/AMT с BIOS используется MEBx (ME-BIOS extension, в первых версиях назывались AMTBx) - специально разработанный для OEM-производителей модуль для BIOS, позволяющий настраивать основные параметры AMT/ME (значения которых хранятся в NVRAM). Обычно данный модуль вызывается путём нажатия CTRL-P при загрузке.

Основной функционал AMT1.0

  • Работа вне зависимости от состояния (наличия) ОС, в том числе работа в S5 (компьютер выключен - в "дежурном" режиме работы)
  • Включение, выключение, перезагрузка (всё вне зависимости от состояния компьютера)
  • "Serial-over-LAN" (SoL) - виртуальный последовательный порт по сети, который позволяет удалённо производить (относительно простые) действия (например, настраивать BIOS Setup)

    Serial-on-LAN

  • Удалённое получение данных о составе "железа" ("hardware inventory")

    AMT - Hardware Inventory

  • Сохранение AMT-данных в специальной области NVRAM (которые после могут быть доступны удалённо, в том числе, когда компьютер выключен)
  • IDE-R — перенаправление (по сети) загрузки с локальных носителей на предварительно сконфигурированный образ, позволяющий с него загрузиться (в отличие от PXE — не требуется наличие DCHP-сервера, сконфигурированного специально под это). Таким образом, с помощью IDE-R может осуществляться удалённая диагностика и даже ремонт

    AMT - Remote Diagnostic - IDE-Redirect (IDE-R)

Основные отличия AMT1.0 от ASF2.0

  • Интерфейс - SOAP вместо RMCP
  • Шифрование - TLS вместо RSP
  • IDER (в добавление к PXE)
  • Возможность настроить разных подписчиков на сообщения о работе компьютера и политики его на управление им (а не лишь единый админ)
  • Event log - сохранение лога событий локально
  • Область для сохранения пользовательских AMT-данных
  • Возможность получения состава оборудования ("asset information", "hardware inventory" и др. подобные названия данной фичи)

Недостатки AMT1

  • процесс конфигурирования не поддерживал шифрования (лишь после - сама работа сконфигурированной AMT), потому в документации присутствовала рекомендация использования для этого процесса "isolated network"
  • однопоточный ("single treaded") режим работы Windows<=>KCS<=>АМТ (т.к. связь через SMBus)

Intel AMT 2.0

В 2006-м году появились AMT2-системы. Главное отличие первой и второй версии в том, что процессор ME был встроен не в сетевую карту, а в чипсет (северный мост Q965, южный мост ICH8):

AMT2

Это позволило добавить новые фичи: System Defense и Agent presence.

AMT - System Defence

System Defence

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

AMT - System Defence - защита от червей

Для борьбы с данной напастью была разработана технология System Defence, которая позволяла задавать правила работы сетевой карты - такая-то скорость приёма-передачи (пакетов-байт в секунду), вплоть до её полной блокировки (и на приём и на передачу), в то же время "АМТ канал связи" продолжал работать, позволяя после устранения проблемы "разблокировать" (удалённо) систему, "вернув" ей доступ в сеть (т.е. через АМТ "включив" сетевую карту для операционной системы).

Agent Presence

Другой проблемой всё в то же самое время были настолько злобные вирусы, которые могли "выключать" антивирусы, потому для борьбы с этим (хотя не только) была разработана технология Agent Presence.

AMT - Agent Presense

Она позволяла ставить "аппаратное слежение" за наличием выбранного процесса в операционной системе, а когда он по любой причине "исчезал" (например, был остановлен/убит вражеским процессом вируса) - админу по "AMT-каналу" отправлялось соответственное предупреждение. Таким образом можно было быть уверенным, что система точно крутится под управлением важных для неё (или вас) процессов и если что-то произойдёт - вы сможете сразу предпринять какие-то действия (например, удалённо заблокировать сетевой интерфейс с помощью функции System Defense или совсем выключить компьютер).

HECI

Связь между ОС и AMT2 происходит через HECI-драйвер.

AMT - HECI

Host Embedded Controller Interface -
интерфейс между ОС (т.е. "Host") и "Embedded Controller" (т.е. Intel ME)

Основные отличия AMT1.0 и AMT2.0

  • Новые возможности благодаря встроенному в чипсет ME/AMT - "System Defense" и "Agent presence"
  • Многопоточный ("multi treaded") режим работы, т.к. HECI (в отличие от KCS) не имеет таких ограничений
  • Больше места для сохранения AMT-данных
  • Конфигурирование по шифрованному каналу благодаря наличию TLS-PSK (PreShared Keys) - предварительно заданных ключей в MEBx и конфигурирующем сервере

Изменения в AMT2.1:

  • Добавлен режим "ME-Wake-on-LAN", позволяющий ME переходить в "спящий режим" (пониженного энергопотребления) и "просыпающийся" (начинает работать на полной частоте) по сигналу от какого-то события.

Изменения AMT2.2:

  • Поддержка конфигурирования через сертификаты (в дополнение к TLS-PSK) - "Remote Configuration"
  • Поддержка "Zero-Touch" технологии - это когда с помощью USB-флешки можно было в "полуавтоматическом" режиме (т.е. просто нажав "Y" на запрос о автоконфигурировании AMT) внести нужные настройки AMT (в т.ч. ключи шифрования PID/PSK) и AMT сам отправляет запрос на конфигурирование (на указанный в конфигурационных данных сервер)

Intel AMT2.5

Версии Intel AMT2.0-2.2 - "десктопные", соответственно, работающие исключительно через Ethernet-интерфейс (LAN only). Для мобильных платформ i965/ICH9, где связь могла осуществлятья по WiFi, в 2007-м году появились AMT2.5-системы, где AMT-фичи теперь работали и через LAN, и через WLAN.

Отличия AMT2.5 от AMT2

  • Главное отличие - работа AMT по WiFi. Реализация функционала System Defense при этом реализована "программно" (на уровне драйвера).
  • Поддержка "Environment Detection" - возможности AMT определять по DNS-суффиксу, в какой локальной сети сейчас работает компьютер и железно закрывать все AMT-порты в случае "вне корпоративной сети".
  • Поддержка работы AMT по VPN
  • Поддержка 802.1x

Изменения в AMT2.6:

  • Поддержка конфигурирования через сертификаты ("Remote Configuration") в дополнение к TLS-PSK и поддержка "Zero-Touch" - аналогично AMT2.2 (данное обновление вышло одновременно для десктопной и ноутбучной версии)
  • Поддержка PXE поверх 802.1x

Intel AMT3.0

С выходом в 2007-м году Q35-го чипсета, предназначенного для десктоп-систем (т.е. без WiFi), в AMT появилась поддержка WS-Man и DASH1.0 (частично, полная лишь в 3.2). Кроме того, улучшая Zero-Touch вариант конфигурации, был добавлен так называемый "Bare Metal" метод конфигурирования - по-настоящему "полностью автоматический", когда компьютер сам находил сервер для конфигурирования и отсылал на него запрос просто после подачи питания.

Отличия AMT3 от AMT2.x

  • Шифрование ME-данных
  • Поддержка "Bare Metal" инициализации AMT

Изменения в AMT3.1:

  • Поддержка 802.1x (как для AMT 2.5)

Изменения в AMT3.2:

  • Поддержка PXE поверх 802.1x (как для AMT2.6)
  • Полная поддержка DASH1.0

Intel AMT4.0

В 2008-м году появилась версия AMT4.0 - чисто "ноутбучная" (как и 2.5/2.6), на мобильных чипсетах Intel Series 4. Самым главным и самым важным нововведением стала возможность работы AMT через интернет с помощью CIRA (Client Initiated Remote Access) - когда канал связи между AMT и администратором создавался путём "вызова" со стороны AMT-компьютера, что позволяло соединяться при наличии любых firewall/routers и т.п.

AMT - CIRA

  1. Компьютер (AMT) "инициирует соединение" с MPS (Management Proxy Server - прокси-сервер для AMT-трафика). При этом AMT-компьютер является "вызывающей" стороной, поэтому созданию канала не помешают никакие фиреволлы, за которыми он может находиться. Канал AMT-MPS обычно использует TLS-шифрование.
  2. Админ со своей Management-консоли может подключить к MPS-серверу и получать, либо отправлять данные на AMT-компьютер "через" MPS.
  3. MPS отправляет данные от админа на AMT-компьютер (и обратно), через созданный канал.

Отличие AMT4 от AMT3

  • Работа AMT через интернет - локальный фукнкционал "транслируется" на MPS и может быть использован на админской стороне (обеспечивается с помощью CIRA)
  • Audit log, где хранится отчёт по операциям управления AMT-компьютером. Для защиты от изменений лог подписан цифровым сертификатом.

Изменения в AMT4.1:

  • Поддержка технологии "AntiTheft" - функционала "антивор", позволяющего блокировать компьютер удалённо при краже-утере с возможностью разблокировки в случае возврата

Изменения в AMT4.2:

  • Поддержка Windows 7
  • Обновлены корневые сертификаты
  • Поддержка инициализации AMT через WiFi-интерфейс

Intel AMT5.0

Сразу же после выхода "ноутбучной" версии 4.0 появилась и AMT5.0 - как и 3.х "чисто десктопная". В основном она повторяла функционал AMT4.0, лишь без "ноутбучных" особенностей.

Отличие AMT5 от AMT4

Самым главным отличием было появление "Standard Manageability" варианта AMT - урезанной версии AMT5, где оставались лишь базовые возможности. По сути компьютер с такой "обрезанной" версией AMT5 имел функционал AMT3.x.

Изменения в AMT5.1:

  • Поддержка "PC Alarm Clock" - возможности включать компьютер по расписанию (указывая нужное время "просыпания" как "будильник")

Изменения в AMT5.2:

  • Исправление ошибок, добавленных в предыдущих версиях

Intel AMT6.0

В 2010-м году появилась версия AMT6.0 - общая и для "ноутбучного" и для "десктопного" сегментов. Самым заметным нововведением AMT6.0 стала поддержка KVM (Keyboard Video Mouse) - удалённое управление компьютером в графическом режиме, при чём сеанс работы с ним не прекращался даже после (и в момент) перезагрузки. В результате компьютеры с Intel AMT KVM получали функционал, доступный до этого лишь в сегменте серверов (с видеоядром в BMC - Baseboard Management Controller).

Присутствующий в предыдущих версиях AMT функционал для упрощённой "первичной настройки" AMT, который подразумевал так называемый "Small Business"-сегмент (и имел некоторые ограничения по сравнению с "полной" версией - "Enterprise") был упразднён. Вместо этого в настройках MEBx появилась кнопка "Activate Network Access" автоматически (сразу же после нажатия - прямо в BIOS) переводила AMT в сконфигурированный Admin-режим работы.

Отличие AMT6 от AMT5

  • Поддержка "KVM Remote Control" с разрешение до 1600x1200 включительно
  • Поддержка IPv6
  • "Manual Configuration" (кнопка "Activate Network Access" в BIOS/MEBx)
  • Для мобильных систем - синхронизация WiFi профиля (автоматическая передача настроек доступа из Windows в AMT)
  • Для мобильных систем - возможность задания "LinkPreference" (предпочитаемый интерфейс, который получает управление послеIDER-перезагрузки)

Изменения в AMT6.1:

  • Поддержка "Host Based Configuration" (HBC) - возможности конфигурировать компьютер локально, а не только с конфигурационного сервера (правда лишь для уже проинициализированного AMT; сам же процесс инициализация по-прежнему был возможен лишь с удалённого сервера).
  • Поддержка 1920x1080 для AMT KVM
  • Поддержка удалённого управления "LinkPreference"

Изменения в AMT6.2:

  • Поддержка Windows 8
  • Исправлены некоторые ошибки связанные с безопасностью версии 6.1, потому официально HBC поддерживается лишь с этой версии
  • Поддержка цифровой подписи текущей конфигурации AMT

Intel AMT7.0

В 2011-м году с выходом чипсетов 6-й серии ("Sandy Bridge") появилась AMT версии 7.0. Основной её отличительной особенностью стало полноценное локальное и конфигурирование и инициализация - Host Based Proviosing (HBP), т.е. AMT7 компьютер мог быть настроен локально и без захода в BIOS.

Отличие AMT7 от AMT6

  • "HBP" - полноценная "локальная настройка" AMT
  • Для "десктоп"-систем - поддержка работы AMT по WiFi (до этого так могли лишь мобильные)
  • Синхронизация IP AMT-системы со статическим адресом в ОС
  • Поддержка 1920x1200 для AMT KVM
  • Отмена поддержки PID/PSK-варианта инициализации
  • Отмена поддержки удалённого обновления AMT-прошивки

Изменения в AMT7.1:

  • Поддержка динамического обновления DNS для IP AMT-системы (DyDNS)

Intel AMT8.0

В 2012-м году с выходом чипсетов 7-й серии ("Ivy Bridge") появилась и версия 8.0. Из-за того, что и сами чипсеты отличались минимально (от 6-й серии) - лишь поддержкой новых процессоров, то и функционал AMT8 не изменился (лишь обновление и косметические правки по ходу разработки).

Отличие AMT8 от AMT7

  • Поддержка Small Business Technology (SBT или в другом варианте Small Business Advantage - SBA) - узконаправленный функционал по некоторому управлению компьютерами для малого бизнеса. Данная технология напрямую к AMT не относится, однако использует некоторые его элементы (например, "PC Alarm Clock") и SDK

Изменения в AMT8.1:

  • "Link Protection" - поддержка автоматического управления "LinkPreference", избавляющего от необходимости при загрузке (IDE-R) по WiFi "вручную" менять это значение

Intel AMT9.0

В 2013-м году с выходом чипсетов 8-й серии ("Lynx Point") появилась версия Intel AMT 9.0. Для поддержки новых состояний процессора Haswell в ней был добавлен требуемый функционал и со стороны AMT. Для встраиваемых систем (только) появилась возможность преконфигурировать систему для работы в "Admin mode" (чтобы такую систему можно было издалека активировать и полностью настроить).

Отличие AMT9 от AMT8

  • Поддержка новых состояний энергосбережения процессора Haswell
  • Поддержка 2560x1600 для AMT KVM
  • Полностью отменена поддержка SOAP-интерфейса

Intel AMT9.5

Вместе с выходом версии 9.0 появилась и версия AMT9.5, которая предназначалась для мобильных систем (планшеты и ультрабуки), не имеющих Ethernet интерфейса (т.е. только WiFi и другие беспроводные варианты работы). Это привело к урезанию некоторого функционала из-за архитектуры, которая по своей схеме работы не изменилась со времён АМТ2.5 и не предполагала отсутствия LAN-интерфейса, ME-подсистема которого играла существенную роль (а у неё в свою очередь родителем была ME2.0, где АМТ вообще впервые появилась в составе чипсета). WiFi в схеме ME2.5 работает "через" Ethernet  ME-subsystem и потому последняя пропала - "всё поломалось", остались лишь "программные" (на уровне драйвера ОС) возможности.

Отличие AMT9.5 от AMT9

  • Урезаны некоторые функции, которые были завязаны на Ethernet-подсистему. Из наиболее значимых - это поддержка сертификатов (TLS-шифрование)

Intel AMT10.0/10.5

В конце 2014-го года планируется к выходу AMT10. Информации о новом функционале пока нет, но можно предположить, что в первую очередь будет решаться проблема "wireless-only" платформ.

Отличие AMT10/10.5 от AMT9/9.5:

  • Отменена поддержка "AntiTheft" (появившейся в AMT4.1)

 


Использованные документы:

...статья в процессе...

Добавить комментарий

Filtered HTML

  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Доступные HTML теги: <a> <em> <strong> <cite> <blockquote> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Строки и параграфы переносятся автоматически.

Plain text

  • HTML-теги не обрабатываются и показываются как обычный текст
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Строки и параграфы переносятся автоматически.
Anti-bot.