PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : OpenVPN Server konfigurieren



Franzmann
15.11.07, 15:21
Hey @ all,
ich hab SLES 10.2 installiert und wollte nun OpenVPN installieren.
Hab das ganze exakt nach dem Beispiel gemacht:
http://www.linux-professionell.net/praxis/article20060927040.aspx
Wenn ich jetzt den Windows Client starte um mich mit dem Linux Server zu verbinden, kommen nachfolgende Log- Einträge und der Client connectet sich nicht:


Thu Nov 15 15:38:12 2007 NOTE: --user option is not implemented on Windows
Thu Nov 15 15:38:12 2007 NOTE: --group option is not implemented on Windows
Thu Nov 15 15:38:12 2007 OpenVPN 2.0.9 Win32-MinGW [SSL] [LZO] built on Oct 1 2006
Thu Nov 15 15:38:12 2007 IMPORTANT: OpenVPN's default port number is now 1194, based on an official port number assignment by IANA. OpenVPN 2.0-beta16 and earlier used 5000 as the default port.
Thu Nov 15 15:38:12 2007 WARNING: No server certificate verification method has been enabled. See http://openvpn.net/howto.html#mitm for more info.
Thu Nov 15 15:38:12 2007 LZO compression initialized
Thu Nov 15 15:38:12 2007 Control Channel MTU parms [ L:1542 D:138 EF:38 EB:0 ET:0 EL:0 ]
Thu Nov 15 15:38:12 2007 Data Channel MTU parms [ L:1542 D:1450 EF:42 EB:135 ET:0 EL:0 AF:3/1 ]
Thu Nov 15 15:38:12 2007 Local Options hash (VER=V4): '41690919'
Thu Nov 15 15:38:12 2007 Expected Remote Options hash (VER=V4): '530fdded'
Thu Nov 15 15:38:12 2007 UDPv4 link local: [undef]
Thu Nov 15 15:38:12 2007 UDPv4 link remote: 84.135.192.147:1194
Thu Nov 15 15:39:11 2007 TLS Error: TLS key negotiation failed to occur within 60 seconds (check your network connectivity)
Thu Nov 15 15:39:11 2007 TLS Error: TLS handshake failed
Thu Nov 15 15:39:11 2007 TCP/UDP: Closing socket

Firewall ist aus. Also wo kann der Fehler liegen ?

honkstar
15.11.07, 18:39
Steht doch da:

Thu Nov 15 15:39:11 2007 TLS Error: TLS key negotiation failed to occur within 60 seconds (check your network connectivity)

Kannst du die Gegenstelle überhaupt erreichen (per ping)?
Hast du die tls-auth Direktive auf dem Server aktiviert und auf dem Client nicht?

Gruß
Daniel

Franzmann
16.11.07, 08:22
Steht doch da:
Kannst du die Gegenstelle überhaupt erreichen (per ping)?
Hast du die tls-auth Direktive auf dem Server aktiviert und auf dem Client nicht?

Ja ich kann die Gegestelle per Ping erreichen.
Wo aktiviere ich die tls-auth Direktive ? In der server.conf oder client.conf ?
Hab mich ja strikt an die Vorgabe des Tutorials gehalten und da steht nichts von einer tls-auth Direktiven ?!?!

honkstar
16.11.07, 09:53
Poste doch mal bitte deine Server.conf und deine Client conf.
Sonst ist das son Stochern im Nebel...

Gruß
Daniel

Franzmann
16.11.07, 11:18
server.conf


