PC/SC

  PC/SC è un gruppo di lavoro che ha prodotto un manager di risorse per smart card, denominato anch'esso PC/SC. Prodotto con l'obiettivo di standardizzare l'interfaccia con la smart card e di rendere sicure le operazioni sulla stessa, PC/SC è una piattaforma di lavoro indipendente e implementabile su un qualunque sistema operativo.
  
Se non è già stato fatto, in primo luogo bisogna scaricare il middleware PC/SC ed i driver dedicati al proprio lettore. Le ultime versioni sono disponibili a:

  Per i passi successivi occorre avere acesso al sistema come root.



-) Installazione PC/SC

  Scompattare l'archivio ed installare il contenuto in /usr/local/pcsc/. Laddove presenti le lettere X, Y e Z occorre inserire i valori del pacchetto utilizzato.


bash# tar -xvzf pcsc-lite-X.Y.Z.tar.gz
bash# cd pcsc-lite-X.Y.Z
bash# ./configure --prefix=/usr/local/pcsc/ --enable-usb
bash# make
bash# make install


  Se il proprio lettore non è di tipo usb, il parametro --enable-usb è superfluo.



-) Installazione del driver del lettore

  A questo punto occorre creare una cartella drivers sotto /usr/local/pcsc/ se non è già presente, quindi copiare l'archivio del driver in questa cartella e scompattarlo. Se il driver era stato creato con l'autoconfigurazione, chiamare lo script configure prima di compilarlo. Successivamente è possibile eliminare il pacchetto compresso.


bash# mkdir /usr/local/pcsc/drivers
bash# cp the-driver-X.Y.tar.gz /usr/local/pcsc/drivers
bash# cd /usr/local/pcsc/drivers
bash# tar -xvzf the-driver-X.Y.tar.gz
bash# cd the-driver-X.Y
bash# ./configure
bash# make
bash# rm ../the-driver-X.Y.tar.gz


  Si raccomanda di leggere il file README, dato che alcuni driver richiedono speciali variabili d'ambiente o link simbolici.



-) Configurazione del driver

  Per ogni driver installato deve esistere una struttura configurativa nel file /etc/reader.conf con il seguente schema:


FRIENDLYNAME <reader name>
DEVICENAME <device name>
LIBPATH <path to the library>
CHANNELID <device id>


  I valori esatti dei parametri dipendono dal lettore e dalla versione del driver: si faccia riferimento al file README presente nel pacchetto. Il parametro LIBPATH definisce il path assoluto del modulo del driver; se ciò non è noto, provare a localizzarlo con il comando find.


bash# cd /usr/local/pcscd/drivers/the-driver-X.Y
bash# find . -name="*.so"


  Dopo aver apportato tutte le modifiche richieste, provare a far partire il demone PC/SC , pcscd.


bash# /usr/local/pcsc/sbin/pcscd


  Se il demone fallisce il caricamento del driver del lettore, controllare che la sua struttura configurativa nel file reader.conf sia settata correttamente e che il lettore sia conesso in modo appropriato alla porta corretta. Nel caso in cui persistano problemi, consultate l'archivio

http://www.linuxnet.com/sclinux@linuxnet.com/

dove sono presenti tutte le risposte alle anomalie riscontrate dai vari utenti. Se non è presente la soluzione al vostro problema, potrete chiedere aiuto alla mailing list

http://www.linuxnet.com/list.html

-) Installazione del modulo PAM e dei tool di gestione delle smart card

  Questo paragrafo mostra come installare il pacchetto smartcard-login che contiene il modulo PAM ed alcuni tool addizionali. Il tutto puo' essere scaricato da:

http://www.strongsec.com/smartcards/

  Se il pacchetto middleware pcsc non è stato installato nella cartella /usr/local/pcsc/, occorre specificare il path del demone con il parametro -with-pcsclite-dir.


bash# tar -xvzf smartcard-login.X.Y.tar.gz
bash# cd smartcard-login.X.Y
bash# ./configure --with-pcsclite-dir=/usr/local/pcsc
bash# make
bash# make install


  Ora dovrebbe essere presente un file chiamato pam_smartcard.so nella cartella /lib/security.