technoraver08
Goto Top

Probleme mit der Verbindung vom Openvpn Client zum Openvpn Server

Hallo,

ich habe mir gerade auf meinem Linux Server den Openvpn Dienst installiert.

Im Router habe ich den Port 1194 freigeschaltet. Über NAT. Interne IP vom Server 192.168.2.2

Leider funktioniert die Verbindung vom Client zum Server nicht.

Hier die Server Config Datei:

 
# Port Standardport 1194
port 1194

# Die Revoke Liste überprüfen
#crl-verify /etc/ssl/crl.pem

# TCP oder UDP?
proto udp
mode server
tls-server

dev tap

#Unsere Server IP
ifconfig 192.168.2.2 255.255.255.0
ifconfig-pool 192.168.2.2 192.168.2.9
#Server IP Adresse (Adressbereich. in dem Fall alles von 10.10.10.0)
#server 

#Wo liegen unsere Zertifikate
ca /etc/ssl/vpn-ca.pem
cert /etc/ssl/Zertifikate/server_cert.pem
key /etc/ssl/private/server_key.pem

#Diffie-Hellmann Parameter
dh /etc/ssl/dh2048.pem

#Die Selbe IP in der nächsten Sitzung vergeben
#ifconfig-pool-persist ipp.txt

#IPs in den IP Tables eintragen, DNS neu vergeben und über Den Server das Routing machen, dass man z.B. über den Tunnel auf ein
# lokales Intranet zuzugreifen
#push "route 10.0.0.0 255.0.0.0" 
#push "dhcp-option DNS 192.168.1.xyz" 
#push "redirect-gateway" 
#push "route 0.0.0.0 0.0.0.0" 

#Authentifizierungsmethode
auth SHA1

#Verschlüsselungs Algorithmus
cipher aes-256-cbc

#Benutze Komprimierung
comp-lzo

#Setzt die Rechte
user nobody
group nogroup

#Wird wegen user nobody/group nobody benötigt.
persist-key
persist-tun

#Logging 0, (Zum testen:5)
verb 7


Hier die Client Config Datei:

 

#Festlegen als was fungiert wird
tls-client
pull

# Methode festlegen tun oder tap
dev tap

# Protokoll auswaehlen udp oder tcp
proto udp

# IP/Name und Port des Servers
remote raver.ath.cx 1194

# Auflösen des Hostnames des Servers (wegen nicht permanent mit dem Internet verbundenen Rechnern)
resolv-retry infinite

# Localen Port festlegen oder freigeben
nobind


# Verbindung immer gleich halten
persist-key
persist-tun

#zu verwendende Zertifikate und Schlüssel
ca C:\\Programme\\Openvpn\\config\\vpn-ca.pem
cert C:\\Programme\\Openvpn\\config\\Client1_cert.pem
key C:\\Programme\\Openvpn\\config\\Client1_key.pem

# Verschlüsselung
cipher AES-256-CBC

# Komprimiernug
comp-lzo

# Authentifizierungsmethode
auth SHA1

# "Gesprächigkeit" des Tunnels 
verb 3

# Silence repeating messages
mute 20


Hier die Log Datei vom Client:

http://technoraver.com/network/Client_log.txt

Was muss ich ändern, damit die Verbindung zum Server läuft?

Vielen Dank schon mal im voraus für die Hilfe.

Content-ID: 131693

Url: https://administrator.de/contentid/131693

Ausgedruckt am: 22.11.2024 um 15:11 Uhr

xm-bit
xm-bit 15.12.2009 um 11:36:24 Uhr
Goto Top
Hi,

ich würd sagen, das du folgende Zeilen änderst:

#zu verwendende Zertifikate und Schlüssel

ca C:\Programme\Openvpn\config\vpn-ca.pem
cert C:\Programme\Openvpn\config\Client1_cert.pem
key C:\Programme\Openvpn\config\Client1_key.pem

Hab das mal mit meiner config verglichen.
Bei mir läuft es mit einem \

mfg
Sascha
technoraver08
technoraver08 15.12.2009 um 11:46:06 Uhr
Goto Top
hi Sascha,

vielen Dank für die Antwort.

Sonst ist die Config richtig?

Was bedeutet das?

Sun Dec 13 23:11:53 2009 TLS_ERROR: BIO read tls_read_plaintext error: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed
Sun Dec 13 23:11:53 2009 TLS Error: TLS object -> incoming plaintext read error
Sun Dec 13 23:11:53 2009 TLS Error: TLS handshake failed
aqui
aqui 15.12.2009, aktualisiert am 18.10.2012 um 18:40:21 Uhr
Goto Top
Das bedeutet das der Client sehr wohl auf den Server kommt (Was du oben schreibst stimmt also nicht !!) aber auch das diene Zertifikate nicht stimmen.

