OpenVPN - Konzeptionelle Fragen

Hi,

ich habe ein paar Fragen zu OpenVPN:

1) OpenVPN vs IPSec
Soweit ich dasverstanden habe transportiert OpenVPN IP Packete in einer SSL/TLS Verbindung also über TCP bzw UDP. Damit hätte man dann

TCP in IP in UDP in IP

, korrekt? IPSec dagegen im Tunnel Mode

TCP in IP in ESP in IP

Ist es korrekt anzunehmen, dass OpenVPN was Performance angeht mit IPSec mithalten kann?


2) Bei der Konfiguration von OpenVPN legt man zuerst mal ein Public-Private Key Pair an, das quasi als CA fungiert. Die sehen dann z.B. so aus:

Code:
root@openvpn-server:/usr/share/doc/openvpn/examples/easy-rsa/2.0/keys# cat ca.crt 
-----BEGIN CERTIFICATE-----
MIIDjTCCAvagAwIBAgIJAI4tWhrTGSuHMA0GCSqGSIb3DQEBBQUAMIGMMQswCQYD
VQQGEwJERTELMAkGA1UECBMCQkExEjAQBgNVBAcTCU51cmVtYmVyZzEMMAoGA1UE
ChMDRk9NMRQwEgYDVQQLEwtJVCBTZWN1cml0eTEPMA0GA1UEAxMGRk9NIENBMScw
JQYJKoZIhvcNAQkBFhhtYXRoaWFzQG1hdGhpYXMtZXdhbGQuZGUwHhcNMTEwNDEx
MDgzNjA4WhcNMjEwNDA4MDgzNjA4WjCBjDELMAkGA1UEBhMCREUxCzAJBgNVBAgT
AkJBMRIwEAYDVQQHEwlOdXJlbWJlcmcxDDAKBgNVBAoTA0ZPTTEUMBIGA1UECxML
SVQgU2VjdXJpdHkxDzANBgNVBAMTBkZPTSBDQTEnMCUGCSqGSIb3DQEJARYYbWF0
aGlhc0BtYXRoaWFzLWV3YWxkLmRlMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKB
gQDOjCVwvzqBGWydOAtJhahrEm1vjfZm/Ifuby1pJH6gGInAXaj1INnL37frvtkU
KsYX95L0BDgFqgeh+fgmsWwLC61ZmUVvHSv6HgFwSdJgVqP8ERF4XiOYaRciHUFN
8KjFx1aYqJOFxcdhVgs6E4C0hZMo6KDrsC6cwR/WMNgE6QIDAQABo4H0MIHxMB0G
A1UdDgQWBBQYlBIuEOlP0QUAjoL/FDMDtmovzTCBwQYDVR0jBIG5MIG2gBQYlBIu
EOlP0QUAjoL/FDMDtmovzaGBkqSBjzCBjDELMAkGA1UEBhMCREUxCzAJBgNVBAgT
AkJBMRIwEAYDVQQHEwlOdXJlbWJlcmcxDDAKBgNVBAoTA0ZPTTEUMBIGA1UECxML
SVQgU2VjdXJpdHkxDzANBgNVBAMTBkZPTSBDQTEnMCUGCSqGSIb3DQEJARYYbWF0
aGlhc0BtYXRoaWFzLWV3YWxkLmRlggkAji1aGtMZK4cwDAYDVR0TBAUwAwEB/zAN
BgkqhkiG9w0BAQUFAAOBgQDJ1TFV62jkwtvoMFyBohKF0SzFsMn08bz6atKelkUy
u1/qXeDyPvGId6Dt3o7Aw5HEk8molthHgAEEtrTLG4CPISl0YJ6fkusZbGT3W7Dv
Z9CFurAoKPntiTt4ZWEDcNN4XzyOwFzhERkPkMV5nzwa39GkUVz2B6A4CldOo8E1
rg==
-----END CERTIFICATE-----
root@openvpn-server:/usr/share/doc/openvpn/examples/easy-rsa/2.0/keys# cat ca.key 
-----BEGIN RSA PRIVATE KEY-----
MIICXgIBAAKBgQDOjCVwvzqBGWydOAtJhahrEm1vjfZm/Ifuby1pJH6gGInAXaj1
INnL37frvtkUKsYX95L0BDgFqgeh+fgmsWwLC61ZmUVvHSv6HgFwSdJgVqP8ERF4
XiOYaRciHUFN8KjFx1aYqJOFxcdhVgs6E4C0hZMo6KDrsC6cwR/WMNgE6QIDAQAB
AoGBAMBj8Hf918vq1632RyU7t23Mo10Wmd7B+QfSTTUzxjLvyFgDpd52tAhgIdwY
T/GmChDHDf33dAtqnmN1CH1aJCzT4LdXNfLc95usvH/c8xQL2ROER/h+rTrVmMgG
wHBdi6NI40AbZ2Ft05iN6DUzD/btH1SLb6sGe+uDYZ1dXozRAkEA+c6TLMVVxhDL
IW42QdVMF+zzKnl7/62HJnr4INIS0zDdOd6efZpnOJs1g4ueDzNDTxQ+DakzaX2C
29I1ojjXzQJBANOrBUc56PEj7cL93j08PldGy4RioZhfRd2kQ3OlEXbNEJ7aax/q
qzaXPteqgFzmjTexrsL6rbhbKlRLoc+izY0CQQDgl7OGqxzE6NBYjChH5Cd301eE
tpifdTpvhFuV1omKSwJ7RwWj07A+Gn1weZRwAhzf+kkYKynIDEocrM//u695AkAh
8qjrDoekvT1x66OMMLBS8SDM/8CpHoanEKRc1NmjMyp6P8+0k7+YBtPmZQsnWzbE
+vNrhCb+jWiRknvGQHc1AkEAg+Ko2XNbwLsCQKfnheqqILp0YCDcpev/QRHREzrE
D1Ir76NM1zFZEJd1b6Z99sWDWx32eOyvRRJMtCEzK8xpvw==
-----END RSA PRIVATE KEY-----
root@openvpn-server:/usr/share/doc/openvpn/examples/easy-rsa/2.0/keys#

