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
 | |
| 
 |