Probier es doch IMMER erst wasserdicht im lokalen Netzwerk aus !! Wenn der Client da eine Verbindung sauber hinbekommt klappt es auch immer remote !!
Hier kannst du nochmal nachlesen wie man korrekte Zertifikate generiert:
http://www.openvpn.net/index.php/open-source/documentation/howto.html#p ...

Dieses Tutorial sollte dir dann helfen es auch praktisch in die Tat umzusetzen:

OpenVPN Server installieren auf pfSense Firewall, Mikrotik. DD-WRT oder GL.inet Router
technoraver08
technoraver08 16.12.2009, aktualisiert am 18.10.2012 um 18:40:22 Uhr
Goto Top
Zitat von @aqui:
Das bedeutet das der Client sehr wohl auf den Server kommt (Was du oben schreibst stimmt also nicht !!) aber auch das diene
Zertifikate nicht stimmen.

Probier es doch IMMER erst wasserdicht im lokalen Netzwerk aus !! Wenn der Client da eine Verbindung sauber hinbekommt klappt es
auch immer remote !!
Hier kannst du nochmal nachlesen wie man korrekte Zertifikate generiert:
http://www.openvpn.net/index.php/open-source/documentation/howto.html#p ...

Dieses Tutorial sollte dir dann helfen es auch praktisch in die Tat umzusetzen:

OpenVPN Server installieren auf pfSense Firewall, Mikrotik. DD-WRT oder GL.inet Router

Hey, vielen Dank für die Infos und den Link...

Ich habe jetzt die Zertifikate erneut erstellt und bekomme jetzt auch eine Verbindung.

Wenn ich mich mit dem Server verbinde, bekommt der Client die IP Adresse vom Server. Ich kann dann nicht auf den Server zugreifen.

Hier die IP Config vom OpenVPN Server (server.ovpn):

#Unsere Server IP 
ifconfig 192.168.2.2 255.255.255.0 
ifconfig-pool 192.168.2.2 192.168.2.9 
#Server IP Adresse (Adressbereich. in dem Fall alles von 10.10.10.0) 

Bei mir im Netzwerk hat der Server die IP: 192.168.2.2.

Was muss ich ändern, damit ich eine andere IP Adresse bekomme?
aqui
aqui 16.12.2009, aktualisiert am 18.10.2012 um 18:40:22 Uhr
Goto Top
Rennt bei dir eine Firewall, iptables ?? Das ist in der Regel der böse Buhmann der den Zugriff verhindert...eigentlich auch logisch.
Customize also deine Firewall und das löst dein problem im Handumdrehen !!

Bedenke aber IMMER ein paar grundlegende Designregeln bei VPN:
VPNs einrichten mit PPTP

Von deinem Banal IP Netz 192.168.2.0 solltest du allso besser Abstand nehmen, denn das hat jeder Dummbatz Speetport Router und diverse andere auch ! Da wirst du also relativ schnell erhebliche Probleme bekommen.
Such dir also für dein lokales Netzwerk etwas mwhr exotischeres aus !!
Beispiel: Lokales Netzwerk: 172.30.202.0 /24 und das OpenVPN Servernetz: 10.30.202.0 /24
In der OpenVPN Server Konfig Datei sieht das dann so aus:

server 10.30.202.0 255.255.255.0
push "route 172.30.202.0 255.255.255.0"

Die lokale IP Server Adresse stellst du mit den normalen Netzwerk Tools um !!
technoraver08
technoraver08 16.12.2009, aktualisiert am 18.10.2012 um 18:40:22 Uhr
Goto Top
Zitat von @aqui:
Rennt bei dir eine Firewall, iptables ?? Das ist in der Regel der böse Buhmann der den Zugriff verhindert...eigentlich auch
logisch.
Customize also deine Firewall und das löst dein problem im Handumdrehen !!

Bedenke aber IMMER ein paar grundlegende Designregeln bei VPN:
VPNs einrichten mit PPTP

Von deinem Banal IP Netz 192.168.2.0 solltest du allso besser Abstand nehmen, denn das hat jeder Dummbatz Speetport Router und
diverse andere auch ! Da wirst du also relativ schnell erhebliche Probleme bekommen.
Such dir also für dein lokales Netzwerk etwas mwhr exotischeres aus !!
Beispiel: Lokales Netzwerk: 172.30.202.0 /24 und das OpenVPN Servernetz: 10.30.202.0 /24
In der OpenVPN Server Konfig Datei sieht das dann so aus:

