914
contributi
m (→Configurazione del browser: elenco numerato) |
|||
(33 versioni intermedie di 10 utenti non mostrate) | |||
Riga 1: | Riga 1: | ||
{{Versioni compatibili|Wheezy| | {{Versioni compatibili|Wheezy|Jessie|Stretch|Buster|Bullseye}} | ||
== Introduzione == | == Introduzione == | ||
La CNS/CRS è una smart card che permette l'accesso a servizi online forniti da diversi enti pubblici italiani. | La CNS/CRS è una smart card che permette l'accesso a servizi online forniti da diversi enti pubblici italiani. | ||
Questa guida illustra la procedura che permette di usufruire di questi servizi utilizzando esclusivamente software libero presente nei repository ufficiali Debian. | Questa guida illustra la procedura che permette di usufruire di questi servizi utilizzando esclusivamente software libero presente nei repository ufficiali Debian. | ||
== Prerequisiti == | == Prerequisiti == | ||
* Sistema operativo Debian Wheezy o superiore | * Sistema operativo Debian Wheezy o superiore | ||
Riga 10: | Riga 10: | ||
* Una CNS/CRS | * Una CNS/CRS | ||
* PIN associato alla tessera | * PIN associato alla tessera | ||
== Installazione dei driver del lettore == | == Installazione dei driver del lettore == | ||
Collegare il lettore ad una porta USB. | Collegare il lettore ad una porta USB. | ||
Riga 16: | Riga 15: | ||
$ lsusb | $ lsusb | ||
[cut] | [cut] | ||
Bus 004 Device | Bus 004 Device 002: ID 072f:9000 Advanced Card Systems, Ltd ACR38 AC1038-based Smart Card Reader | ||
</pre> | </pre> | ||
Il pacchetto da installare per far funzionare questo lettore è <code> | In questo caso si tratta del lettore bit4id che è stato fornito ai cittadini italiani da alcune pubbliche amministrazioni, ad esempio da Regione Lombardia. | ||
Il pacchetto da installare per far funzionare questo lettore è <code>libacsccid1</code>: | |||
<pre> | <pre> | ||
# | # apt install libacsccid1 | ||
</pre> | </pre> | ||
Se si dispone di un altro modello, effettuare una ricerca in [http://wiki.debian.org/Smartcards#Supported_Hardware questa pagina] del Wiki di Debian per trovare il driver da utilizzare. | Se si dispone di un altro modello, effettuare una ricerca in [http://wiki.debian.org/Smartcards#Supported_Hardware questa pagina] del Wiki di Debian per trovare il driver da utilizzare. | ||
== Verifica del funzionamento del lettore == | |||
Per verificare che il lettore funzioni correttamente, installiamo <code>pcscd</code> e <code>pcsc-tools</code>: | |||
<pre> | <pre> | ||
# | # apt install pcscd pcsc-tools | ||
</pre> | </pre> | ||
A questo punto lanciare <code>pcsc_scan</code>: | A questo punto lanciare <code>pcsc_scan</code>: | ||
Riga 32: | Riga 33: | ||
$ pcsc_scan | $ pcsc_scan | ||
</pre> | </pre> | ||
Può capitare di ottenere questo messaggio: | Può capitare di ottenere questo messaggio: | ||
<pre> | <pre> | ||
Riga 44: | Riga 44: | ||
# /etc/init.d/pcscd restart | # /etc/init.d/pcscd restart | ||
</pre> | </pre> | ||
Se invece si ottiene quest'altro messaggio, va tutto bene: | Se invece si ottiene quest'altro messaggio, va tutto bene: | ||
<pre> | <pre> | ||
Riga 51: | Riga 50: | ||
Compiled with PC/SC lite version: 1.5.5 | Compiled with PC/SC lite version: 1.5.5 | ||
Scanning present readers... | Scanning present readers... | ||
0: | 0: ACS ACR38U 00 00 | ||
Tue Apr 10 15:17:27 2012 | |||
Reader 0: ACS ACR38U 00 00 | |||
Card state: Card removed, | |||
</pre> | </pre> | ||
Si provi ad inserire ed estrarre delle tessere: dovrebbero essere viste senza problemi: | Si provi ad inserire ed estrarre delle tessere: dovrebbero essere viste senza problemi: | ||
<pre> | <pre> | ||
Riga 65: | Riga 64: | ||
Italian healtcare card (TS) National Service Card (CNS) | Italian healtcare card (TS) National Service Card (CNS) | ||
</pre> | </pre> | ||
Per uscire, basta digitare Ctrl+C. | Per uscire, basta digitare Ctrl+C. | ||
== Configurazione del browser == | == Configurazione del browser == | ||
Queste funzionalità sono fornite sia da Iceweasel/Firefox che da Chromium. | |||
Installiamo | Installiamo OpenSC: | ||
<pre> | <pre> | ||
# | # apt install opensc | ||
</pre> | </pre> | ||
A questo punto occorre trovare il percorso della libreria OpenSC necessaria per accedere ai portali che fanno utilizzo della tecnologia CNS; potrebbe essere diverso a seconda dell'architettura, e quindi cerchiamolo con: | A questo punto occorre trovare il percorso della libreria OpenSC necessaria per accedere ai portali che fanno utilizzo della tecnologia CNS; potrebbe essere diverso a seconda dell'architettura, e quindi cerchiamolo con: | ||
<pre> | <pre> | ||
$ dpkg - | $ dpkg -S opensc | grep /opensc-pkcs11.so | ||
/usr/lib/opensc-pkcs11.so | /usr/lib/i386-linux-gnu/opensc-pkcs11.so | ||
</pre> | |||
In questo caso sarà dunque <code>/usr/lib/i386-linux-gnu/opensc-pkcs11.so</code>; appuntiamolo da qualche parte. | |||
=== Iceweasel/Firefox === | |||
<pre> | |||
# aptitude install iceweasel-l10n-it | |||
</pre> | |||
Oppure, a partire da Debian Stretch: | |||
<pre> | |||
# apt install firefox-esr-l10n-it | |||
</pre> | |||
Quindi: | |||
# Collegare il lettore di smartcard | |||
# Avviare Firefox | |||
# Inserire la tessera sanitaria nel lettore | |||
# In Firefox, selezionare Modifica → Preferenze → Privacy e sicurezza → Dispositivi di sicurezza | |||
# Cliccare su Carica, inserire una descrizione (es: TesseraSanitaria) ed il percorso corretto del file opensc-pkcs11.so, come individuato precedentemente. | |||
=== Chromium === | |||
Installare tutto il software necessario: | |||
<pre> | |||
# apt install chromium-l10n libnss3-tools | |||
</pre> | </pre> | ||
Nel caso in cui il browser fosse aperto, chiuderlo. | |||
Inserire la smart card nel lettore, aprire un terminale e, posizionandosi nella home dell'utente, eseguire il comando | |||
<pre> | |||
$ modutil -dbdir sql:.pki/nssdb/ -add "CNS PKCS#11" -libfile /PATH/TO/MY/LIB.so | |||
</pre> | |||
dove al posto di <code>/PATH/TO/MY/LIB.so</code> metteremo il percorso che ci eravamo appuntati (nell'esempio: <code>/usr/lib/i386-linux-gnu/opensc-pkcs11.so</code>). | |||
Verificare la corretta registrazione della libreria con | |||
<pre> | |||
$ modutil -dbdir sql:.pki/nssdb/ -list | |||
</pre> | |||
== Utilizzo dei servizi == | == Utilizzo dei servizi == | ||
# Inserire la tessera nel lettore | # Inserire la tessera nel lettore | ||
# Attendere che la tessera venga letta (in genere basta osservare il led) | # Attendere che la tessera venga letta (in genere basta osservare il led) | ||
# Avviare | # Avviare il browser: se tutto va bene in genere il led smette di lampeggiare e rimane fisso acceso | ||
# Accedere alla pagina interessata: si dovrebbe aprire una finestra che richiede il PIN | # Accedere alla pagina interessata: si dovrebbe aprire una finestra che richiede il PIN | ||
# Usufruire dei servizi | # Usufruire dei servizi | ||
# Chiudere il browser e aspettare che il led torni a lampeggiare | # Chiudere il browser e aspettare che il led torni a lampeggiare | ||
# Estrarre la tessera | # Estrarre la tessera | ||
== Lettura dei dati pubblici sulla tessera == | |||
La tessera sanitaria contiene sul filesystem alcuni dati pubblici che si possono leggere sia con la | |||
interfaccia smartcard sia con un lettore contactless per le tessere sanitarie più recenti (post 2018 almeno). | |||
I dati pubblici (codice fiscale, nome e cognome, numero di tessera) sono sufficienti nei totem di pagamento | |||
delle prestazioni sanitarie in Emilia Romagna. | |||
Chi ha ruby può avere un'idea del contenuto con lo [https://github.com/francescm/tessera_sanitaria script di prova]. | |||
== Sblocco TS-CNS == | |||
Se si digita tre volte il PIN errato la TS-CNS viene bloccata. Per sbloccarla in autonomia, senza doversi recare allo sportello dell'ASL, occorre conoscere il codice PUK (di 8 cifre, almeno di norma) e digitare da terminale il seguente comando:<syntaxhighlight> | |||
$ pkcs15-tool -u --puk CodicePUK | |||
</syntaxhighlight> | |||
== Problematiche aperte == | == Problematiche aperte == | ||
=== | === Tessere di nuova emissione === | ||
Potrebbe essere necessario ricorrere al software più recente disponibile, non sempre rilasciato con licenza libera. Diventa importante verificare il modello della carta per scaricare il software corretto. | |||
=== Firma elettronica === | === Firma elettronica === | ||
Trovare un software per la firma elettronica dei documenti. Potrebbe essere [http://opensignature.sourceforge.net/english.php#os OpenSignature], che però non è presente nei repository ufficiali Debian. Vedi anche [http://wiki.debian.org/PkgItalianOnly qui]. | Trovare un software per la firma elettronica dei documenti. Potrebbe essere [http://opensignature.sourceforge.net/english.php#os OpenSignature], che però non è presente nei repository ufficiali Debian. Vedi anche [http://wiki.debian.org/PkgItalianOnly qui]. | ||
== Ringraziamenti == | == Ringraziamenti == | ||
Un grazie sentito a tutti gli sviluppatori di software libero che hanno reso accessibile l'utilizzo di queste tecnologie a ogni utente Debian. Un pensiero particolare va ad Emanuele Pucciarelli, autore della patch per OpenSC grazie alla quale anche le tessere italiane sono divenute compatibili. | Un grazie sentito a tutti gli sviluppatori di software libero che hanno reso accessibile l'utilizzo di queste tecnologie a ogni utente Debian. Un pensiero particolare va ad Emanuele Pucciarelli, autore della patch per OpenSC grazie alla quale anche le tessere italiane sono divenute compatibili. | ||
== Fonti == | == Fonti == | ||
*https://sites.google.com/site/dalbrizio/how-to_/cartanazionaledeiservizicnssudebianubuntu3264bit | * [https://sites.google.com/site/dalbrizio/how-to_/cartanazionaledeiservizicnssudebianubuntu3264bit Daniele Albrizio howto] | ||
* https://www.muciu.it/cns_unlock/ | |||
{{Autori | |||
|Autore = [[Utente:Stemby|Stemby]] | |||
|Estesa_da = [[Utente:metaldaze|metaldaze]] | |||
|Verificata_da = | |||
:[[Utente:Wtf|Wtf]] | |||
:[[Utente:Usmnunter|Usmnunter]] 15:10, 10 set 2019 (CEST) | |||
|Numero_revisori = 2 | |||
}} | |||
[[Categoria:Browser]] | [[Categoria:Browser]] | ||
[[Categoria:Altro hardware]] | [[Categoria:Altro hardware]] |
contributi