# OpenVPN 2.0 server.conf
# Explizites Setzten des Server-Ports
port 1194
# UDP als Transportprotokoll
proto udp
# Routing-Modus mit /dev/tun
dev tun
# Name und Pfad der Zertifikate/Schlüssel-Dateien
ca /etc/openvpn/easy-rsa/keys/ca.crt
cert /etc/openvpn/easy-rsa/keys/srv150.crt
key /etc/openvpn/easy-rsa/keys/srv150.key
# Schlüssellänge des Diffie-Hellman: 1024
dh /etc/openvpn/easy-rsa/keys/dh1024.pem
# VPN-Subnetz für Clients; Server benutzt 10.8.0.1
server 10.8.0.0 255.255.255.0
# Zuordnung von Client-IP-Adressen zu VPN-Adressen in ipp.txt
führen. Wichtig für Re-Connects.
ifconfig-pool-persist ipp.txt
# In ccd liegen Client-spezifische Konfigurationen
client-config-dir ccd
# Route zum Subnetz hinter dem Client setzen für Multi-Client-Zugriff
route 192.168.4.0 255.255.255.0
# Ein Ping ähnlicher Mechanismus prüft alle 10 Sekunden, ob die
Gegenseite noch da ist. Nach 120 Sekunden gilt die Verbindung als
getrennt.
keepalive 10 120
# Clients im selben Subnet können auch andere Clients sehen
client-to-client
# Kompression benutzen
comp-lzo
# Anonyme Benutzer/Gruppe nobody mit UID/GID 65534
user nobody
group nobody
# Bei unerwartetem Verlust der Verbindung: Schlüssel behalten und
Interface nicht herunterfahren.
persist-key
persist-tun
# Protokolliere alle momentanen Verbindungen
status openvpn-status.log
# Meldungen an Syslog mit Verbose-Level 3
verb 3


client.conf


# OpenVPN 2.0 client.conf
# Die Maschine ist Client
client
# UDP als Transportprotokoll
proto udp
# Routing-Modus mit /dev/tun
dev tun
# IP-Adresse oder FQDN des OpenVPN-Servers sowie Port 1194
remote meingateway.dyndns.net 1194
# Unendlich versuchen, den Hostnamen des Servers zu ermitteln.
# Hilfreich bei nur temporär mit dem Internet verbundenen Rechnern.
resolv-retry infinite
# Keine Bindung an lokale Portnummer
nobind
# Anonyme Benutzer/Gruppe nobody mit UID/GID 65534
user nobody
group nobody
# Bei unerwartetem Verlust der Verbindung: Schlüssel behalten
und Interface nicht herunterfahren.
persist-key
persist-tun
# Name und Pfad der Zertifikate/Schlüssel-Dateien
ca /etc/openvpn/easy-rsa/keys/ca.crt
cert /etc/openvpn/easy-rsa/keys/wks99.crt
key /etc/openvpn/easy-rsa/keys/wks99.key
# Kompression benutzen
comp-lzo
# Meldungen an Syslog mit Verbose-Level 3
verb 3

honkstar
16.11.07, 11:26
Ich vermute mal, dass die Zeielumbrüche beim Hereinkopieren enstanden sind, oder steht wirklich

# Ein Ping ähnlicher Mechanismus prüft alle 10 Sekunden, ob die
Gegenseite noch da ist. Nach 120 Sekunden gilt die Verbindung als
getrennt.
keepalive 10 120 in 3 Zeilen da?

ansonsten sieht es nicht so falsch aus.

läuft der Server richtig?

Gruß
Daniel

Franzmann
16.11.07, 11:43
Ich vermute mal, dass die Zeielumbrüche beim Hereinkopieren enstanden sind, oder steht wirklich
in 3 Zeilen da?

ansonsten sieht es nicht so falsch aus.

läuft der Server richtig?

Gruß
Daniel
Ja die Fehler waren nur beim reinkopieren.
Er läuft problemlos mit dem Befehl: ./openvpn --config server.conf

honkstar
16.11.07, 14:30
Dann würde ich im Moment auf kaputte Zertifikate tippen.
Erstell dir doch mal mit

. ./vars
./build-key myClient
neue Zertifikate und spiel sie auf den Client ein.
Schau dann mal, was er dazu meint.

Gruß
Daniel

Franzmann
19.11.07, 07:07
Dann würde ich im Moment auf kaputte Zertifikate tippen.
Erstell dir doch mal mit

. ./vars
./build-key myClient
neue Zertifikate und spiel sie auf den Client ein.
Schau dann mal, was er dazu meint.

