Repository 32bit  Forum
Repository 64bit  Wiki

Carta Nazionale dei Servizi e lettore smart card ACR38U, carta regionale F.V.G.: differenze tra le versioni

Da Slacky.eu.
(bozza 3)
(Copyright - License)
 
(5 revisioni intermedie di 2 utenti non mostrate)
Riga 21: Riga 21:
:'''Smart card library''': [http://www.opensc-project.org/opensc OpenSC]
:'''Smart card library''': [http://www.opensc-project.org/opensc OpenSC]
:'''Middleware''': [http://pcsclite.alioth.debian.org/pcsclite.html PCSC-lite]
:'''Middleware''': [http://pcsclite.alioth.debian.org/pcsclite.html PCSC-lite]
:'''Smart card reader driver''': [http://www.acs.com.hk ACS ACR38U smart card readers]
+
:'''Smart card reader driver''': [http://acr38u.com/pages/pc-linked-smart-card-readers/drivers/ ACS ACR38U smart card readers]
== Installare le librerie necessarie ==
== Installare le librerie necessarie ==
Riga 27: Riga 27:
:'''pcsc-lite pcsc-tools pcsc-perl opensc'''
:'''pcsc-lite pcsc-tools pcsc-perl opensc'''
Gli slackbuid dei pacchetti per la 13.37 sono tutti disponibili su [http://slackbuilds.org SBo]
Gli slackbuid dei pacchetti per la 13.37 sono tutti disponibili su [http://slackbuilds.org SBo]
  +
Per la 14.1, attualmente (3 Marzo 2014) lo slackbuild di pcsc-tools non risulta aggiornato alla nuova versione 1.4.22 e non sono più disponibili i sorgenti per la versione precedente. Dovrete quindi modificare lo slackbuild impostando il nuovo numero di versione e scaricare [http://ludovic.rousseau.free.fr/softwares/pcsc-tools/pcsc-tools-1.4.22.tar.gz i nuovi sorgenti].
Come specificato nello slackbuild di pcsc-lite, per avere il servizio pcscd attivo al riavvio del sistema, bisogna inserire il seguente codice in /etc/rc.d/rc.local:
+
Come specificato nello slackbuild di pcsc-lite, dovrete creare un nuovo utente pcscd (257) e un nuovo gruppo pcscd (257). Inoltre per avere il servizio pcscd attivo al riavvio del sistema, bisogna inserire il seguente codice in /etc/rc.d/rc.local:
<source lang="bash">
<source lang="bash">
#pcsc-lite
#pcsc-lite
Riga 38: Riga 39:
infatti gli script di avvio rc.S, rc.M, ecc. non processano /etc/rc.d/rc.pcscd, quindi non basta dare chmod 755 allo script.
infatti gli script di avvio rc.S, rc.M, ecc. non processano /etc/rc.d/rc.pcscd, quindi non basta dare chmod 755 allo script.
== Installare il driver "libacr38u" ==
+
== Installare il driver ==
  +
I driver purtroppo sono disponbili unicamente in forma di pacchetto precompilato per debian, fedora, ubuntu e opensuse, per cui sarà necessario un poco di sforzo in più.
  +
Per prima cosa bisogna scaricare [http://downloads.acs.com.hk/drivers/en/ACS-Unified-PKG-Lnx-105-P.zip il pacchetto con i precompilati]. La versione linkata è la più aggiornata che sono riuscito a trovare, e ne confermo il funzionamento con il lettore in mio possesso.
  +
Decomprimete l'archivio scaricato e anche l'archivio al suo interno, arrivando in una directory con 4 subdirectory (una per ogni distribuzione) e un ReadMe.txt.
  +
A questo punto dovremo sfruttare il pacchetto [http://distro.ibiblio.org/amigolinux/download/src2pkg/ src2pkg] per creare un precompilato per slackware. Ammetto di essere pigramente andato alla cieca e di avere copiato quanto scritto nel [http://www.src2pkg.net/archive_v1:tutorials#converting_an_rpm_archive_to_a_slackware_package tutorial] senza leggere la documentazione, ma dato che non era necessaria una compilazione ma solo un cambio di formato mi sono fidato e il risultato è stato positivo.
  +
Io ho scelto di convertire il driver RPM per Fedora 19 x86_64, ma la procedura è identica per gli altri pacchetti (ma non garantisco il risultato).
  +
Recatevi quindi nella cartella '''fedora/''' ed eseguite
  +
<source lang="bash">src2pkg -N pcsc-lite-acsccid-1.0.5-1.fc19.x86_64.rpm</source>
  +
A questo punto dovreste avere un file chiamato '''pcsc-lite-acsccid.src2pkg.auto'''. Questo file contiene le impostazioni di configurazione del pacchetto che andremo a creare: io non l'ho modificato, ma se volete personalizzare il futuro txz in qualche modo, questo è il file da modificare.
  +
Ora lanciate semplicemente
  +
<source lang="bash">src2pkg -VV -C -W -X pcsc-lite-acsccid-1.0.5-1.fc19.x86_64.rpm</source>
  +
e dopo pochi istanti dovreste ritrovare il vostro pacchetto '''pcsc-lite-acsccid-1.0.5-x86_64-1.txz''' che potrete installare con i soliti tools offerti da Slackware.
  +
  +
:Test del sistema: per vedere se tutto funzione possiamo usare l'utility '''pcsc_scan''', avviabile da "user" dopo aver avviato il demone '''pcscd''' da "root", magari con le opzioni '''--foreground --debug''' per verificare il buon esito dell'installazione. Se è tutto ok, il lettore viene rilevato automaticamente. Consiglio anche di provare a firmare un file qualsiasi di prova, dato che alcune versioni dei driver è risultato che '''pcsc_scan''' funzionava perfettamente così come la lettura/scrittura della scheda da parte di gnupg, ma in fase di firma il demone '''pcscd''' entrava in segfault. Seguendo la procedura descritta il problema è stato risolto, ma è stato testato tutto su un unico lettore (ID 072f:9000) e su una unica scheda OpenPGP.
== Configurare il dispositivo di sicurezza su Firefox ==
== Configurare il dispositivo di sicurezza su Firefox ==
  +
Esistono diverse guide in rete, anche ricche di particolari, che spiegano come installare il dispositivo su Firefox. Come visto in premessa ci sono diverse soluzioni software, nel nostro caso l'interfaccia con Firefox è data da opensc. La configurazione è semplicissima, si parte dal menù "Modifica":
  +
  +
:[ Modifica ] --> [ Preferenze ] --> [ Avanzate ] --> [ Dispositivi di sicurezza ] --> [ Carica ]
  +
  +
::Nome modulo: [ Nuovo modulo PKCS#11 ]
  +
::Nome file modulo [ .......... ] [ Sfoglia ]
  +
  +
Cercheremo come "Nome file modulo":
  +
::'''/usr/lib/opensc-pkcs11.so'''
  +
  +
Il lettore è immediatamente attivo. L'utilizzo è semplice, basterà inserire la smart card ed entrare in uno dei siti per cui ne è previsto l'uso.
  +
  +
''Nota: si è visto che una volta caricato il modulo il servizio pcscd dovrà rimanere sempre attivo anche senza lettore inserito, altrimenti Firefox rallenta all'avvio alla ricerca dei software di comunicazione.''
== Copyright - License ==
== Copyright - License ==
Autore: <!-- ~~~~ -->
+
Autore: [[Utente:Zoros|Zoros]] 09:05, 2 nov 2011 (CET)
  +
Update: [[Utente:Delcaran lëdeloth|Delcaran lëdeloth]] 19:02, 3 mar 2014 (CET)
<!-- scegliere una licenza, anche diversa da FDL -->
<!-- scegliere una licenza, anche diversa da FDL -->
{{Information
{{Information

Versione attuale delle 19:11, 3 mar 2014

Indice

[modifica] Guida all'installazione e all'utilizzo della CNS su Slackware

Sono ormai parecchi anni che diverse Amministrazioni pubbliche hanno aderito al Progetto CNS. Si tratta in pratica di utilizzare una smartcard (e apposito lettore) per per accedere in modo sicuro ai servizi online della P.A. attraverso un browser. Naturalmente la P.A. si preoccupa di garantire la fruibilità del servizio a tutti i cittadini, quindi per il maggior numero di s.o. Purtroppo i driver e le informazioni che riusciamo ad ottenere sui siti ufficiali riguardo a Linux sono poche e non coprono tutte le distro, ovviamente.

In questa guida si intende offrire un supporto completo all'uso della CNS attraverso il lettore ACR38.Il sistema è stato testato con la Carta regionale dei servizi, Regione F.V.G., il lettore ACR38 è in uso in molte altre Amministrazioni.


Avvertenze
Le informazioni e le procedure descritte in questo articolo si intendono fornite "as is" e senza garanzia alcuna. Gli autori dell'articolo e slacky.eu non possono essere ritenuti in alcun modo responsabili per eventuali danni, perdite di informazioni, ecc. che si possono verificare a seguito dell'utilizzo delle informazioni qui contenute. Use at own risk!

[modifica] Il funzionamento del sistema in breve

Il collegamento tra smart card e browser avviene generalmente attraverso 4 livelli:

Application: un browser o un client di posta, Firefox, Thunderbird, ecc.
Smart card library: il protocollo per comunicare con lo strato successivo, PKCS#11 è lo standard valido per tutti i s.o.
Middleware: software intermediario tra la smart card ed il lettore (ora prevalentemente USB)
Smart card reader driver: il driver per il lettore, lo standard più diffuso è CCID (Chip/Smart Card Interface Devices)

Per l'implementazione del sistema ci sono comunque diversi standard, quindi soluzioni diverse per raggiungere lo stesso risultato. La soluzione adottata nel nostro caso è la seguente:

Application: Firefox
Smart card library: OpenSC
Middleware: PCSC-lite
Smart card reader driver: ACS ACR38U smart card readers

[modifica] Installare le librerie necessarie

Il sistema richiede le seguenti librerie (da compilare in sequenza se si parte dai sorgenti):

pcsc-lite pcsc-tools pcsc-perl opensc

Gli slackbuid dei pacchetti per la 13.37 sono tutti disponibili su SBo Per la 14.1, attualmente (3 Marzo 2014) lo slackbuild di pcsc-tools non risulta aggiornato alla nuova versione 1.4.22 e non sono più disponibili i sorgenti per la versione precedente. Dovrete quindi modificare lo slackbuild impostando il nuovo numero di versione e scaricare i nuovi sorgenti.

Come specificato nello slackbuild di pcsc-lite, dovrete creare un nuovo utente pcscd (257) e un nuovo gruppo pcscd (257). Inoltre per avere il servizio pcscd attivo al riavvio del sistema, bisogna inserire il seguente codice in /etc/rc.d/rc.local:

#pcsc-lite
 
        if [ -x /etc/rc.d/rc.pcscd ]; then
                /etc/rc.d/rc.pcscd start
        fi

infatti gli script di avvio rc.S, rc.M, ecc. non processano /etc/rc.d/rc.pcscd, quindi non basta dare chmod 755 allo script.

[modifica] Installare il driver

I driver purtroppo sono disponbili unicamente in forma di pacchetto precompilato per debian, fedora, ubuntu e opensuse, per cui sarà necessario un poco di sforzo in più. Per prima cosa bisogna scaricare il pacchetto con i precompilati. La versione linkata è la più aggiornata che sono riuscito a trovare, e ne confermo il funzionamento con il lettore in mio possesso. Decomprimete l'archivio scaricato e anche l'archivio al suo interno, arrivando in una directory con 4 subdirectory (una per ogni distribuzione) e un ReadMe.txt. A questo punto dovremo sfruttare il pacchetto src2pkg per creare un precompilato per slackware. Ammetto di essere pigramente andato alla cieca e di avere copiato quanto scritto nel tutorial senza leggere la documentazione, ma dato che non era necessaria una compilazione ma solo un cambio di formato mi sono fidato e il risultato è stato positivo. Io ho scelto di convertire il driver RPM per Fedora 19 x86_64, ma la procedura è identica per gli altri pacchetti (ma non garantisco il risultato). Recatevi quindi nella cartella fedora/ ed eseguite

src2pkg -N pcsc-lite-acsccid-1.0.5-1.fc19.x86_64.rpm

A questo punto dovreste avere un file chiamato pcsc-lite-acsccid.src2pkg.auto. Questo file contiene le impostazioni di configurazione del pacchetto che andremo a creare: io non l'ho modificato, ma se volete personalizzare il futuro txz in qualche modo, questo è il file da modificare. Ora lanciate semplicemente

src2pkg -VV -C -W -X pcsc-lite-acsccid-1.0.5-1.fc19.x86_64.rpm

e dopo pochi istanti dovreste ritrovare il vostro pacchetto pcsc-lite-acsccid-1.0.5-x86_64-1.txz che potrete installare con i soliti tools offerti da Slackware.

Test del sistema: per vedere se tutto funzione possiamo usare l'utility pcsc_scan, avviabile da "user" dopo aver avviato il demone pcscd da "root", magari con le opzioni --foreground --debug per verificare il buon esito dell'installazione. Se è tutto ok, il lettore viene rilevato automaticamente. Consiglio anche di provare a firmare un file qualsiasi di prova, dato che alcune versioni dei driver è risultato che pcsc_scan funzionava perfettamente così come la lettura/scrittura della scheda da parte di gnupg, ma in fase di firma il demone pcscd entrava in segfault. Seguendo la procedura descritta il problema è stato risolto, ma è stato testato tutto su un unico lettore (ID 072f:9000) e su una unica scheda OpenPGP.

[modifica] Configurare il dispositivo di sicurezza su Firefox

Esistono diverse guide in rete, anche ricche di particolari, che spiegano come installare il dispositivo su Firefox. Come visto in premessa ci sono diverse soluzioni software, nel nostro caso l'interfaccia con Firefox è data da opensc. La configurazione è semplicissima, si parte dal menù "Modifica":

[ Modifica ] --> [ Preferenze ] --> [ Avanzate ] --> [ Dispositivi di sicurezza ] --> [ Carica ]
Nome modulo: [ Nuovo modulo PKCS#11 ]
Nome file modulo [ .......... ] [ Sfoglia ]

Cercheremo come "Nome file modulo":

/usr/lib/opensc-pkcs11.so

Il lettore è immediatamente attivo. L'utilizzo è semplice, basterà inserire la smart card ed entrare in uno dei siti per cui ne è previsto l'uso.

Nota: si è visto che una volta caricato il modulo il servizio pcscd dovrà rimanere sempre attivo anche senza lettore inserito, altrimenti Firefox rallenta all'avvio alla ricerca dei software di comunicazione.

[modifica] Copyright - License

Autore: Zoros 09:05, 2 nov 2011 (CET) Update: Delcaran lëdeloth 19:02, 3 mar 2014 (CET)

GNU Free Documentation Licence
This article is released under the GNU Free Documentation Licence. You are welcome to copy and redistribute it (subject to certain conditions).

Strumenti personali
Namespace

Varianti