236 lines
		
	
	
		
			5.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			236 lines
		
	
	
		
			5.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
		
			Executable File
		
	
	
	
	
EUTRON
 | 
						|
 | 
						|
Internet : http://www.smartkey.eutron.it
 | 
						|
Helpdesk email : helpdesk@eutron.it
 | 
						|
Commercial email : info@eutron.it
 | 
						|
Commercial phone : 035697080
 | 
						|
Fax : 035697092
 | 
						|
 | 
						|
 | 
						|
SmartKey Parallel and USB driver for Linux
 | 
						|
------------------------------------------
 | 
						|
 | 
						|
Questo driver funziona per kernel dal 2.4.21-144 (Suse 9) compilato con gcc-3.2.3
 | 
						|
 | 
						|
Il pacchetto fornisce un'interfaccia tra i programmi scritti in 
 | 
						|
linguaggio C e il driver della chiave SMARTKEY. L'interfaccia e` 
 | 
						|
completamete compatibile con quella disponibile in ambiente MS-DOS. 
 | 
						|
Questo permette un facile trasporto in ambiente Unix dei programmi 
 | 
						|
sviluppati per il sistema operativo MS-DOS.
 | 
						|
 | 
						|
 | 
						|
CONTENUTO
 | 
						|
---------
 | 
						|
 | 
						|
Il pacchetto e` costituito dai seguenti file:
 | 
						|
 | 
						|
clink.o
 | 
						|
	Costituisce l'interfaccia tra le applicazioni in linguaggio C e 
 | 
						|
	il driver della chiave SMARTKEY.
 | 
						|
	
 | 
						|
clink.h
 | 
						|
	Definisce la struttura dell'interfaccia di clink.o. Deve essere 
 | 
						|
	incluso nei file C che utilizzano la chiave SMARTKEY.
 | 
						|
     
 | 
						|
smartdem.c   
 | 
						|
	Esempio di utilizzo della chiave SMARTKEY scritto in linguaggio C.
 | 
						|
 | 
						|
smartdem   
 | 
						|
	Forma eseguibile del programma esempio.
 | 
						|
	
 | 
						|
skey*.o   
 | 
						|
	Driver della chiave
 | 
						|
	
 | 
						|
skinstall   
 | 
						|
	Script per l'installazione automatica
 | 
						|
	
 | 
						|
skuninstall  
 | 
						|
	Script per la disinstallazione automatica
 | 
						|
 | 
						|
skeyver   
 | 
						|
	Utility per impostare la versione del kernel nel modulo skey.o
 | 
						|
 | 
						|
 | 
						|
SUPPORTO USB
 | 
						|
------------
 | 
						|
 | 
						|
Il driver SmartKey, come ogni altro driver USB, richiede che i moduli 
 | 
						|
USB del kernel siano caricati ed attivi. Generalmente questo si puo' 
 | 
						|
ottenere con i comandi :
 | 
						|
 | 
						|
	insmod usbcore
 | 
						|
	insmod usb-uhci
 | 
						|
 | 
						|
per PC con con USB controller UHCI di Intel, VIA, ...
 | 
						|
 | 
						|
	insmod usbcore
 | 
						|
	insmod usb-ohci
 | 
						|
 | 
						|
per PC con un USB controller OHCI di Compaq, iMacs, OPTi, SiS, ALi...
 | 
						|
 | 
						|
 | 
						|
AGGIORNAMENTO
 | 
						|
-------------
 | 
						|
 | 
						|
Per aggiornare i precedenti driver SmartKey e' necessario rilinkare la
 | 
						|
propria applicazione con il nuovo oggetto clink.o.
 | 
						|
 | 
						|
Se questo non viene effettuato, l'applicazione sara' in grado di funzionare
 | 
						|
solo con la prima chiave USB inserita e solo con le chiavi parallele
 | 
						|
agli indirizzi 0x3BC e 0x378. Si perderebbe l'uso della porta parallela
 | 
						|
all'indirizzo 0x278 sostituito con la prima chiave USB.
 | 
						|
 | 
						|
 | 
						|
INSTALLAZIONE AUTOMATICA
 | 
						|
------------------------
 | 
						|
 | 
						|
Avviare lo script skinstall con i permessi di root con i comandi:
 | 
						|
 | 
						|
			chmod a+x skinstall
 | 
						|
			./skinstall
 | 
						|
 | 
						|
L'installazione prevede la configurazione del sistema per il caricamento
 | 
						|
automatico del modulo SmartKey al primo utilizzo.
 | 
						|
 | 
						|
Per disinstallare il driver utilizzare invece i comandi:
 | 
						|
 | 
						|
			chmod a+x skuninstall
 | 
						|
			./skuninstall
 | 
						|
 | 
						|
Ad ogni cambiamento di versione del kernel e' necessaria una reinstallazione.
 | 
						|
 | 
						|
Per avviare il l'applicazione di demo utilizzare i comandi :
 | 
						|
 | 
						|
			chmod a+x smartdem
 | 
						|
			./smartdem
 | 
						|
 | 
						|
 | 
						|
 | 
						|
INSTALLAZIONE MANUALE
 | 
						|
---------------------
 | 
						|
 | 
						|
Per installare il driver si segua la procedura seguente:
 | 
						|
 | 
						|
1) Entrare nel sistema come super-user.
 | 
						|
 | 
						|
2) Posizionarsi nel direttorio /dev con il comando:
 | 
						|
 | 
						|
			cd /dev
 | 
						|
 | 
						|
   creare i file di accesso alla chiave mediante i comandi:
 | 
						|
 | 
						|
			mknod skey0 c 59 0
 | 
						|
			mknod skey1 c 59 1
 | 
						|
			mknod skey2 c 59 2
 | 
						|
			mknod skey3 c 59 3
 | 
						|
			mknod skey4 c 59 4
 | 
						|
			mknod skey5 c 59 5
 | 
						|
 | 
						|
   e cambiare le proprieta` e il gruppo dei file mediante i comandi:
 | 
						|
 | 
						|
			chmod 666 skey?
 | 
						|
			chgrp daemon skey?
 | 
						|
 | 
						|
