Двухфакторная аутентификация

Редактировал(а) Олеся 2021/10/05 09:53

Механизмы двухфакторной аутентификации в ОС ОН «Стрелец» реализуются посредством использования электронного идентификатора Guardant ID, который применяется в системах, обрабатывающих информацию ограниченного доступа. В отличие от других похожих устройств, только этот идентификатор сертифицирован ФСТЭК России на соответствие требованиям РД НДВ – по 2-му уровню контроля.

Электронный идентификатор Guardant ID – это устройство, подключаемое к USB-порту компьютера (непосредственно или через удлинитель) и служащее для хранения идентификационных данных пользователя в энергонезависимой памяти.

Особенностью устройства является наличие уникального неизменяемого идентификатора и области защищенной энергонезависимой памяти, для доступа к которой используется кодирование с уникальным для каждого Guardant ID паролем.

Для идентификации пользователя при выполнении команд чтения/записи может быть использован PIN-код длиной от 1 до 32 байт. PIN-код может быть изменен штатным образом в случае получения доступа к памяти устройства.

Управление электронными идентификаторами – grdid-tool

Для управления электронными идентификаторами Guardant ID предназначена утилита grdid-tool, имеющая следующий формат вызова:

sudo grdid-tool [опции]

Основным назначением утилиты является инициализация и выдача устройств пользователям. При необходимости утилита может быть использована самим пользователем для смены своего PIN. При этом у него будет запрошено старое значение PIN.

В таблице приведены основные опции команды grdid-tool.

ОпцияОписание
-h, --helpСправка по способу вызова и опциям команды
-v, --verboseПодробный отчет о выполняемых действиях
-f, --forceНе спрашивать подтверждение
-i, --infoОтображение информации об идентификаторе
-e, --eraseСтирание идентификатора. При успешном выполнении операции идентификатор удаляется из реестра выданных идентификаторов
--init-pinИнициализация PIN пользователя, требует задания пользователя опцией -u. При успешном выполнении операции идентификатор регистрируется в реестре выданных идентификаторов
--verify-pinПроверить PIN
--change-pinСмена PIN пользователя (самим пользователем, требует старое значение PIN)
--so-pin ЗНАЧЕНИЕPIN администратора (Master PIN код), может быть задан как env:VARIABLE, тогда значение будет взято из соответствующей переменной окружения
--pin ЗНАЧЕНИЕPIN пользователя, может быть задан как env:VARIABLE, тогда значение будет взято из соответствующей переменной окружения

-u ПОЛЬЗОВАТЕЛЬ,

--user ПОЛЬЗОВАТЕЛЬ

Использовать в качестве владельца идентификатора учетную запись ПОЛЬЗОВАТЕЛЬ
-l, --listВывести список зарегистрированных (выданных) идентификаторов
-r, --unregisterУдалить запись о ключе пользователя

Использование Guardant ID для доступа к системе – pam_grdid

Применение идентификатора для контроля доступа при входе пользователя в систему обеспечивается специальным PAM модулем аутентификации pam_grdid.

При попытке входа в систему у пользователя запрашивается PIN представленного электронного идентификатора Guardant ID, в случае соответствия представленного идентификатора пользователю и успешной проверки PIN процедура входа продолжается. В противном случае происходит отказ доступа к системе с соответствующей регистрацией попытки несанкционированного доступа.

Указанный модуль должен быть встроен в требуемые PAM сценарии следующим образом (на примере /etc/pam.d/common-auth):

# here are the per-package modules (the "Primary" block)
auth [success=3 default=die ignore=ignore] pam_grdid.so
auth [success=2 default=ignore] pam_unix.so nullok_secure
auth [success=1 default=ignore] pam_winbind.so krb5_auth ...

При использовании модуля могут применяться опции:

  • debug – вывод отладочной информации;
  • try_only – попытка проведения проверки (возможен вход без предоставления устройства);
  • no_prompt – не выводить предложение подключить идентификатор;
  • strict – строгий режим: запрет входа без использования идентификатора Guardant ID;
  • set_pass – установить введенный PIN в качестве AUTHTOK для последующих модулей аутентификации.

При необходимости с помощью ключей PAM модуля можно настроить желаемый режим использования двухфакторной аутентификации.

РежимПорядок настройки режимаno_promptВход пользователей, не имеющих Guardant ID
Общий

Предлагается подключить идентификатор, вход по PIN, при неверном PIN отказ входа

Используется подключенный идентификатор, вход по PIN, если идентификатор не предъявлен или неверный PIN — отказ входаСтандартным способом по паролю
try_only

Предлагается подключить идентификатор, вход по PIN, при неверном PIN переход на другие способы аутентификации (по паролю)

Используется подключенный идентификатор, вход по PIN, если идентификатор не предъявлен или неверный PIN – переход на другие способы аутентификации (по паролю)Стандартным способом по паролю
strict

Предлагается подключить идентификатор, вход по PIN, при неверном PIN отказ входа

Используется подключенный идентификатор, вход по PIN, если идентификатор не предъявлен или неверный PIN — отказ входаЗапрещен, кроме пользователей указанных в конфигурационном файле параметром ignoreusers

Настройка ssh для доступа с использованием Guardant ID

Для корректной работы удаленного входа с помощью ssh необходимо выполнить следующие изменения в конфигурационном файле /etc/ssh/sshd.conf:

  • включить параметр ChallengeResponseAuthentication в on;
  • выключить параметр PasswordAutentication.
strelets.net
telegram: @os_strelets