Настройка OpenSSL для работы с двухфакторной аутентификацией.
Устанавливаем пакеты
pcscd
libccid
openssl
xca
libengine-pkcs11-openssl
libengine-pkcs11-openssl1.1
libpam-pkcs11
Замечание: пакет libengine-pkcs11-openssl в репозиториях представлен в двух версиях. Устанавливались оба.
Драйвер для JaCarta PKI: https://www.aladdin-rd.ru/support/downloads/989e9d58-8600-4d97-a039-e209c7c8fa8e
Замечание: вероятно, можно это делать и без привилегий суперпользователя. Но стенд настраивался именно так.
Переходим на вкладку сертификаты, создаем новый для сервера CA.
На вкладке "Источник" выбираем самоподписанный сертификат, алгоритм подписи SHA 256.
Далее идём на вкладку "Владелец":
Заполняем необходимые поля, в поле commonName указываем имя хоста.
Здесь же нажимаем "Создать новый ключ".
Нажимаем "Создать".
Далее переходим на вкладку "Расширения".
В поле "Тип" указываем "Центр сертификации". При необходимости изменяем другие параметры.
Далее нажимаем кнопку "ОК" и убеждаемся, что новый сертификат появился в списке.
На вкладке "Владелец" заполняем необходимые поля.
На вкладке "Расширения" указываем "Конечный пользователь"
Нажимаем "ОК"
Необходимо добавить библиотеку /usr/lib/libPKCS11.so.2. Замечание: пути могут меняться в зависимости от дистрибутива и версий ПО.
Идём на вкладку "Владелец":
Заполняем необходимые поля. В поле commonName указываем имя нужного пользователя.
Далее нажимаем "Создать новый ключ".
В поле "Тип ключа" выбираем наш токен, алгоритм RSA. Нажимаем "Создать". После ввода пин-кода будет сгенерирована ключевая пара.
Далее нажимаем "ОК", соглашаемся, чтобы сертификат был сохранён на токене.
Теперь этот токен можно использовать для входа в систему.
Указываем каталог для экспорта и нажимаем ОК.
Далее ПКМ на сертификате: ЦС -> Создать CRL.
Переходим на вкладку "Списки отозванных сертификатов".
Выделяем появившийся список, нажимаем "Экспорт"
Указываем каталог для экспорта и нажимаем ОК.