Что такое единый вход Майкрософт для Linux?

Единая система аутентификации (SSO) Microsoft для Linux поддерживается Microsoft Identity Broker, программным компонентом, который интегрирует устройства Linux с Microsoft Entra ID. Это решение позволяет пользователям проходить проверку подлинности один раз с помощью учетных данных идентификатора Microsoft Entra ID и получать доступ к нескольким приложениям и ресурсам без повторных запросов проверки подлинности. Эта функция упрощает процесс входа для пользователей и сокращает затраты на управление паролями для администраторов.

Features

Эта функция позволяет пользователям на настольных компьютерах Linux регистрировать свои устройства с помощью идентификатора Microsoft Entra, регистрироваться в управлении Intune и удовлетворять политикам условного доступа на основе устройств при доступе к корпоративным ресурсам.

  • Предоставляет регистрацию идентификатора Microsoft Entra ID и подключение настольных компьютеров Linux
  • Предоставляет возможности единого входа для собственных и веб-приложений (например, Azure CLI, Microsoft Edge, Teams PWA) для доступа к защищенным ресурсам Microsoft 365 и Azure
  • Предоставляет единый вход для учетных записей Microsoft Entra в приложениях, использующих MSAL для .NET или MSAL для Python, что позволяет клиентам использовать библиотеку проверки подлинности Майкрософт (MSAL) для интеграции единого входа в пользовательские приложения.
  • Включает политики условного доступа, защищающие веб-приложения с помощью Microsoft Edge
  • Активирует стандартные политики соответствия для Intune
  • Включает поддержку сценариев Bash для пользовательских политик соответствия

Веб-приложение Teams и прогрессивное веб-приложение (PWA) для Linux используют конфигурацию условного доступа через Microsoft Intune, чтобы пользователи Linux могли получать доступ к Teams с помощью Microsoft Edge.

Предпосылки

Поддерживаемые операционные системы

Единый вход Майкрософт для Linux поддерживается на следующих операционных системах (физических или Hyper-V компьютерах с процессорами x86/64):

  • Ubuntu Desktop 26.04 LTS (долгосрочная поддержка)
  • Ubuntu Desktop 24.04 LTS (долгосрочная поддержка)
  • Red Hat Enterprise Linux 9 (долгосрочная поддержка)
  • Red Hat Enterprise Linux 10 (долгосрочная поддержка)

Требования к системе

  • Интернет-соединение для установки пакета и взаимодействия с Microsoft Entra ID
  • Административные привилегии для установки
  • Среда рабочего стола (GNOME, KDE или аналогичная)

Требования к идентификаторам Microsoft Entra

  • Клиент идентификатора Microsoft Entra
  • Учетные записи пользователей, синхронизированные с или созданные в идентификаторе Microsoft Entra
  • Соответствующее лицензирование для политик условного доступа (если применимо)

Единая система аутентификации (SSO)

В следующей анимации показан процесс входа для осуществляемых через брокера потоков в Linux.

Использование проверки подлинности паролей в Linux, как показано в следующей анимации.

Демонстрация интерфейса входа Linux с PRMFA.

Замечание

microsoft-identity-broker Версия 3.0.x и более ранние версии в настоящее время не поддерживают соответствие FIPS.

Installation

Пакет приложения Microsoft для Единого входа в систему для Linux доступен по адресу https://packages.microsoft.com/. Дополнительные сведения об использовании, установке и настройке пакетов программного обеспечения Linux для продуктов Microsoft см. в разделе Linux Software Repository для продуктов Microsoft.

Пример скрипта для установки Microsoft Single Sign-On для Linux и приложения Intune, а также их зависимостей на вашем устройстве, доступен на GitHub. Перед установкой внимательно ознакомьтесь с инструкциями.

Запустите следующие команды в интерфейсе командной строки, чтобы вручную установить единую аутентификацию от Майкрософт (microsoft-identity-broker) и ее зависимости на вашем устройстве.

  1. Установите Curl.

    sudo apt install curl gpg
    
  2. Установите ключ подписи пакета Майкрософт.

    # Ubuntu 26.04+ repos are signed with a newer Microsoft GPG key
    if dpkg --compare-versions "$RELEASE" ge "26.04"; then
        MS_GPG_KEY_URL="https://packages.microsoft.com/keys/microsoft-2025.asc"
    else
        MS_GPG_KEY_URL="https://packages.microsoft.com/keys/microsoft.asc"
    fi
    
    # Import Microsoft GPG key (always refresh to pick up key rotations)
    curl -fsSL "$MS_GPG_KEY_URL" | gpg --dearmor > "$HOME/microsoft.gpg"
    sudo install -o root -g root -m 644 "$HOME/microsoft.gpg" /usr/share/keyrings/
    rm -f "$HOME/microsoft.gpg"
    
  3. Добавьте и обновите репозиторий Microsoft Linux в список системных репозиторий.

    sudo sh -c 'echo "deb [arch=amd64 signed-by=/usr/share/keyrings/microsoft.gpg] https://packages.microsoft.com/ubuntu/$(lsb_release -rs)/prod $(lsb_release -cs) main" >> /etc/apt/sources.list.d/microsoft-ubuntu-$(lsb_release -cs)-prod.list'
    sudo apt update
    
  4. Установите приложение единого входа Майкрософт (microsoft-identity-broker).

    sudo apt install microsoft-identity-broker
    
  5. Перезагрузите устройство.