server 10.30.202.0 255.255.255.0
push "route 172.30.202.0 255.255.255.0"

Die lokale IP Server Adresse stellst du mit den normalen Netzwerk Tools um !!



Das müsste ich nachgucken....


Dann ändere ich das lokale IP Netz.

server 10.30.202.0 255.255.255.0
push "route 172.30.202.0 255.255.255.0"

und der Server hat dann die IP: 10.30.202.0
Muss ich die Adresse noch direkt bei den Netwerkeinstellungen verändern?
aqui
aqui 16.12.2009 um 11:34:44 Uhr
Goto Top
Der OpenVPN Server hat intern die 10.30.202.0 /24 also das VPN Netz. Lokal am Ethernet hat der Server logischerweise die 172.30.202.0 /24.
Diese Adressierung ist kein Muss sondern nur ein Vorschlag. Du kannst dir auch andere IP Netze aussuchen nur eben das allerwelts 192.168.2.0 sollte es besser nicht sein, denn damit kommst du bei VPN früher oder später in probleme wie dir das o.a. Tutorial ja beschreibt !
technoraver08
technoraver08 16.12.2009 um 12:54:03 Uhr
Goto Top
Zitat von @aqui:
Der OpenVPN Server hat intern die 10.30.202.0 /24 also das VPN Netz. Lokal am Ethernet hat der Server logischerweise die
172.30.202.0 /24.
Diese Adressierung ist kein Muss sondern nur ein Vorschlag. Du kannst dir auch andere IP Netze aussuchen nur eben das allerwelts
192.168.2.0 sollte es besser nicht sein, denn damit kommst du bei VPN früher oder später in probleme wie dir das o.a.
Tutorial ja beschreibt !


ok...

Wenn ich jetzt eine Verbindung zum Server aufbauen will, bekomme ich immer wieder die Adresse vom VPN Server. Der Server hat zurzeit noch die 192.168.2.2... Nach der Verbindung bekommt der Client die 192.168.2.2 so kann ich nicht auf den Server zugreifen...... Der Client bekommt die Adresse ja vom VPN Server zugewiesen über DHCP....

Was müsste ich noch ändern, damit ich einen Zugriff bekomme auf den Server? ... z.b. auf SMB Protokoll....
aqui
aqui 16.12.2009 um 22:23:45 Uhr
Goto Top
Wenn deine internes Netz des OpenVPN Servers die 192.168.2.0 /24 ist und auch das lokale Netz des Servers die 192.168.2.0 /24 hat ist eine VPN Verbindung unmöglich !!
Ist ja auch logisch da du dann 2 mal das gleiche IP Netz hast. Sowas ist im IP Umfeld generell nicht möglich, da ein Routing damit unmöglich wird !

Du musst also mindestens die Serverkonfig in z.B.
server 10.30.202.0 255.255.255.0
push "route 192.168.2.0.0 255.255.255.0"

ändern wenn dein OpenVPN Server auf dem lokalen Ethernet LAN eine IP aus dem 192.168.2.0er Netz konfiguriert hat !

Damit bekommt der Client dann eine IP aus dem internen OpenVPN Servernetz 10.30.202.0 und gleichzeitig die Route ins 192.168.2.0er Netz.
Das kannst du auch sauber kontrollieren indem du nach erfolgter OpenVPN Einwahl einmal
ipconfig in der Eingabeaufforderung am Client eingibst.
Hier siehst du jetzt am TUN0 Interface (VPN Netz) eine IP aus dem 10.30.202.0er Netz. Und mit...
route print in der Eingabeaufforderung am Client siehst du die Routing Tabelle.
Dort muss eine Eintarg zum 192.168.2.0er Netz sein mit einem next Hop Gateway im 10.30.202.0er Netz !
Dann ist alles richtig und klappt. Dann kannst du auch problemlos das LAN IP Interface des Servers anpingen sofern die Firewall ICMP Pakete zulässt !!??
Also ggf. immer die Firewall auch anpassen das die das remote Netz durchlässt !!

Ohne das wirds niemals was.
technoraver08
technoraver08 16.12.2009 um 22:24:21 Uhr
Goto Top
hey...

mit dieser Änderung kann ich den Openvpn Dienst nicht mehr starten.

server 10.30.202.0 255.255.255.0
push "route 172.30.202.0 255.255.255.0

Wie müsste die Config Datei aussehen?

