Konfiguracija Google Chrome preglednika na Linux platformi

Google Chrome podržava rad s kriptografskim uređajima na GNU/Linux operativnim sustavima, ali je za takvu funkcionalnost potrebno napraviti nekoliko dodatnih koraka:

Debian-bazirane GNU/Linux distribucije

ultima@ultima:~$ sudo apt-get install libnss3-tools

RPM-bazirane GNU/Linux distribucije

ultima@ultima:~$ sudo yum install nss-tools

Fedora (od verzije 18)

ultima@ultima:~$ sudo dnf install nss-tools

Po završetku instalacije NSS alata, upišite sljedeće naredbe:

ultima@ultima:~$ cd $HOME
ultima@ultima:~$ modutil -dbdir sql:.pki/nssdb/ -add "CAC Module" -libfile /usr/lib64/pkcs11/libcoolkeypk11.so -mechanisms FRIENDLY

U konkretnom primjeru korišten je PKCS11 modul libcoolkey. To može biti bilo koji drugi PKCS11 modul koji podržava rad s vašim kriptografskim uređajem. U tom slučaju dovoljno je promijeniti vrijednost parametra -libfile koja će biti apsolutna putanja do željenog PKCS11 modula.

Posljednja naredba bi trebala ispisati sljedeći tekst:

ultima@ultima:~$ Module "CAC Module" added to database.

Uključite kroptografski uređaj i pokrenite sljedeću naredbu kako biste provjerili ispravnost instalacije modula:

ultima@ultima:~$ modutil -dbdir sql:.pki/nssdb/ -list

Naredba bi trebala prikazati tekst sličan sljedećem (ovisno o vrsti kriptografskog uređaja):

ultima@ultima:~$ Listing of PKCS #11 Modules
-----------------------------------------------------------
   1. NSS Internal PKCS #11 Module
    slots: 2 slots attached
    status: loaded

    slot: NSS Internal Cryptographic Services
    token: NSS Generic Crypto Services

    slot: NSS User Private Key and Certificate Services
    token: NSS Certificate DB

  2. CAC Module
    library name: /usr/lib64/pkcs11/libcoolkeypk11.so
    slots: 1 slot attached
    status: loaded

    slot: ActivIdentity Activkey_Sim [CCID Bulk Interface] 00 00
    token: IVAN IVIĆ

Ukoliko NSS baza nije prethodno inicijalizirana, potrebno je napraviti njenu inicijalizaciju

U slučaju prikaza poruke:

ultima@ultima:~$ modutil: function failed: SEC_ERROR_BAD_DATABASE: security library: bad database"

Potrebno je upisati sljedeće naredbe koje će inicijalizirati NSS bazu:

ultima@ultima:~$ mkdir -p $HOME/.pki/nssdb
ultima@ultima:~$ certutil -d $HOME/.pki/nssdb -N

Po izvršenju naredbi upišite lozinku kojom ćete zaštiti NSS bazu.

U slučaju da je NSS baza prethodno inicijalizirana, ali i dalje se pojavljuje greška SEC_ERROR_BAD_DATABASE, potrebno je rekreirati postojeću NSS bazu

ultima@ultima:~$ mv ~/.pki/nssdb ~/.pki/nssdb.corrupted
ultima@ultima:~$ mkdir ~/.pki/nssdb
ultima@ultima:~$ chmod 700 ~/.pki/nssdb
ultima@ultima:~$ certutil -d sql:$HOME/.pki/nssdb -N

Nakon završetka rekreiranja NSS baze, potrebno je pokrenuti sljedeću naredbu i zatim napraviti provjeru kao što je opisano u jednom od prethodnih koraka:

ultima@ultima:~$ modutil -dbdir sql:.pki/nssdb/ -add "CAC Module" -libfile /usr/lib64/pkcs11/libcoolkeypk11.so -mechanisms FRIENDLY