Panagiotis Atmatzidis ha scritto:

> A questo punto, non posso capire come sia capace qualcuno di impersonare
> il server, dato che le chiavi sono state create proprio sul server e poi
> distribuite sui clienti. Non ce qualche "signature" del server?

C'è la signature della CA, per l'appunto.
Nelle configurazioni dei client, lo statement
'ca certificato-ca.crt' garantisce che il certificato presentato dal
server sia, appunto, "legittimo", ovvero emesso da una CA ben precisa.
'ns-cert-type server' nella conf dei client garantisce invece che nessuno degli
altri client, ammesso che la CA utilizzata per i client e per i server sia la
stessa, possa impersonare un server utilizzando il proprio certificato.
Vedi anche tls-remote e remote-cert-tls.
tls-auth, con una chiave statica ad hoc, fornisce, invece, un'ulteriore 
protezione
aggiungendo una sorta di layer HMAC ai pacchetti e serve più contro DoS e 
simili.


> Generando i certificati per il secondo client (laptop), ho usato il
> comando: pkitool --client --pass leggendo alla descrizione:
> 
> pkitool --pass client2    -> Build password-protected "client2"
> certificate/key
> pensavo che sarebbe richiesta una password al'utente al momento della
> connessione, o cmq prima che essa cominciasse. Con viscosity come client
> non accade. L'unica opzione e' usare "auth-user-pass" ma viene richiesta
> sia username che password, mentre al momento della creazione del
> certificate mi e' stata richiesta solamente la PEM password.

Non conosco viscosity, ma mi pare che il problema sia altrove.
Ho un paio di migliaia di certificati client attivi in giro e
sono stati tutti generati con pkitool --client --pass e sia
da linux che da windows (dove uso openvpn-gui) la password, all'atto
dell'avvio del client, me la chiede eccome.

Di seguito, un esempio di generazione di coppia certificato-chiave con password
(non specifico --client perchè quella CA è dedicata ai soli client e nel
openssl.cnf nsCertType = client)

[root:10]$. ./vars
NOTE: If you run ./clean-all, I will be doing a rm -rf on 
/etc/certification-authority/openvpn/client/keys
[root:11]$./pkitool --pass sikurezza.org
Generating a 1024 bit RSA private key
.......++++++
......................++++++
writing new private key to 'sikurezza.org.key'
Enter PEM pass phrase:
Verifying - Enter PEM pass phrase:
-----
Using configuration from /etc/certification-authority/openvpn/client/openssl.cnf
Enter pass phrase for /etc/certification-authority/openvpn/client/keys/ca.key:
Check that the request matches the signature
Signature ok
The Subject's Distinguished Name is as follows
countryName           :PRINTABLE:'IT'
stateOrProvinceName   :PRINTABLE:'LZ'
localityName          :PRINTABLE:'Roma'
organizationName      :PRINTABLE:'Xxx S.p.a.'
commonName            :PRINTABLE:'sikurezza.org'
emailAddress          :IA5STRING:'[email protected]'
Certificate is to be certified until Jul 20 12:51:51 2010 GMT (365 days)

Write out database with 1 new entries
Data Base Updated
________________________________________________________
http://www.sikurezza.org - Italian Security Mailing List

Rispondere a