Was muss ich noch ändern? (z.b. im System)
aqui
aqui 16.12.2009 um 22:30:31 Uhr
Goto Top
push "route 172.30.202.0 255.255.255.0" (man achte auf die BEIDEN Ausrufezeichen !!)
macht nur Sinn wenn auch das LAN Interface des Servers eine IP Adresse aus diesem Netz hat.
Z.B. 172.30.202.254, Maske 255.255.255.0 !!

Vermutlich hast du aber wohl nur ein Ausrufezeichen in der Konfig datei vergessen, denn dann bricht der Server mit einem Konfig Eror ab.. face-sad
technoraver08
technoraver08 17.12.2009 um 10:13:33 Uhr
Goto Top
Zitat von @aqui:
push "route 172.30.202.0 255.255.255.0" (man achte auf die BEIDEN Ausrufezeichen !!)
macht nur Sinn wenn auch das LAN Interface des Servers eine IP Adresse aus diesem Netz hat.
Z.B. 172.30.202.254, Maske 255.255.255.0 !!

Vermutlich hast du aber wohl nur ein Ausrufezeichen in der Konfig datei vergessen, denn dann bricht der Server mit einem Konfig
Eror ab.. face-sad


Hey, vielen Dank für deine Hilfe... Das Problem war diese Zeile:

ifconfig-pool 192.168.2.2 192.168.2.9


Ist jetzt eigentlich auch möglich über VPN andere Geräte zu verwenden, also nicht nur den VPN Server?
Muss man da noch was in der Config Datei verändern?
aqui
aqui 17.12.2009 um 10:50:33 Uhr
Goto Top
Na klar ! Das ist doch der Sinn deines VPNs, oder ??
Du hast so über das VPN Zugriff auf das gesamte remote Netzwerk. Mit push "route 192.168.2.0 255.255.255.0" wird dir ja das gesamte remote Netz auf den Client geroutet und du hast da transparenten Zugriff wie als ob du lokal im 192.168.2.0er netz bist.
Wie gesagt der tiefere Sinn eines VPNs !!

Aufpassen musst du nur wenn Endgeräte die du über das VPN ansprechen willst den DSL Router als Gateway haben und wenn zusätzlich dann dein OpenVPN Server im Internen Netz.
Hier musst du dann ggf. noch eine statische Route auf dem DSL Router angeben zum internen OpenVPN Netz via lokaler OpenVPN Server IP.
Das hängt aber von deinem Netzdesign ab zu dem du ja leider nichts mitteilst face-sad
technoraver08
technoraver08 19.12.2009 um 20:30:00 Uhr
Goto Top
Hey,

ich kann nur meinen Server über VPN erreichen.

Was muss ich machen, wenn ich einen weiteren Rechner erreichen möchte?

Hier die Server.ovpn Config Datei:

#Unsere Server IP
ifconfig 192.168.2.2 255.255.255.0
#ifconfig-pool 10.68.1.5 10.68.1.9
#Server IP Adresse (Adressbereich. in dem Fall alles von 10.10.10.0)
#server
server 10.68.1.0 255.255.255.0
push "route 192.168.2.0 255.255.255.0"

Der Rechner hat die IP: 192.168.2.8

Kann ich das auch in der Config Datei festlegen?

Im Router kann man das nichts festlegen.....
aqui
aqui 22.12.2009, aktualisiert am 18.10.2012 um 18:40:25 Uhr
Goto Top
Ja, über die Server Config Datei kannst du eine IP Adresse auf dem OpenVPN Client erzwingen wenn du willst. Die OpenVPN Doku beschreibt das ganz gut.
Hier ist auch entsprechnder Thread der es ebenfalls genau beschreibt:
OpenVPN unter Windows begrenzung anhand des Subnetzes 255.255.255.252 ?

Deine Server Konfig ist eigentlich ganz OK und auch richtig.
Problematisch ist das lokale Allerwelts LAN mit der 192.168.2.0er IP Adresse was die halbe Welt benutzt. Da wirst du relativ schnell Probleme bekommen. Warum... lies dir bitte das hier durch:
VPNs einrichten mit PPTP

Vermutlich ist das auch dein Problem !

Poste bitte mal ein ipconfig des Clients und vor allen Dingen ein route print des Clients bei aktiver VPN Session !!
Das route print sollte in jedem Falle eine Route ins 192.168.2.0er netz via der 10.68.1er Server IP anzeigen !!!

Und....änder das dumme 192.168.2.er Netzwerk lokal auf etwas VPN freundliches (siehe Tutorial oben ) !!