В настоящее время я настраиваю OpenVPN, чтобы предоставить компании доступ к нескольким клиентам. Наше требование - использовать сертификаты, защищать паролем ключи клиентов, а также использовать двухфакторную аутентификацию (MFA) для каждого клиента.
У меня есть куча токенов Fortinet FortiToken 200, которые я хотел бы использовать, но я не могу найти никакой информации, показывающей, как использовать эти токены с чем-то вроде OpenVPN. Осмотревшись еще немного, я не могу найти никакой информации, показывающей, как можно использовать физический токен с OpenVPN.
Итак, мой вопрос: как я могу использовать физический токен с OpenVPN? Я не могу использовать что-то вроде Google Authenticator, так как мы планируем использовать VPN для клиентов через их смартфоны. Практическая документация OpenVPN PKCS # 11 написана очень плохо.
Я начинаю верить, что если MFA является обязательным требованием, OpenVPN просто не является жизнеспособным вариантом на данный момент.
Спасибо за вашу помощь.
В принципе:
openvpn --show-pkcs11-ids /path/to/pkcs11/driver.so
В файле конфигурации укажите модуль и сериализованный идентификатор для вашего ключа из --show-pkcs11-ids
вывод, например:
pkcs11-провайдеры /usr/lib/x86_64-linux-gnu/pkcs11/gnome-keyring-pkcs11.so
pkcs11-id Gnome \ x20Keyring / 1 \ x2E0 / 1 \ x3AUSER \ x3ADEFAULT / Gnome2 \ x20Key \ x20Storage / 417AEDAAB81FEF6AEBD1EC43D76A630CAAA4722A
(Обязательно избегайте обратной косой черты в pkcs-id, например Gnome\x20Keyring
становится Gnome\\x20Keyring
.)