3) Identificare il driver per la propria configurazione. Ci sono varie
 | 
						|
   possibilita':
 | 
						|
 | 
						|
	skey_R.o	Kernel monoprocessore con le informazioni 
 | 
						|
			di versione
 | 
						|
	skey_Rsmp_.o	Kernel multiprocessore con le informazioni 
 | 
						|
			di versione
 | 
						|
	skey_Rsmp.o	Kernel multiprocessore con le informazioni 
 | 
						|
			di versione specifico per RedHat
 | 
						|
	skey.o		Kernel monoprocessore senza le informazioni
 | 
						|
			di versione
 | 
						|
 | 
						|
   Un semplice test e' il comando :
 | 
						|
 | 
						|
			grep printk /proc/ksyms
 | 
						|
 | 
						|
   e dato l'output :
 | 
						|
 | 
						|
		... printk_R1b7d4074		driver skey_R.o
 | 
						|
		... printk_Rsmp_1b7d4074	driver skey_Rsmp_.o
 | 
						|
		... printk_Rsmp1b7d4074		driver skey_Rsmp.o
 | 
						|
		altro				driver skey.o
 | 
						|
 | 
						|
   Rinominare quindi il driver identificato con il nome skey.o
 | 
						|
 | 
						|
4) Configurare il modulo skey.o con la versione di kernel corrente:
 | 
						|
 | 
						|
			chmod a+x skeyver
 | 
						|
			./skeyver skey.o
 | 
						|
 | 
						|
5) Il driver skey.o e` sotto forma di modulo caricabile dinamicamente.
 | 
						|
   Quindi, prima di essere utilizzato, deve essere caricato con il comando:
 | 
						|
 | 
						|
			insmod skey
 | 
						|
 | 
						|
6) Per configurare il driver per il caricamento automatico al primo
 | 
						|
   utilizzo effettuare le seguenti operazioni:
 | 
						|
 | 
						|
6.1) Aggiungere la riga:
 | 
						|
 | 
						|
			alias char-major-59 skey
 | 
						|
 | 
						|
     in fondo al file /etc/conf.modules
 | 
						|
 | 
						|
6.2) Copiare il file skey.o nella directory /lib/modules/KERNELVERSION/misc,
 | 
						|
     dove KERNELVERSION e' la versione del kernel.
 | 
						|
     La versione del kernel viene mostrata con il comando :
 | 
						|
     
 | 
						|
			uname -r
 | 
						|
     
 | 
						|
6.3) Aggiornare le dipendenze dei moduli con il comando:
 | 
						|
 | 
						|
			depmod -a
 | 
						|
 | 
						|
6.4) Scaricare dalla memoria una eventuale copia del driver con il comando:
 | 
						|
 | 
						|
			rmmod skey
 | 
						|
 | 
						|
     e verificare il caricamento automatico del modulo con il comando:
 | 
						|
 | 
						|
			modprobe skey
 | 
						|
 | 
						|
     L'assenza di messaggi di errore indica che il caricamento
 | 
						|
     e' avvenuto.
 | 
						|
 | 
						|
 | 
						|
UTILIZZO 
 | 
						|
--------
 | 
						|
 | 
						|
Per utilizzare l'interfaccia clink.o e` necessario copiare il file nel 
 | 
						|
direttorio di lavoro e collegarlo agli altri file oggetto costituenti il 
 | 
						|
programma da proteggere. Nei file del programma applicativo che 
 | 
						|
utilizzano il modulo clink.o e` necessario includere il file clink.h. 
 | 
						|
 | 
						|
 | 
						|
CONFIGURAZIONE
 | 
						|
--------------
 | 
						|
 | 
						|
Se si sta utilizzando una porta Parallela PCI che usa un indirizzo di IO 
 | 
						|
non standard, e' necessario specificare l'indirizzo effettivo di IO 
 | 
						|
della porta con l'argomento "port" del modulo.
 | 
						|
 | 
						|
L'argomento accetta fino a tre valori separati da virgole. I valori di 
 | 
						|
default sono 0x378, 0x278, 0x3bc.
 | 
						|
 | 
						|
Per esempio :
 | 
						|
 | 
						|
	insmod skey port=0x800
 | 
						|
 | 
						|
o
 | 
						|
 | 
						|
	insmod skey port=0x800,0x810,0x820
 | 
						|
 | 
						|
 | 
						|
Su sistemi con bus usb OHCI (Open Host Controller Interface), 
 | 
						|
generalmenti presenti su tutte le schede aggiuntive PCI USB, e' 
 | 
						|
necessario aggiungere l'argomento "fastusb=0"
 | 
						|
 | 
						|
Per esempio :
 | 
						|
 | 
						|
	insmod skey fastusb=0
 | 
						|
 |