...
- Подключить ключевой носитель к клиентскому узлу.
- Записать на ключевой носитель сертификат и закрытый ключ клиента:
гдеCommand p11tool --login --write --load-certificate="<путь_к_клиентскому_сертификату>" --id=<идентификатор_объекта> --label="<название_объекта>"
p11tool --login --write --load-privkey="<путь_к_клиентскому_закрытому_ключу>" --id=<идентификатор_объекта> --label="<название_объекта>"
- <идентификатор_объекта> – идентификатор, с которым сертификат и ключ будут храниться на токене;
- <название_объекта> – название, с которым сертификат и ключ будут храниться на токене.
Пример команд:Command p11tool --login --write --load-certificate="client.cert.pem" --id=45 --label="mykey"
p11tool --login --write --load-privkey="client.key.pem" --id=45 --label="mykey"
- Включить поддержку токенов в strongSwan.
Для этого в файле/etc/strongswan.d/charon/pkcs11.confв секцииmodulesуказать произвольное название модуля и путь до интерфейсной библиотеки используемого токена:
Например, для Рутокена файлБлок кода pkcs11 { # Whether to load the plugin. Can also be an integer to increase the # priority of this plugin. load = yes ... # List of available PKCS#11 modules. modules { <название_модуля> { path = <путь_к_интерфейсной_библиотеке_токена> } } }/etc/strongswan.d/charon/pkcs11.confможет выглядеть так:Блок кода pkcs11 { load = yes modules { rutoken { path = /usr/lib/librtpkcs11ecp.so } } } - Настроить strongSwan на использование закрытого ключа клиента, который находится на токене.
Для этого в файле/etc/ipsec.secretsуказать строку с описанием токена и идентификатором закрытого ключа, хранящегося на токене:
гдеБлок кода : PIN <токен_и_закрытый_ключ> <pin-код_токена> # где
- <токен_и_закрытый_ключ> – задаются по формату: %smartcard[<номер_слота_с_токеном>[@<название_модуля>]]:<идентификатор_объекта>
- <название_модуля> – вышезаданное в настройках название модуля;
- <идентификатор_объекта> – идентификатор закрытого ключа, хранящегося на токене.
Пример описания для вышеприведённого Рутокена:Блок кода : PIN %smartcard0@rutoken:45 12345678
- Перезапустить strongSwan для применения настроек:
Command sudo ipsec restart
...