Обновление Брокера удостоверений Microsoft

Выполните следующие команды, чтобы вручную обновить брокер удостоверений Майкрософт.

  1. Обновите репозиторий и метаданные пакета.

    sudo apt update
    
  2. Обновите пакет Microsoft Identity Broker.

    sudo apt upgrade microsoft-identity-broker
    

Удалите Microsoft Identity Broker

Выполните следующие команды, чтобы удалить microsoft Identity Broker и удалить локальные данные конфигурации.

  1. Удалите microsoft Identity Broker из системы.

    sudo apt remove microsoft-identity-broker
    
  2. Удалите данные локальной конфигурации.

    sudo apt purge intune-portal
    sudo apt purge microsoft-identity-broker
    

Предупреждение

Обратите внимание, что удаление брокера удостоверений Майкрософт не автоматически отменяет регистрацию устройства из идентификатора Microsoft Entra, а также не отменяет регистрацию устройства из управления Intune. Чтобы удалить регистрацию устройства, можно использовать средство dsregcmd или удалить устройство с портала идентификатора Microsoft Entra.


Отмена регистрации устройства с помощью dsregc

В версии 2.5.x microsoft-identity-broker мы включили новую служебную программу под названием dsreg, которая позволяет управлять регистрацией устройства с помощью Microsoft Entra ID.

Чтобы отменить регистрацию устройства из Microsoft Entra ID с помощью dsreg средства, выполните следующую команду в терминале, заменив <tenant-guid> на GUID клиента Microsoft Entra ID.

sudo dsreg --tenant-id <tenant-guid> --unregister

Если ваша система входит в нерабочее состояние, и вы хотите очистить все локальные данные регистрации и ключевые данные, можно использовать параметр --cleanup с инструментом dsreg. Этот режим служебной программы полезен, когда необходимо убедиться, что все локальные следы Microsoft Identity Broker удаляются с устройства, например, при устранении неполадок или подготовке устройства для нового пользователя.

Чтобы отменить регистрацию и удалить все ключевые материалы с помощью средства dsreg, выполните следующую команду в терминале:

# Clean broker state including certificates (requires sudo)
sudo dsreg --cleanup

Предупреждение

Параметр --cleanup необратим и удаляет все ключевые материалы с устройства. Используйте с осторожностью.

Включение Phish-Resistant MFA (PRMFA) на устройствах Linux

Начиная с версии 2.0.2 microsoft-identity-broker, устойчивая к фишингу многофакторная аутентификация (PRMFA) поддерживается на устройствах Linux.

  • Смарт-карта
  • Проверка подлинности на основе сертификатов (CBA)
  • USB-токены, содержащие апплет PIV/Smartcard

Интеграция смарт-карт поддерживается только в следующих дистрибутивах:

  • Ubuntu Desktop 24.04 LTS (долгосрочная поддержка)
  • Ubuntu Desktop 22.04 LTS (долгосрочная поддержка)
  • Red Hat Enterprise Linux 10 (долгосрочная поддержка)

Проверка подлинности клиента на основе сертификатов реализуется через протокол TLS/SSL. В этом процессе клиент подписывает случайным образом созданный блок данных с закрытым ключом, а затем передает сертификат и подписанные данные серверу. Сервер проверяет подпись и проверяет сертификат перед предоставлением доступа.

Самый простой способ настроить проверку подлинности Certificate-Based (CBA) — использовать решение инфраструктуры закрытых ключей (PKI), которое выдает сертификаты пользователей на устройствах Linux. Затем эти сертификаты можно использовать для проверки подлинности с идентификатором Microsoft Entra. Чтобы настроить Linux для принятия этих сертификатов для проверки подлинности, обычно необходимо настроить соответствующие хранилища сертификатов и убедиться, что механизмы проверки подлинности системы настроены для использования этих сертификатов.

Проверка подлинности смарт-карты

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

Настройка поддержки SmartCard включает настройку необходимых библиотек и модулей для включения проверки подлинности на основе сертификатов с помощью физических маркеров. Доступны различные решения SmartCard, такие как YubiKey, которые можно интегрировать с различными дистрибутивами Linux. Инструкции по двум поддерживаемым платформам см. в документации по распространению:

Пример конфигурации смарт-карты

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

  1. Установите драйверы смарт-карт и поддержку YubiKey:

    sudo apt install pcscd yubikey-manager
    
  2. Установите компоненты YubiKey/Edge Bridge:

    sudo apt install opensc libnss3-tools openssl
    
  3. Настройте базу данных службы безопасности сети (NSS) для текущего пользователя:

    mkdir -p $HOME/.pki/nssdb
    chmod 700 $HOME/.pki
    chmod 700 $HOME/.pki/nssdb
    modutil -force -create -dbdir sql:$HOME/.pki/nssdb
    modutil -force -dbdir sql:$HOME/.pki/nssdb -add 'SC Module' -libfile /usr/lib/x86_64-linux-gnu/pkcs11/opensc-pkcs11.so
    

Дополнительные сведения см. в следующей документации Intune: