Skip to main content
Register the Futurex PKCS #11 module with both the charon daemon and the pki tool. charon needs it to authenticate tunnels; pki needs it to generate keys and sign certificates in the following steps.

Edit /etc/strongswan.conf

Shell
Use the following configuration:
strongswan.conf
Do not set load_modular = yes inside the pki block. Doing so can prevent the default pki builders from loading, which causes certificate parsing failures in later steps.
The module name futurex is the handle you reference from swanctl.conf as module = futurex. If you change it here, change it there too.

Enable charon debug logging

The verification steps in this guide read /var/log/charon-debug.log. charon does not write that file by default, so configure it:
Shell
Without this stanza, the grep commands in the following sections fail with No such file or directory, which reads as a failure of the integration rather than an absent log file.

Restart strongSwan and confirm the module loaded

Shell
The output shows the library loading, for example loaded PKCS#11 v3.0 library 'futurex', followed by Futurex: FxPKCS11 v6.1 and plugin 'pkcs11': loaded successfully.
Confirm the token is visible:
Shell
A line reports found token in slot 'futurex':0.
The message module 'futurex' does not support hot-plugging, canceled may appear. It means the module does not monitor for dynamic token insertion or removal. This message alone is not a blocker.
The TPM plugin may report that it cannot load libtss2-tcti-tabrmd.so.0, followed by plugin 'tpm': failed to load. This is not a blocker for the PKCS #11 integration when TPM is not in use.