[Berlin-wireless] OpenVPN GUI in FFF
Sven-Ola Tuecke
sven-ola
Di Mai 25 09:43:23 CEST 2010
Hallo Mickey,
jetzt hab' ich es auch geschnallt. Bin nicht so fix. Also das ist so:
- Ein Klient akzeptiert erstmal jeden Schluessel mit gueltigem Zertifikat
ausgestellt von der CA. Inklusive Schluessel von anderen Clients (die sind ja
auch gueltig unterschrieben).
- Bei hundert ausgestellten Schluesseln kann einem schon mal einer abhanden
kommen. Mit dem geklauten Laptop kann man sich 1) in den Server einwaehlen
und 2) anderen Klienten was vormachen.
- Darum hat Netscape eine Extension eingefuehrt, mit der der Server-Schluessel
als solcher markiert ist. Die Einwahl (1) verhindert das noch nicht, sehr
wohl aber das anderen-Clients-was-vormachen (2). Die Einwahl kann man nur mit
einer Certification-Revoke-List verhindern (==Liste mit nicht mehr
akzeptierten Keys/Zertis). Die Liste der geklauten Key/Zertis muesste man
dann eigentlich auch auf allen Clients verbreiten ==> das ist aufwaendig.
Also gibts eine Option "nur mit Server verbinden".
- Die Markierung "Ich bin ein Server Schluessel" gibs als Netscape-Extension
(Alt+soll nicht mehr verwendet werden) und als EKU (Extended Key Usage,
Neu+soll jetzt verwendet werden). Im OpenVPN gibts daher das "easy-rsa" in 2
Versionen: 1.0 == Netscape extension, 2.0 == SSLv3-Extension.
Du hast "1.0" verwendet und darum gibts kein Connect weil ich das
neuere "remote-cert-tls server" fuer den Client eingebaut habe. -> to be
coded.
Achso. Reingucken in das Zertifikat um Typ zu checken geht so: "openssl
x509 -text -in server.crt". Steht da unter "X509v3 extensions" ein "Netscape
Cert Type: SSL Server" ist es ein Server-Schluessel (gemacht mit 1.0 oder
2.0). Steht da zusaetzlich "X509v3 Extended Key Usage: TLS Web Server
Authentication" ist es mit 2.0 gemacht.
Das noch nicht fertig. Guck' in den naechsten Tagen mal hier rein:
http://download.berlin.freifunk.net/sven-ola/testing/ChangeLog
// Sven-Ola
Am Samstag 22 Mai 2010 22:33:44 schrieben Sie:
> Hallo,
>
> vielen Dank, dass Du Dir für diese Sache Zeit nimmst.
>
> Am 22.05.2010 17:54, schrieb Sven-Ola Tücke:
> > diese remote-cert-tls-Sache gibts (glaube ich) erst seit neuerdings. Ein
> > aelterer ovpn-2.0 schluckt das nicht.
>
> Also laut manpage für 2.1 ist beides möglich. Und die ist relativ alt,
> "Updated 17. November 2008", sagt openvpn.net
>
> > Ich nehm' an, deinen Server gibts schon
> > laenger?
>
> Das stimmt schon, aber wir haben damals direkt mit 2.1 angefangen,
> obwohl es wohl noch beta war.
>
> Wenn ich die Situation richtig erinnere, dann ist unser Server-Cert
> erstellt mit dem beiliegenden easy-rsa Script Bundle und da speziell dem
> Script build-key-server. Dabei wird dann der nsCertType auf "server"
> gesetzt.
>
> > Das waere fuer einen point-to-multi-client dann eher was
> > allgemeinverstaendliches wie "Server/Certs is from older version of
> > openvpn" und dann "remote-cert-tls server" raus und "ns-cert-type server"
> > rein...?
>
> Ok, dass es allgemein verständlich sein sollte. Aber es sollte meiner
> Meinung nach keine Entweder-Oder-Entscheidung sein.
>
> Vorschlag (für Server und point-to-multi-client sinnvoll):
>
> "Enable strict key usage checking" -> remote-cert-tls client|server
> "Enable strict cert type checking" -> ns-cert-type client|server
>
> Gruß,
> Mickey
Mehr Informationen über die Mailingliste Berlin