Table of Contents

Tessera Sanitaria CNS con Debian GNU/Linux, Firefox e Chromium

La CNS nel lettore SmartCard Come utilizzare la smartcard Tessera Sanitaria CNS con Debian GNU/Linux per accedere ai siti che richiedono autenticazione, ad esempio Agenzia delle Entrate e INPS. Gli appunti che seguono sono stati presi su una Debian 10 Buster utilizzando i due browser Firefox 68 e Chromium 78.

Abbiamo utilizzato il lettore lettore Smart Card Omnikey 1021. In un post di qualche tempo fa abbiamo descritto una installazione con l'utilizzo di software proprietario precompilato e non libero, in questa pagina invece sono stati utilizzati solo pacchetti Debian ufficiali. Si faccia riferimento alla vecchia pagina per le operazioni di base come la verifica del riconoscimento hardware, test da riga di comando, ecc.

Installazione pacchetti Debian

apt-get install pcscd libpcsclite1 pcsc-tools libccid libnss3-tools opensc-pkcs11

Chromium

La versione debianizzata di Chrome, ossia Chromium, non ha un pannello specifico per la gestione dei device PKCS#11, si deve agire da riga di comando aggiungendo un modulo PKCS#11 al security module database.

Chiudere eventuali istanze di Chromium e Firefox in esecuzione, a nome dell'utente che utilizzerà il browser, si esegue:

modutil -dbdir sql:.pki/nssdb/ \
    -add "PKCS#11" \
    -libfile /usr/lib/x86_64-linux-gnu/pkcs11/opensc-pkcs11.so

viene visualizzato l'avviso che ogni browser deve essere chiuso prima di procedere:

WARNING: Performing this operation while the browser is running could cause
corruption of your security databases. If the browser is currently running,
you should exit browser before continuing this operation. Type
'q <enter>' to abort, or <enter> to continue:

Nella directory $HOME/.pki/nssdb/ vengono creati i file cert9.db, key4.db e pkcs11.txt.

Per verificare quali moduli sono stati configurati si esegue:

modutil -dbdir sql:.pki/nssdb/ -list

Quando si farà accesso ad una pagina internet che richiede l'autenticazione, verrà prima presentato un dialog box per l'inserimento del PIN che sblocca la carta e poi un dialog box che chiede conferma del certificato da utilizzare.

Firefox

Firefox non utilizza le impostazioni della directory $HOME/.pki/. Con Firefox si deve accedere al menu Preferences ⇒ Privacy & Security ⇒ Certificates ⇒ Security Devices…. Si fa click sul pulsante Load, si fornisce un nome al device e si indica il percorso della libreria:

Module Name CNS Tessera Sanitaria
Module filename /usr/lib/x86_64-linux-gnu/pkcs11/opensc-pkcs11.so

Al termine dell'operazione il nuovo device compare nell'elenco.

È necessario quindi riavviare Firefox e accedere alla pagina che richiede l'autenticazione. Verrà richiesto il PIN per sbloccare la carta e quindi quale certificato utilizzare.

Test di funzionamento

Pe verificare il corretto funzionamento è possibile seguire questa procedura:

Dovrebbe comparire una dialog box che chiede il PIN della tessera.

Riferimenti Web