Cet article vous présente les étapes de configuration d’un jeton sur un système Linux et vous explique comment l’utiliser une fois configuré.
Les instructions ci-dessous s’appliquent uniquement aux certificats de signature de code.
1) Mettez à jour les informations des packages du dépôt:
| sudo apt update |
2) Installez les dépendances:
| sudo apt install openssl libcurl4-openssl-dev libssl-dev libengine-pkcs11-openssl curl libcurl4 git automake libtool pkg-config wget libccid libpcsclite1 pcscd usbutils opensc p7zip-full |
3) Créez un dossier pour stocker osslsigncode:
| sudo mkdir /usr/local/win-dev |
4) Connectez-vous temporairement au compte superutilisateur pour effectuer les étapes suivantes:
| sudo su |
5) Téléchargez et extrayez osslsigncode depuis l’archive:
1. cd /usr/local/win-dev 2. wget https://github.com/mtrojnar/osslsigncode/releases/download/2.1/osslsigncode-2.1.0.tar.gz 3. tar -xvzf osslsigncode-2.1.0.tar.gz 4. cd osslsigncode-2.1.0 |
6) Compilez et installez osslsigncode:
| ./autogen.sh ./configure && make && make install |
7) Quittez le shell du superutilisateur:
| exit |
1) Installez les pilotes SafeNet
1. sudo apt install unzip 2. wget https://www.digicert.com/StaticFiles/SAC_10_7_Linux_GA.zip 3. unzip -q SAC_10_7_Linux_GA.zip 4. cd SAC_10_7_Linux_GA/Installation/Standard/DEB 5. sudo dpkg -i safenetauthenticationclient_10.7.77_amd64.deb |
2) Installez OpenSC et les autres dépendances
| sudo apt install opensc opensc-pkcs11 pcscd gnutls-bin |
3) Ouvrez un shell administrateur pour effectuer les étapes suivantes:
| sudo su |
4) Téléchargez libp11
1. cd /usr/local/win-dev 3. cd libp11-0.4.11 |
5) Installez libp11
| ./configure --prefix=/usr/local/mac-dev && make && make install |
6) Téléchargez une copie de votre certificat au format PEM et enregistrez-la sous le nom certificate.pem. Vous pouvez facilement télécharger le certificat en vous connectant à votre compte, en remplaçant le numéro de commande (xxxxxx) dans l’URL ci-dessous par votre propre numéro, puis en ouvrant le lien:
| https://www.digicert.com/services/v2/certificate/download/order/xxxxxx/format/pem_nointermediate |
7) Récupérez l’URL de l’identifiant de clé du certificat à utiliser pour la signature. Vous pouvez déterminer quelle URL copier grâce au champ Label, qui contient le nom de votre organisation ou votre nom personnel.
| p11tool --provider=/usr/lib/libeTPkcs11.so --list-all |
8) Signez votre code (veillez à mettre à jour les informations du jeton afin qu’elles correspondent à celles obtenues à l’étape 7, ainsi que le chemin d’accès à l’application à signer et le chemin d’accès à l’emplacement où enregistrer l’application signée):
| osslsigncode sign -verbose -pkcs11engine /usr/lib/x86_64-linux-gnu/engines-1.1/pkcs11.so -pkcs11module /lib/libeToken.so -h sha256 -n test-name -t http://timestamp.digicert.com -certs path/to/certificate.pem -key "pkcs11:model=eToken;manufacturer=SafeNet%2C%20Inc.;serial=029a748f;token=ExampleHSM;id=%C8%69%6E%65%0E%32%61%8E%49%27%2E%E6%6J%2E%1C%25%90%E3%50%45;object=Rex%20Linder;type=cert" -in path/to/application.exe -out path/to/new/signedApp.exe |