...
- Подключить ключевой носитель к клиентскому узлу.
- Записать на ключевой носитель сертификат клиента:
Command p11tool --login --write --load-certificate="client.cert.pem" --id=45 --label="mykey"
- Записать на ключевой носитель закрытый ключ клиента:
Command 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 } } }
3)
...
- Настроить strongSwan-сервер на использование закрытого ключа сервера, который находится на токене.
Для этого в файле/etc/ipsec.secretsуказать строку с описанием токена и идентификатором закрытого ключа, хранящегося на токене:Блок кода
...
: PIN
...
<токен>
...
<pin-код_токена> # где <токен> указывается по формату: %smartcard[
...
Пример описания для вышеприведённого Рутокена:<номер_слота_с_токеном>[@<название_модуля>]]:<id_закрытого_ключа>Блок кода : PIN %smartcard0@rutoken:45 12345678