Pré - requis

  • Avoir un token aladdin :-)
  • Le token doit être reconnu par le système. Pour vérifier, faire la commande lsusb
$lsusb
Bus 003 Device 002: ID 0529:0600 Aladdin Knowledge Systems
Bus 003 Device 001: ID 0000:0000
Bus 002 Device 001: ID 0000:0000
Bus 001 Device 002: ID 04b8:011e Seiko Epson Corp. Perfection 1660 Photo
Bus 001 Device 001: ID 0000:0000

Installation

#apt-get install openct opensc

Configuration

La configuration par défaut d'openct ne comprend pas la nouvelle version du token, notamment la version du vendeur. Il faut donc l'ajouter dans les fichiers /etc/openct.conf et /etc/hotplug/usb/openct.usermap

La configuration de ces deux fichiers devrait ressembler à :

/etc/openct.conf
driver  etoken {
        ids = {
                usb:0529/050c,
                usb:0529/0514,
                usb:0529/0600,
        };
};
/etc/hotplug/usb/openct.usermap
# eToken
openct               0x0003      0x0529   0x050c    0x0000       0x0000       0x00         0x00            0x00            0x00            0x00               0x00               0x00000000
openct               0x0003      0x0529   0x0514    0x0000       0x0000       0x00         0x00            0x00            0x00            0x00               0x00               0x00000000

openct               0x0003      0x0529   0x0600   0x0000       0x0000       0x00         0x00            0x00            0x00            0x00               0x00               0x00000000

Pour prendre en compte les modifications effectuées, redémarrer hotplug et openct

$su -
#invoke-rc.d hotplug restart
#invoke-rc.d openct restart

Le token devrait donc être visible par openct et opensc maintenant:

$openct-tool list
  0 Aladdin eToken PRO
$opensc-tool -l
Readers known about:
Nr.    Driver     Name
0      openct     Aladdin eToken PRO
1      openct     OpenCT reader (detached)
2      openct     OpenCT reader (detached)
3      openct     OpenCT reader (detached)
4      openct     OpenCT reader (detached)

Configuration de firefox

Accès concurrents

Je m'apercois que les accès concurrents ne sont pas gérés par opensc surtout quand il y a firefox entre les deux :-( la documentation officielle:

Thread safety on Linux and Mac OS X: Netscape/Mozilla uses the CKF_OS_LOCKING_OK flag in C_Initialize(). The result is that the browser process doesn't end when closing the browser, so you have to kill the process yourself. (If the browser would do a C_Finalize, the sc_pkcs11_free_lock() would be called and there wouldn't be a problem.)

Configuration

Aller dans le menu Edit>Preferences>Advanced>Security et cliquer sur "Security Devices"

Cliquer sur NSS PKCS#11 Module et cliquer sur le bouton "Load". Renommer en OpenSC PKCS#11 Module et ajouter le chemin vers la librairie opensc : /usr/lib/pkcs11/opensc-pkcs11.so

Maintenant firefox est capable de récupérer et de stocker dans le token les certificats émis.