Централизованное управление мобильными устройствами iOS через MDM
Последние несколько недель я провел в поисках изучения и поиска информации об MDM (Mobile device management). Другими словами, управлением мобильными устройствами. И сейчас я хочу поделиться результатами поиска. MDM стал темой горячих споров, поскольку организации вынуждены вводить режим безопасности, если идет речь о важных данных. Мобильные устройства проникают на каждый уровень корпоративного общества, отчего возникает большая необходимость удаленного управления этими устройствами. Apple предоставляет несколько корпоративных возможностей такого управления с помощью удаленной конфигурации профилей, полная поддержка которых доступна с 2010 года.
Зачем MDM вообще нужен?
Для лучшего понимания рассмотрим конкретный пример, в котором мы имеем очень много iOS девайсов в компании и должны управлять всеми ими централизованно. Ваши действия? Либо мы используем сторонние приложения для обеспечения такого управления, например, Air-watch, либо пробуем развернуть сервис Enterprise Deployment от Apple, он же «MDM». В первом случае придется не слабо раскошелиться, поэтому рассмотрим сразу второй вариант.
Разберемся, что из себя представляет MDM?
Протокол управления мобильными устройствами MDM позволяет системным администраторам отправлять команды управления на подключенные устройства под управлением iOS 4 и более поздних версий системы.
Через MDM сервис администратор может просмотреть, добавить или удалить профили, удалить коды доступов или безопасно удалить данные на удаленном устройстве.
Согласно документации Apple:
Протокол MDM построен на основе HTTP, TLS и push-уведомлений. Соотвествующий протокол проверки MDM обеспечивает способ передачи процесса начальной регистрации на отдельный сервер. Далее MDM использует Apple Push Notification Service (APNS) для отправки сообщения «wake up» (очнись!) для управляемого устройства. Затем устройство подключается к заранее определенной веб-службе для получения команд и возвращения результата их выполнения.
Вышеуказанное понимается так, что для работы службы MDM необходимо развернуть HTTP-сервер, чтобы работать как MDM-сервер, а затем распространять профили, содержащие необходимую информацию для управления устройствами.
Ключевая особенность: возможность администратору отправлять профили на устройство без какого-либо непосредственного физического вмешательства.
Таким образом, сервис MDM состоит из трех ключевых вещей:
1. Устройства, которыми нужно управлять (конечно же)
2. Сервер, осуществляющий управление (различные серверы MDM)
3. Методы, с помощью которых сервер может «разбудить» устройство через уведомление ASNP
Необходимые данные могут содержаться в файле конфигурации с расширением .mobileconfig передаваемый через электронную почту или страницу в интернете, как часть итоговой конфигурации профиля доставляемого через удаленную службу регистрации или с помощью Device Enrollment Program (DEP) автоматически.
В любой момент времени на устройстве может быть установлены данные только одного MDM. После того как вы зарегистрировались на сервере MDM, устанавливается безопасная связь между MDM-сервером и порталом Apple. Это используется для синхронизации сведений о девайсе, с помощью портала регистрации устройств Apple DEP.
Когда вы найдете устройства, синхронизированные с порталом Apple, то можете назначить пользователя для него.
Всякий раз когда устройство активируется, все ограничения и конфигурации, указанные через MDM автоматически устанавливаются на все ваши устройства удаленно. Настройте DEP, что все устройства приобретенные в рамках DEP, будут управляться MDM по-умолчанию как только они были активированы. Рассмотрим как это работает с сервером.
После регистрации
Каждое взаимодействие между клиентом устройств и сервером MDM состоит из четырёх элементов:
1. Сервер запрашивает push-уведомление через Apple
2. Apple отправляет push-уведомление на устройство
3. Устройство подключается к серверу
4. Сервер и клиент обмениваются командами и результатами
Удаленное управление мобильными устройствами iOS и MacOS через MDM

В дополнение к управляемым профилям можно также использовать MDM для установки приложений. Служба MDM имеет дополнительный контроль над тем, как управляемые приложения и их данные используются на устройстве.
Обратите внимание
Необходимо приобрести сертификат APNS. Это позволит MDM-серверу взаимодействовать с клиентом и без данного сертификата MDM сервис работать не будет.
Некоторые потрясающие возможности MDM:
1. Удаленный доступ
2. Поддержка множества мобильных операционных систем
3. Механизм защиты
4. Управление приложениями корпоративного уровня
Краткий итог
- Основной целью протокола MDM является отправка команд на устройства iOS и обработка результатов.
- Протокол MDM основан на протоколе HTTPS (secure HTTP), который используется для обмена XML-сообщениями, называемыми списками свойств (plists).
- В протоколе MDM сервер не отправляет команды на устройство. Вместо этого сервер использует службу Apple Push Notification Service (APNS) для уведомления устройства о наличии новых команд.
- Как только устройство получает push-уведомление, оно запрашивает команды у сервера MDM, выполняет их и отправляет результаты обратно на сервер MDM.
Процесс регистрации устройства DEP
Устройства регистрируются в MDM, когда сервер предоставляет устройству специальный профиль конфигурации. Этот профиль содержит:
MDM Payload
Это специальные параметры, которые сообщают устройству, что оно будет управляться сервером MDM. Он содержит URL-адрес сервера, тему push-уведомления и другие атрибуты. Для получения более подробной информации о МДМ полезной нагрузки см. в МДМ ведения протокола.
Сертификат идентификации устройства
Мобильный сервер должен аутентифицировать подключенные устройства. Поскольку MDM выполняется автоматически без взаимодействия с пользователем, обычная аутентификация имени пользователя / пароля не будет работать. Мобильный сервер (в качестве сервера MDM) проверяет устройства по их сертификату. Это называется аутентификацией сертификата и выполняется на уровне SSL сервера.
Это не конечная диаграмма - поищите официальный документ DEP, и вы увидите, что он будет содержать “намного больше” информации.
Итог
Кратко рассмотрели что представляет из себя MDM и зачем он нужен. Для уверенного использования системы необходимо ознакомиться с большим количеством информации, ведь системы корпоративного уровня всегда учитывают много нюансов. Надеюсь пост был интересен и дал новые знания об экосистеме устройств Apple.
Перевод статьи Mobile device management (MDM) for iOS - https://medium.com/swlh/mobile-device-management-mdm-for-ios-60448313dafb