Gruß
Daniel
Hab ich ja auch schon gemacht.
Kein Unterschied :(

yuhu
19.11.07, 20:17
# Zuordnung von Client-IP-Adressen zu VPN-Adressen in ipp.txt
führen. Wichtig für Re-Connects.
ifconfig-pool-persist ipp.txt
# In ccd liegen Client-spezifische Konfigurationen
client-config-dir ccd

das file ipp.txt gibt es wirklich bei dir im server.conf-verzeichnis?

bzw. wurde das verzeichnis ccd erstellt? im verzeichnis müsste es eine file mit dem hostname des clients geben. darin müsste sich ein iroute befehl befinden mit dem client netz-segment

Franzmann
20.11.07, 09:27
das file ipp.txt gibt es wirklich bei dir im server.conf-verzeichnis?

bzw. wurde das verzeichnis ccd erstellt? im verzeichnis müsste es eine file mit dem hostname des clients geben. darin müsste sich ein iroute befehl befinden mit dem client netz-segment
Ja die ipp.txt gibt es.
das ccd Verzeichnis habe ich jetzt mal auskommentiert.
Jetzt aber nochmal zum Verständnis:
die Client.conf kopiere ich ins config Verzeichnis auf dem Windows Client und benenne die Datei um mit der Endung .ovpn ?
Die Client Zertifikate erstelle ich vorher aufm dem Server und kopiere sie dann auch rüber auf den Client oder ?
Wie erstelle ich die ta.key ?

yuhu
20.11.07, 21:26
sieh unter "Creating the SSL keys and certificates"

http://gentoo-wiki.com/HOWTO_Road_Warriors_with_OpenVPN

Franzmann
22.11.07, 06:14
Neue Zertifikate erstellt aber gleiches Ergebnis...
Er connectet einfach nicht..


Thu Nov 22 07:12:20 2007 OpenVPN 2.0.9 Win32-MinGW [SSL] [LZO] built on Oct 1 2006
Thu Nov 22 07:12:20 2007 WARNING: No server certificate verification method has been enabled. See http://openvpn.net/howto.html#mitm for more info.
Thu Nov 22 07:12:20 2007 Control Channel Authentication: using 'C:\Programme\OpenVPN\config\ta.key' as a OpenVPN static key file
Thu Nov 22 07:12:20 2007 Outgoing Control Channel Authentication: Using 160 bit message hash 'SHA1' for HMAC authentication
Thu Nov 22 07:12:20 2007 Incoming Control Channel Authentication: Using 160 bit message hash 'SHA1' for HMAC authentication
Thu Nov 22 07:12:20 2007 LZO compression initialized
Thu Nov 22 07:12:20 2007 Control Channel MTU parms [ L:1574 D:166 EF:66 EB:0 ET:0 EL:0 ]
Thu Nov 22 07:12:20 2007 Data Channel MTU parms [ L:1574 D:1450 EF:42 EB:135 ET:32 EL:0 AF:3/1 ]
Thu Nov 22 07:12:20 2007 Local Options hash (VER=V4): '13a273ba'
Thu Nov 22 07:12:20 2007 Expected Remote Options hash (VER=V4): '360696c5'
Thu Nov 22 07:12:20 2007 UDPv4 link local (bound): [undef]:1194
Thu Nov 22 07:12:20 2007 UDPv4 link remote: MEINEIP:1194
Thu Nov 22 07:12:21 2007 TLS: Initial packet from MEINEIP:1194, sid=ef1e051a 46eb49b4
Thu Nov 22 07:12:21 2007 VERIFY ERROR: depth=1, error=self signed certificate in certificate chain: /C=DE/ST=NRW/L=SHS/O=interselect/CN=interselect-ca/emailAddress=vpnca@mydomain.de
Thu Nov 22 07:12:21 2007 TLS_ERROR: BIO read tls_read_plaintext error: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed
Thu Nov 22 07:12:21 2007 TLS Error: TLS object -> incoming plaintext read error
Thu Nov 22 07:12:21 2007 TLS Error: TLS handshake failed
Thu Nov 22 07:12:21 2007 TCP/UDP: Closing socket
Thu Nov 22 07:12:21 2007 SIGUSR1[soft,tls-error] received, process restarting
Thu Nov 22 07:12:21 2007 Restart pause, 2 second(s)