Das erste ist _nur_ der Public Key oder? Mich verwirrt hier, dass da steht "BEGIN CERTIFICATE", es aber eigentlich kein X.509 Zertifikat ist oder sehe ich das falsch?

3) Danach erzeugt man Public und Private Key für den VPN Server und signiert den Public Key mit dem Private Key der CA, korrekt? Dabei entsteht dann ein echtes X.509 Zertifikat oder?

4) Wozu wird dieses Diffie-Hellman File gebraucht? DH benutzt man ja um Symmetrische Schlüssel auszutauschen - richtig? Warum benutzt man hier DH wenn man doch Public und Private Keys hat mit denen man wunderbar den Symmetric Key übertragen könnte? Was steht eigentlich in diesem dh1024.pem drin? (Reinschaun kann ich ja, aber was bedeutet es? ;) )

ciao
serow
 
Das erste ist schon ein Zertifikat. Der Server braucht sein eigenes Master-Zertifikat. Client-Verbindungen wird er nur annehmen, wenn das Zertifikat des Clients mit dem Private-Key des Master-Zertifikats signiert wurde. Sehr gute Doku dazu: HOWTO

Ich habe bisher mit OpenVPN bezüglich der Geschwindigkeit keine größeren Probleme gehabt. Hab allerdings bisher auch noch keinen Vergleichstest gemacht. Wenn du da neue Erkenntnisse bekommen solltest, wäre ich daran auch interessiert. :)
 
Hi,

scheinbar kann man die Begriffe Private Key und Certificate beliebig austauschen ^^ Habe das auch an anderer Stelle schon beides gelesen.

Wichtig wäre mir noch diese dh1024.pem Geschichte. Weiss dazu jemand was?

Grüße
serow
 
Das DH-File wird genutzt um die kryptografischen Schlüssel sicher auszutauschen, selbst wenn unsichere Kanäle genutzt werden müssen.
 
Hi,

ja das dachte ich mir schon so grob ^^ Ich habe sogar noch etwas konkreter herausgefunden, dass dieses File die Primzahl enthält mit der DH gemacht wird. Aber meine eigentliche Frage ist: Warum den Key nicht mit dem Pub Key des anderen verschlüsseln und rüberschicken? Warum noch DH, wenn man doch die Public Key Methode hat.

Grüße
serow
 
Zurück
Oben