OpenSSH уже имеет начальную поддержку двухфакторной аутентификации.

A2F OpenSSH

OpenSSH набор приложений, которые позволяют зашифрованную связь по сети, используя протокол SSH добавлена ​​экспериментальная поддержка двухфакторной аутентификации к своей кодовой базе, используя устройства, поддерживающие протокол U2F, разработанный альянсом FIDO.

Для тех, кто не знает U2F, они должны знать, что, это открытый стандарт для создания недорогих аппаратных токенов безопасности.. Для пользователей это самый дешевый способ получить пару ключей с аппаратной поддержкой и есть хороший выбор производителей кто их продает, в том числеs Юбико, Фейтиан, Фетида и Кенсингтон.

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

Поскольку существует несколько способов взаимодействия с устройствами U2F, включая USB, Bluetooth и NFC, мы не хотели загружать OpenSSH с множеством зависимостей. Вместо этого мы делегировали задачу взаимодействия с токенами небольшая библиотека промежуточного программного обеспечения, которая загружается аналогично существующей поддержке PKCS # 11.

OpenSSH теперь имеет экспериментальную поддержку U2F / FIDO, с U2F он добавлен как новый тип ключа sk-ecdsa-sha2-nistp256@openssh.com или же "ecdsa-sk«Для краткости (« sk »означает« ключ безопасности »).

Процедуры взаимодействия с токенами перенесены в промежуточную библиотеку., который загружается по аналогии с библиотекой для поддержки PKCS # 11 и является ссылкой на библиотеку libfido2, которая предоставляет средства для связи с токенами через USB (FIDO U2F / CTAP 1 и FIDO 2.0 / CTAP 2).

Библиотека промежуточный libsk-libfido2 подготовлено разработчиками OpenSSH включен в ядро ​​libfido2, а также драйвер HID для OpenBSD.

Чтобы включить U2F, можно использовать новую часть кодовой базы из репозитория OpenSSH и ветвь HEAD библиотеки libfido2, которая уже включает необходимый уровень для OpenSSH. Libfido2 поддерживает работу с OpenBSD, Linux, macOS и Windows.

Мы написали базовое промежуточное ПО для libfido2 от Yubico, которое способно взаимодействовать с любым стандартным USB HID U2F или токеном FIDO2. Промежуточное ПО. Исходный код размещен в дереве libfido2, поэтому его и OpenSSH HEAD достаточно для начала работы.

Открытый ключ (id_ecdsa_sk.pub) необходимо скопировать на сервер в файле authorized_keys. На стороне сервера проверяется только цифровая подпись, а взаимодействие с токенами осуществляется на стороне клиента (libsk-libfido2 не нужно устанавливать на сервере, но сервер должен поддерживать тип ключа «ecdsa-sk» ).

Сгенерированный закрытый ключ (id_ecdsa_sk) по сути является дескриптором ключа, который формирует реальный ключ только в сочетании с секретной последовательностью, хранящейся на стороне токена U2F.

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

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

На начальном этапе ssh-keygen, также можно установить другой пароль для доступа к файлу с ключом.

Ключ U2F можно добавить к SSH-агент через "ssh-добавить ~/.ssh/id_ecdsa_sk", но SSH-агент должен быть скомпилирован с ключевой поддержкой ecdsa-sk, уровень libsk-libfido2 должен присутствовать, и агент должен работать в системе, к которой он привязан.

Добавлен новый тип ключа ecdsa-sk так как ключевой формат ECDSA OpenSSH отличается от формата U2F для цифровых подписей ECDSA по наличию дополнительных полей.

Если вы хотите узнать об этом больше вы можете проконсультироваться по следующей ссылке. 


Содержание статьи соответствует нашим принципам редакционная этика. Чтобы сообщить об ошибке, нажмите здесь.

Будьте первым, чтобы комментировать

Оставьте свой комментарий

Ваш электронный адрес не будет опубликован.

*

*

  1. Ответственный за данные: AB Internet Networks 2008 SL
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.

bool (истина)