| Linux/UNIX Linuxverfechter finden hier Weggefährten. |
Diskussion: Brauche Hilfe mit OpenVPN SSL Zertifikaten im Forum Linux/UNIX, in der Kategorie Operating Systems; Anzeige Hi, ich habe einen OpenVPN Server zu dem ich nicht verbinden kann. Hier erstmal die Server und Client Konfiguration: ...
![]() |
| | #1 (permalink) |
| Senior Member Registriert seit: 26.03.06 ![]() Likes: 16 | Anzeige Hi, ich habe einen OpenVPN Server zu dem ich nicht verbinden kann. Hier erstmal die Server und Client Konfiguration: server-split.conf Code: dev tun-split proto tcp-server port 1194 server 10.12.53.0 255.255.255.0 dh /etc/openvpn/keys/dh1024.pem ca /etc/openvpn/keys/CA_cert.cer cert /etc/openvpn/keys/openvpn.cer key /etc/openvpn/keys/openvpn.pem comp-lzo keepalive 10 30 persist-tun tun-mtu 1225 push "route 10.0.0.0 255.255.255.0" Code: client proto tcp port 1194 dev tun-nbgsplit remote *********************** ca openvpn.cer cert mathias-ewald.cer key mathias-ewald.pem comp-lzo keepalive 10 30 persist-tun tun-mtu 1225 script-security 2 up /etc/openvpn/update-resolv-conf down /etc/openvpn/update-resolv-conf Code: -rw-r--r-- 1 root root 2074 2010-12-29 10:18 CA_cert.cer -rw-r--r-- 1 root root 245 2010-12-29 10:38 dh1024.pem -rw-r--r-- 1 root root 804 2010-12-29 10:25 dsa_params -rw-r--r-- 1 root root 1009 2010-12-29 10:19 openvpn.cer -rw-r--r-- 1 root root 1743 2010-12-29 10:19 openvpn.pem Code: -rwx------ 1 mathias mathias 1306 2010-12-29 10:45 mathias-ewald.cer -rwx------ 1 mathias mathias 1743 2010-12-29 10:45 mathias-ewald.pem -rw-r--r-- 1 mathias mathias 1009 2010-12-29 10:46 openvpn.cer Wenn ich nun auf dem Client eine Verbindung um Server aufbaue sieht das so aus: Code: mathias@x61t:~/openvpn/spiderman$ sudo openvpn --config client-split.conf Wed Dec 29 11:11:01 2010 OpenVPN 2.1.0 x86_64-pc-linux-gnu [SSL] [LZO2] [EPOLL] [PKCS11] [MH] [PF_INET6] [eurephia] built on Jul 12 2010 Wed Dec 29 11:11:01 2010 WARNING: No server certificate verification method has been enabled. See http://openvpn.net/howto.html#mitm for more info. Wed Dec 29 11:11:01 2010 NOTE: the current --script-security setting may allow this configuration to call user-defined scripts Enter Private Key Password: Wed Dec 29 11:11:06 2010 WARNING: this configuration may cache passwords in memory -- use the auth-nocache option to prevent this Wed Dec 29 11:11:06 2010 /usr/bin/openssl-vulnkey -q -b 2048 -m <modulus omitted> Wed Dec 29 11:11:06 2010 LZO compression initialized Wed Dec 29 11:11:06 2010 WARNING: normally if you use --mssfix and/or --fragment, you should also set --tun-mtu 1500 (currently it is 1225) Wed Dec 29 11:11:06 2010 Attempting to establish TCP connection with [AF_INET]188.98.2.139:1194 [nonblock] Wed Dec 29 11:11:07 2010 TCP connection established with [AF_INET]188.98.2.139:1194 Wed Dec 29 11:11:07 2010 TCPv4_CLIENT link local: [undef] Wed Dec 29 11:11:07 2010 TCPv4_CLIENT link remote: [AF_INET]188.98.2.139:1194 Wed Dec 29 11:11:09 2010 Connection reset, restarting [0] Wed Dec 29 11:11:09 2010 SIGUSR1[soft,connection-reset] received, process restarting Wed Dec 29 11:11:14 2010 WARNING: No server certificate verification method has been enabled. See http://openvpn.net/howto.html#mitm for more info. Wed Dec 29 11:11:14 2010 NOTE: the current --script-security setting may allow this configuration to call user-defined scripts Wed Dec 29 11:11:14 2010 WARNING: this configuration may cache passwords in memory -- use the auth-nocache option to prevent this Wed Dec 29 11:11:14 2010 /usr/bin/openssl-vulnkey -q -b 2048 -m <modulus omitted> Wed Dec 29 11:11:14 2010 LZO compression initialized Wed Dec 29 11:11:14 2010 WARNING: normally if you use --mssfix and/or --fragment, you should also set --tun-mtu 1500 (currently it is 1225) Wed Dec 29 11:11:14 2010 Attempting to establish TCP connection with [AF_INET]188.98.2.139:1194 [nonblock] Wed Dec 29 11:11:15 2010 TCP connection established with [AF_INET]188.98.2.139:1194 Wed Dec 29 11:11:15 2010 TCPv4_CLIENT link local: [undef] Wed Dec 29 11:11:15 2010 TCPv4_CLIENT link remote: [AF_INET]188.98.2.139:1194 Wed Dec 29 11:11:17 2010 Connection reset, restarting [0] Wed Dec 29 11:11:17 2010 SIGUSR1[soft,connection-reset] received, process restarting Code: Wed Dec 29 11:10:31 2010 OpenVPN 2.1_rc11 x86_64-pc-linux-gnu [SSL] [LZO2] [EPOLL] [PKCS11] built on Sep 18 2008 Wed Dec 29 11:10:40 2010 WARNING: this configuration may cache passwords in memory -- use the auth-nocache option to prevent this Wed Dec 29 11:10:40 2010 WARNING: file '/etc/openvpn/keys/openvpn.pem' is group or others accessible Wed Dec 29 11:10:40 2010 /usr/bin/openssl-vulnkey -q -b 2048 -m <modulus omitted> Wed Dec 29 11:10:40 2010 WARNING: normally if you use --mssfix and/or --fragment, you should also set --tun-mtu 1500 (currently it is 1225) Wed Dec 29 11:10:40 2010 TUN/TAP device tun-split opened Wed Dec 29 11:10:40 2010 /sbin/ifconfig tun-split 10.12.53.1 pointopoint 10.12.53.2 mtu 1225 Wed Dec 29 11:10:40 2010 Listening for incoming TCP connection on [undef]:1194 Wed Dec 29 11:10:40 2010 TCPv4_SERVER link local (bound): [undef]:1194 Wed Dec 29 11:10:40 2010 TCPv4_SERVER link remote: [undef] Wed Dec 29 11:10:40 2010 Initialization Sequence Completed Wed Dec 29 11:11:07 2010 Re-using SSL/TLS context Wed Dec 29 11:11:07 2010 LZO compression initialized Wed Dec 29 11:11:07 2010 WARNING: normally if you use --mssfix and/or --fragment, you should also set --tun-mtu 1500 (currently it is 1225) Wed Dec 29 11:11:07 2010 TCP connection established with 91.9.117.250:37965 Wed Dec 29 11:11:07 2010 TCPv4_SERVER link local: [undef] Wed Dec 29 11:11:07 2010 TCPv4_SERVER link remote: 91.9.117.250:37965 Wed Dec 29 11:11:09 2010 91.9.117.250:37965 VERIFY ERROR: depth=0, error=self signed certificate: /C=DE/ST=Bavaria/L=Nuremberg/O=Mathias_Ewald/CN=Mathias_Ewald/emailAddress=mathias@mathias-ewald.de Wed Dec 29 11:11:09 2010 91.9.117.250:37965 TLS_ERROR: BIO read tls_read_plaintext error: error:140890B2:SSL routines:SSL3_GET_CLIENT_CERTIFICATE:no certificate returned Wed Dec 29 11:11:09 2010 91.9.117.250:37965 TLS Error: TLS object -> incoming plaintext read error Wed Dec 29 11:11:09 2010 91.9.117.250:37965 TLS Error: TLS handshake failed Wed Dec 29 11:11:09 2010 91.9.117.250:37965 Fatal TLS error (check_tls_errors_co), restarting Wed Dec 29 11:11:15 2010 Re-using SSL/TLS context Wed Dec 29 11:11:15 2010 LZO compression initialized Wed Dec 29 11:11:15 2010 WARNING: normally if you use --mssfix and/or --fragment, you should also set --tun-mtu 1500 (currently it is 1225) Wed Dec 29 11:11:15 2010 TCP connection established with 91.9.117.250:37192 Wed Dec 29 11:11:15 2010 TCPv4_SERVER link local: [undef] Wed Dec 29 11:11:15 2010 TCPv4_SERVER link remote: 91.9.117.250:37192 Wed Dec 29 11:11:17 2010 91.9.117.250:37192 VERIFY ERROR: depth=0, error=self signed certificate: /C=DE/ST=Bavaria/L=Nuremberg/O=Mathias_Ewald/CN=Mathias_Ewald/emailAddress=mathias@mathias-ewald.de Wed Dec 29 11:11:17 2010 91.9.117.250:37192 TLS_ERROR: BIO read tls_read_plaintext error: error:140890B2:SSL routines:SSL3_GET_CLIENT_CERTIFICATE:no certificate returned Wed Dec 29 11:11:17 2010 91.9.117.250:37192 TLS Error: TLS object -> incoming plaintext read error Wed Dec 29 11:11:17 2010 91.9.117.250:37192 TLS Error: TLS handshake failed Wed Dec 29 11:11:17 2010 91.9.117.250:37192 Fatal TLS error (check_tls_errors_co), restarting Code: Wed Dec 29 11:11:09 2010 91.9.117.250:37965 VERIFY ERROR: depth=0, error=self signed certificate: /C=DE/ST=Bavaria/L=Nuremberg/O=Mathias_Ewald/CN=Mathias_Ewald/emailAddress=mathias@mathias-ewald.de Wed Dec 29 11:11:09 2010 91.9.117.250:37965 TLS_ERROR: BIO read tls_read_plaintext error: error:140890B2:SSL routines:SSL3_GET_CLIENT_CERTIFICATE:no certificate returned Wed Dec 29 11:11:09 2010 91.9.117.250:37965 TLS Error: TLS object -> incoming plaintext read error Wed Dec 29 11:11:09 2010 91.9.117.250:37965 TLS Error: TLS handshake failed Wed Dec 29 11:11:09 2010 91.9.117.250:37965 Fatal TLS error (check_tls_errors_co), restarting ciao serow |
| | |
| | #2 (permalink) |
| Registriert seit: 22.04.08 ![]() Likes: 15 | Ich habs grad nur überflogen, aber soweit ich weiß und das sehe fehlt im Client das CA_cert.cer.. |
| | |
| HaBOT | - Anzeige - |
| |
| | #3 (permalink) |
| Senior Member Themenstarter Registriert seit: 26.03.06 ![]() Likes: 16 | Hi, bist du dir sicher? Eigentlich ist das CA_cert.cer doch der Public Key der Root CA. Die Root CA hat ein Server Zertifikat ausgestellt (openvpn.cer) von dem aus alle client Zertifikate ausgegeben werden. Dann sollte man doch das der Root CA garnicht brauchen oder? Grüße serow |
| | |
| | #4 (permalink) |
| Registriert seit: 30.01.10 ![]() ![]() Likes: 1 | Wie hast du die Zertifikate denn erstellt? Soweit ich mich erinnere hatte ich vor einiger Zeit auch mal Probleme mit OpenVPN und Zertifikaten. Ich habe mir dann mal in der OVPN-Doku den PKI-Teil zu Gemüte geführt und die mitgelieferten build-ca- und build-key-*-Scripte benutzt. Danach hat es afair bei mir geklappt. Warum verwendest du eigentlich ein TCP-Tunnel und das TUN-Device? Momentan würden deine Pakete auf IP-Ebene geroutet werden und die TCP-Verbindungen werden ineinander gekapselt. Aufgrund der nun doppelt vorhandenen Fehlerkorrekturfunktionalität von TCP kann das zu Delays und Resets führen. Wenn du also TCP als Tunnel-Protokoll verwendest, solltest du sicherstellen, dass ein Großteil des Traffics UDP-basierend ist. Zudem würde es dann auch mehr Sinn machen auf Ethernet-Routing umzusteigen, wenn du schon alles in TCP kapselst. Da ich aber mal davon ausgehe, dass du überwiegend TCP-Dienste (HTTP,FTP,SMTP,usw.) nutzt, wäre es schlauer einen UDP-Tunnel und IP-Routing (also TUN-Device) zu verwenden, damit die gestackten Protkolle sich nicht gegenseitig stören. Siehe auch hier: http://sites.inka.de/sites/bigred/devel/tcp-tcp.html
__________________ Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning. - Rick Cook - |
| | |
| | #5 (permalink) | |
| Registriert seit: 22.04.08 ![]() Likes: 15 | Zitat:
Du könntest den Verweis aus der Client-Config ändern in CA_cert.cer statt openvpn.cer und die Datei darein kopieren (und bei der server-split.conf openvpn.cer und openvpn.pem entfernen) und den Server nicht zusätzlich mit Public- und Privat-Key versorgen. Teste mal, so funktionierts bei mir zumindest. | |
| | |
| | #6 (permalink) |
| Senior Member Themenstarter Registriert seit: 26.03.06 ![]() Likes: 16 | Hi, ich versuche mal zurückzuverfolgen, welche Kommandos ich benutzt habe: Code: openssl genrsa -aes256 -out private/cakey.pem 2048 openssl req -new -x509 -days 3650 -key private/cakey.pem -out ca.pem -set_serial 1 touch index.txt && echo "01" > serial openssl req -new -newkey rsa:2048 -out openvpn_csr.pem -nodes -keyout private/openvpn_key.pem -days 365 openssl x509 -req -in openvpn_csr.pem -out certs/openvpn_cert.pem -CA ca.pem -CAkey private/cakey.pem -CAserial serial -days 365 openssl req -new -newkey rsa:2048 -out mathias.ewald_csr.pem -keyout private/mathias.ewald_key.pem -days 365 openssl x509 -req -in mathias.ewald_csr.pem -out mathias.ewald_cert.pem -CA ca.pem -CAkey private/cakey.pem -CAserial serial -days 365 openssl dhparam -out dh2048.pem 2048 Code: tls-client pull proto tcp-client port 1194 dev tun-nbgsplit remote ******************* resolv-retry infinite nobind ca ca.pem cert mathias.ewald_cert.pem key mathias.ewald_key.pem cipher AES-256-CBC auth SHA1 persist-key comp-lzo keepalive 10 30 persist-tun mute 20 tun-mtu 1225 script-security 2 up /etc/openvpn/update-resolv-conf down /etc/openvpn/update-resolv-conf Erstmal die Zertifikatsgeschichte ...ciao serow |
| | |
| | #7 (permalink) | |
| Registriert seit: 22.04.08 ![]() Likes: 15 | Zitat:
Ich meinte die CA_cert.cer, die auch in der server-split.conf benutzt wird. Das Serverzertifikat bleibt auch auf dem Server liegen, aber gehört nicht in den Client. Ein Beispiel meinerseits: Der Benutzer nick bekommt von mir die Dateien Code: nick_cert.pem nick_key.pem vpn-ca.pem Code: client float dev tap tun-mtu 1500 mssfix proto udp #Server: remote ip port #WICHTIG: Common Name d. Servercerts tls-remote vpnserver ca vpn-ca.pem cert nick_cert.pem key nick_key.pem auth SHA1 nobind comp-lzo persist-key persist-tun verb 3 Code: dh1024.pem servercert.pem serverkey.pem vpn-ca.pem Code: port portnummer proto udp mode server tls-server dev tap #Server IP im VPN ifconfig 10.0.0.1 255.255.255.0 #Client IPs aus folgendem Pool wählen ifconfig-pool 10.0.0.2 10.0.0.254 tun-mtu 1500 mssfix ca vpn-ca.pem cert servercert.pem key serverkey.pem client-to-client dh dh1024.pem ifconfig-pool-persist ipp.txt keepalive 10 120 auth SHA1 comp-lzo user nobody group nogroup persist-key persist-tun verb 3 Diese beiden Configs waren fast 1:1 (halt nur mit echter Serveradresse und echten Portangaben) bis vor kurzem im Einsatz und funktionieren wunderbar unter Linux und Windows (bei letzterem mit entsprechenden Einstellungen im TAP-Adapter). | |
| | |
![]() |
| - Anzeige - | |
| |
| Themen-Optionen | |
| Ansicht | |
| |