Сессия PKCS не сохраняется в Ubuntu 24.04 при выполнении другой аутентификации токена.

Вопрос или проблема

Как воспроизвести:

# Инициализируйте токен PKCS11 (любой метод подойдет)
ssh-add -t 72000 -s /usr/lib/x86_64-linux-gnu/opensc-pkcs11.so
# Токен работает как ожидалось

# Попытка входа в токен с использованием другого инструмента
pkcs11-tool -l -L

# Первая сессия токена теперь сломана

Правильное поведение, которое, похоже, было в Ubuntu до 24.04, заключается в том, что оригинальная сессия продолжает работать, но в 24.04 любой запрос на вход ломает старые сессии.

Кто-нибудь знает, как предотвратить такое поведение (т.е. новые сессии не должны ломать старые сессии), или кто-то может помочь в отладке того, что происходит? dmesg не показывает очевидных ошибок.

Ответ или решение

Проблема: Непостоянство PKCS-сессии в Ubuntu 24.04 при использовании другого инструмента аутентификации токена

Ваша проблема заключается в том, что после выполнения команды pkcs11-tool -l -L сессия, инициированная через ssh-add, перестает работать. Это поведение, кажется, изменилось в новой версии Ubuntu 24.04, где запросы на вход в токен обрывают старые сессии, что не наблюдалось в предыдущих версиях.

Анализ Проблемы

У вас уже есть работающая сессия PKCS#11, и вы используете ее для аутентификации через SSH. Однако, когда вы обращаетесь к токену с помощью pkcs11-tool, это якобы приводит к разрыву существующей сессии. Эту проблему можно объяснить несколькими факторами:

  1. Управление Сессиями: В возможно измененной логике управления сессиями в библиотеках, связанных с PKCS#11, может быть предусмотрено, что новая аутентификация приводит к тому, что предыдущие сессии становятся недоступными.

  2. Конфигурация Библиотек: Библиотеки, такие как OpenSC, могут иметь различия в реализации с разных версий, что также может влиять на то, как осуществляется управление сессиями и токенами.

  3. Проблемы С Совместимостью: Неполадки с совместимостью могут возникать из-за изменения API или даже поведения службы. Возможностью являться альтернативной методологии работы с токенами в версии Ubuntu 24.04.

Возможные Решения

  1. Обновление библиотек: Убедитесь, что у вас установлены последние обновления для OpenSC и всех связанных библиотек. Используйте команду sudo apt update && sudo apt upgrade.

  2. Настройка SSH-Agent: Попробуйте добавить параметры управления сессиями в SSH-Agent, чтобы явным образом указать, как следует обрабатывать сессии. Например, можно попробовать использовать ssh-add -A перед выполнением pkcs11-tool, чтобы инициировать неавторизованные сессии.

  3. Использование альтернативных инструментов: Если проблема сохраняется, возможно, стоит рассмотреть использование других инструментов для работы с токенами PKCS#11 или альтернативных библиотек, которые могли продемонстрировать лучшую стабильность.

  4. Обращение к документации: Ознакомьтесь с документацией по OpenSC и PKCS#11. Возможно, были внесены изменения в способ работы с сессиями, которые могут дать дополнительную информацию о вашей проблеме.

  5. Логирование и отладка: Для более глубокого анализа попробуйте включить дополнительное логирование для вашей библиотеки PKCS#11 и SSH. Это может помочь в диагностике проблемы и предоставлении более конкретных данных о том, что происходит при вызове команд.

  6. Обратитесь к сообществу: Есть вероятность, что данная проблема уже обсуждалась в сообществе Ubuntu или OpenSC. Рассмотрите возможность обращения на форумы или GitHub репозитории данных библиотек.

Заключение

Изменение поведения PKCS#11 в Ubuntu 24.04 в отношении сессий может иметь множество причин, включая изменения в самой библиотеке и в способах работы с токенами. Применение предложенных методов поможет вам диагностировать и, возможно, решить данную проблему. Не забывайте оставаться на связи с сообществом разработчиков, так как другие субъекты могут предоставить информацию или решения, которые были успешными.

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

Капча загружается...