Box2Box VPN mit OpenVPN ?

BuchIT schrieb:
Danke nochmals für die Infos.

Um meine "Traum Konfiguration" zu vervollständigen hier ein paar abschließende Fragen:

  • Kann auf der Client Box gleichzeitig ein Server laufen?
    Auf dem gleichen oder einem anderen Port ?
  • Wie könnte ich die Netzwerke "Home" und "HomeOffice mit VPN" trennen?
    z.B. nur IP 192.168.179.2-100 hat zugriff über VPN auf 192.168.178.x
  • Wie viele Clientverbindungen kann der OpenVPN Server managen mit meiner Konfiguration, oder müsste man dafür ändern, und was ?
  • Wie müsste eine Config für einen OpenVPN Windows Client aussehen ?
So, viel Stoff für ein bißchen VPN :)
Ich hoffe ihr könnt helfen.

Gruß Mike

Hallo Mike,

zu 1:
warum willst Du den auf dem Client einen Server laufen lassen. Wenn Du Dich an Deinem jetzigen Server connectierst, kommst Du ja über die Tunnel auch an Deinen Client.
zu 2: Das optimale und flexible wäre sicher iptables, mußt dann aber wieder Deine FW modden (Kennst Dich aber ja aus;) ).
Einfache Regeln lassen sich sicher auch über die route und push route Befehle in der config umsetzen.
zu 3:
die Anzahl der Clientverbindungen würde mich auch interessieren, vielleicht hat ja jemand hier im Forum schon Erfahrung damit. Ich würde aber bei mehreren Clients auf jeden Fall auf Zertifikate umstellen, sonst bekommst Du die Zugriffskontrolle nicht mehr in den Griff, zumal der preshared Key ja dann auf jedem (unsicheren) Client-PC liegt (oder willst Du nur FB's andocken?) Deshalb habe ich mich bei meiner FB-openvpn Lösung für zertifikatbasierte Authorisierung entschieden. Da ich Samstag etwas Zeit habe, kann ich ja mal ein Kochbuch dafür erstellen.
zu 4:
Du kannst die Config Deines Client 1 zu 1 auch als Config für Dein Win-openvpn verwenden.

Ich hoffe, das bringt Dich zunächst weiter.

Im übrigen habe ich noch eine Ergänzung für Deine Client-Conf, die aber nur notwendig ist, wenn Du Dich per dyndns connectierst.
Normalerweise löst openvpn den Namen "remote irgendwas.dyndns.org (oder ein anderer dyndns-Dienst)" beim Start auf und hält sich dann nur die IP-Adresse. Wenn Dein Server dann eine neue IP-Adresse bekommt, bei DSL i.d.R. einmal pro Tag, läuft der Client ins Leere, da er ja immer noch die alte IP-Adresse hat.
Lösung: Du mußt Deine Client-Conf ergänzen um:
ping 15
ping-restart 300 # 5 minutes
resolv-retry 300 # 5 minutes

Der Parameter keepalive kann dann natürlich auskommentiert werden.


Viele Grüße
interhubi

P.S.: Dein HowTo ist wirklich prima!
 
Hi interhubi,


Zu Punkt 1)
Ich will auf dem Client zusätzlich einen Server laufen lassen aus folgendem Grund.
Ich will von extern in mein Netz rein, und auf alle Clients Zugriff haben,
dein Tipp widerspricht sich dann Punkt 2.
Firma VPN und "Privat VPN" sollte getrennt sein.

Zu Punkt 2)
könntest du zu Punkt 2 vielleicht mal ein simples Beispiel machen ?
Dann könnte ich nämlich die "privat Rechner" hier im HomeOffice Netzwerk
aus der VPN raus nehmen.

Zu 3) Auf das Kochbuch bin ich gespannt

Zu 4) Danke

HOWTOW und mein Client ist mit der Ergänzung
ping 15
ping-restart 300 # 5 minutes
resolv-retry 300 # 5 minutes
jetzt ausgestattet.

Ich hatte heute morgen nämlich genau dieses Problem :)

Gruß Mike
 
BuchIT schrieb:
Hi interhubi,


Zu Punkt 1)
Ich will auf dem Client zusätzlich einen Server laufen lassen aus folgendem Grund.
Ich will von extern in mein Netz rein, und auf alle Clients Zugriff haben,
dein Tipp widerspricht sich dann Punkt 2.
Firma VPN und "Privat VPN" sollte getrennt sein.

Zu Punkt 2)
könntest du zu Punkt 2 vielleicht mal ein simples Beispiel machen ?
Dann könnte ich nämlich die "privat Rechner" hier im HomeOffice Netzwerk
aus der VPN raus nehmen.

Zu 3) Auf das Kochbuch bin ich gespannt

Zu 4) Danke

HOWTOW und mein Client ist mit der Ergänzung
ping 15
ping-restart 300 # 5 minutes
resolv-retry 300 # 5 minutes
jetzt ausgestattet.

Ich hatte heute morgen nämlich genau dieses Problem :)

Gruß Mike

Hi Mike,
Du kannst normalerweise Routen auch auf einzelne IP-Adressen anwenden, statt auf Netzwerke. Ich habe hier leider keinen Zugriff auf meine FB, aber versuche mal folgendes:
In deiner "server"-conf steht:
route 192.168.179.0 255.255.255.0
Kommentiere die Zeile mal aus und ersetze sie durch (z.B.):
route 192.168.179.51 255.255.255.255
Damit werden nur Pakete von 192.168.179.51 an den Tunnel weitergeleitet.
Da Du mehrere route-Einträge machen kannst, sind alle PC's einzeln steuerbar.
Aber: Das ist keine Sicherheit. Mit etwas Netzwerkkenntnissen kannst Du auf dem PC diese Einstellungen umgehen, in dem Du eine zusätzliche Route zum Tunnel definierst, Laien sollten es aber nicht handhaben können. Wen Du sicherstellen willst, daß niemand(auch die mit schlechten Gedanken :mad: ) über den Tunnel funken, bleibt dir nur die Wahl iptables.

Aber wie gesagt, ich habe es nicht ausprobiert!

Gruß
interhubi
 
interhubi schrieb:
Hi Mike,
Du kannst normalerweise Routen auch auf einzelne IP-Adressen anwenden, statt auf Netzwerke. Ich habe hier leider keinen Zugriff auf meine FB, aber versuche mal folgendes:
In deiner "server"-conf steht:
route 192.168.179.0 255.255.255.0
Kommentiere die Zeile mal aus und ersetze sie durch (z.B.):
route 192.168.179.51 255.255.255.255
Damit werden nur Pakete von 192.168.179.51 an den Tunnel weitergeleitet.
Da Du mehrere route-Einträge machen kannst, sind alle PC's einzeln steuerbar.
Aber: Das ist keine Sicherheit. Mit etwas Netzwerkkenntnissen kannst Du auf dem PC diese Einstellungen umgehen, in dem Du eine zusätzliche Route zum Tunnel definierst, Laien sollten es aber nicht handhaben können. Wen Du sicherstellen willst, daß niemand(auch die mit schlechten Gedanken :mad: ) über den Tunnel funken, bleibt dir nur die Wahl iptables.

Aber wie gesagt, ich habe es nicht ausprobiert!

Gruß
interhubi
Hi,

ok ich versuche das mal.
Das löst aber nur zum Teil mein Problem.
In der Client Konf. wollte ich eigendlich sowas sagen:
"Nur die IP's 192.168.179.1 bis 192.168.179.32 können die route
nach 192.168.178.0 (zur Firma) nutzen.
Auf Clientseite soll nicht jede IP im VPN stehen.

Der Laptop meiner Frau z.B. brauch keinen Zugriff auf das VPN zur Firma.
Umgekehrt muss es entsprechend gleich sein, aber das kann ich ja lösen wie du beschrieben hast.

Also je öfter ich mir deines durchlese umso mehr glaub ich das ich das nicht verstehe.
Warum muss ich die route am Server setzten damit im Client Netz nicht alle aufs Firmennetz können ??
 
BuchIT schrieb:
Hi,

ok ich versuche das mal.
Das löst aber nur zum Teil mein Problem.
In der Client Konf. wollte ich eigendlich sowas sagen:
"Nur die IP's 192.168.179.1 bis 192.168.179.32 können die route
nach 192.168.178.0 (zur Firma) nutzen.
Auf Clientseite soll nicht jede IP im VPN stehen.

Der Laptop meiner Frau z.B. brauch keinen Zugriff auf das VPN zur Firma.
Umgekehrt muss es entsprechend gleich sein, aber das kann ich ja lösen wie du beschrieben hast.

Also je öfter ich mir deines durchlese umso mehr glaub ich das ich das nicht verstehe.
Warum muss ich die route am Server setzten damit im Client Netz nicht alle aufs Firmennetz können ??

Ich habe wohl nicht verstanden, was bei dir die Server-Seite und was die Client-Seite ist. sorry!
Du kannst natürlich auch die Maske geschickt nutzen, um einzelne Netzwerkbereiche freizugeben.
route 192.168.179.0 255.255.255.127
läßt nur die IP-Adressen von 1-127 zu!

Gruß
interhubi
 
interhubi schrieb:
route 192.168.179.0 255.255.255.127
läßt nur die IP-Adressen von 1-127 zu!
Die Subnetzmaske muss 255.255.255.128 sein, 255.255.255.127 ist eine ungültige Subnetzmaske!

Mfg,
danisahne
 
danisahne schrieb:
Die Subnetzmaske muss 255.255.255.128 sein, 255.255.255.127 ist eine ungültige Subnetzmaske!

Mfg,
danisahne

Jepp, war ein Gedankenfehler!

Muß dann natürlich auch heißen:
läßt nur die IP-Adressen von 128-255 zu!
 
Zuletzt bearbeitet:
Ok, ich versuche das mal auf den Punkt zu bringen:

Server FBF (Firma) IP: 192.168.178.1
Client FBF (Home) IP: 192.168.179.1

in der Server.conf schreib ich folgende route:
route 192.168.179.0 255.255.255.128
push "route 192.168.179.0 255.255.255.128"

In der Client.conf bleibt die route wie folgt:
route 192.168.178.0 255.255.255.128
push "route 192.168.178.0 255.255.255.0"

Effekt1 :
Alle Clients mit der IP 192.168.179.1-127 haben Zugriff über auf das Server Netz (192.168.178.0).
Alle Clients IP > 192.168.179.128 haben keinen Zugriff aus Server Netz.
Bis dahin korrekt ?

Effekt 2:
Alle IPs auf der Serverseite haben Zugriff auf der IPs 192.168.178.1-127
alles drüber kann nicht (ohne Umwege) angesprochen werden.
Auch korrekt ?

Wenn dem so ist, wäre mein Problem ja schon gelöst.
Dann nehme ich die "privaten" IP's in den Bereich > 192.168.179.128
 
Zuletzt bearbeitet:
BuchIT schrieb:
Ok, ich versuche das mal auf den Punkt zu bringen:

Server FBF (Firma) IP: 192.168.178.1
Client FBF (Home) IP: 192.168.179.1

in der Server.conf schreib ich folgende route:
route 192.168.179.0 255.255.255.128
push "route 192.168.179.0 255.255.255.128"

In der Client.conf bleibt die route wie folgt:
route 192.168.178.0 255.255.255.128
push "route 192.168.178.0 255.255.255.0"

Effekt1 :
Alle Clients mit der IP 192.168.179.1-127 haben Zugriff über auf das Server Netz (192.168.178.0).
Alle Clients IP > 192.168.179.128 haben keinen Zugriff aus Server Netz.
Bis dahin korrekt ?

Effekt 2:
Alle IPs auf der Serverseite haben Zugriff auf der IPs 192.168.178.1-127
alles drüber kann nicht (ohne Umwege) angesprochen werden.
Auch korrekt ?

Wenn dem so ist, wäre mein Problem ja schon gelöst.
Dann nehme ich die "privaten" IP's in den Bereich > 192.168.179.128

Hi,

es müßte meiner Meinung nach so lauten:

Effekt1 :
Alle Clients mit der IP 192.168.179.128-255 haben Zugriff über auf das Server Netz (192.168.178.0).
Alle Clients IP < 192.168.179.128 haben keinen Zugriff aus Server Netz.

Effekt 2:
Alle IPs auf der Serverseite haben Zugriff auf der IPs 192.168.178.128-255
alles darunter kann nicht (ohne Umwege) angesprochen werden.

Das puschen der Routen ist bei deiner P2P-Konfiguration nicht nötig, da ja die Routen an der Gegenstelle in der dortigen conf vermerkt sind. Ansonsten muß es lauten:
Für die Server-Conf
push "route 192.168.178.0 255.255.255.128"

und für die Client-conf
push "route 192.168.179.0 255.255.255.128"

Viele Grüße
interhubi
 
interhubi schrieb:
Effekt1 :
Alle Clients mit der IP 192.168.179.128-255 haben Zugriff über auf das Server Netz (192.168.178.0).
Alle Clients IP < 192.168.179.128 haben keinen Zugriff aus Server Netz.
soweit ok.

interhubi schrieb:
Effekt 2:
Alle IPs auf der Serverseite haben Zugriff auf der IPs 192.168.178.128-255
alles darunter kann nicht (ohne Umwege) angesprochen werden.
ich denke hier meinst zu ... Zugriff auf die IP's 192.168.179.128-255


interhubi schrieb:
Das puschen der Routen ist bei deiner P2P-Konfiguration nicht nötig, da ja die Routen an der Gegenstelle in der dortigen conf vermerkt sind. Ansonsten muß es lauten:
Für die Server-Conf
push "route 192.168.178.0 255.255.255.128"

und für die Client-conf
push "route 192.168.179.0 255.255.255.128"
Das verstehe ich jetzt wieder nicht.

Muss es nicht so aussehen ?
Server (192.168.178.1)
Code:
route 192.168.179.0 255.255.255.128
push "route 192.168.179.0 255.255.255.128"
Client (192.168.179.1)
Code:
route 192.168.178.0 255.255.255.0
push "route 192.168.178.0 255.255.255.0"

Oder verstehe ich den route Befehl einfach nicht.
 
BuchIT schrieb:
soweit ok.

ich denke hier meinst zu ... Zugriff auf die IP's 192.168.179.128-255



Das verstehe ich jetzt wieder nicht.

Muss es nicht so aussehen ?
Server (192.168.178.1)
Code:
route 192.168.179.0 255.255.255.128
push "route 192.168.179.0 255.255.255.128"
Client (192.168.179.1)
Code:
route 192.168.178.0 255.255.255.0
push "route 192.168.178.0 255.255.255.0"

Oder verstehe ich den route Befehl einfach nicht.


Hi,
Asche auf mein Haupt,
Zugriff auf die IP's 192.168.179.128-255
ist natürlich richtig! Das kommt davon, mit Cut&Paste zu arbeiten.

Aber:
Mit
route 192.168.179.0 255.255.255.128
in der Server-openvpn-conf legst Du eine Route auf
dem Server fest und mit
push "route 192.168.178.0 255.255.255.128"
in der Server-openvpn-conf legst Du eine Route auf
dem Client fest, deshalb das "push".

Gruß
interhubi
 
Hi,

ok, also weil ich jetzt immer noch vermute das ich mit diesem route
nicht alle IP's auf Server Seite zugreifen kann, ändere ich die IP's mal so wie sie jetzt gerade aktuell laufen

Server IP: 172.16.0.250
Client IP: 192.168.179.1

in welcher conf (Client/Server) muss ich jetzt welche route Einträge machen
um folgenes zu erreichen:

Client IP's > 192.168.179.128 haben Zugriff auf 172.16.0.0 bis 172.16.0.255
alle 256 Server IP's haben Zugriff auf Client IP's > 192.168.179.128-255


client.conf
route 172.16.0.0 255.255.255.128
push "route 192.168.179.128 255.255.255.0"

server.conf
route 192.168.179.128 255.255.255.0
push "route 172.16.0.0 255.255.255.128"

Nur zum Verständis versuche ich mal den route Befehl zu erklären wie ich ihn jetzt verstehe:

route alles was an den IP Bereich AAA.BBB.CCC.MASK geht weiter.
route alles was an den fremden IP Bereich 255.255.255.MASK geht.

Laut dem was ich oben getippt habe würde das dann folgendes bedeuten:

Also am Server:
route alles aus 17.16.0.[0-255] nach 192.168.179.[128-255]

Am Client:
route alles aus 192.68.179.[128-255] nach 172.16.0.[0-255]

Durch den push würden die beiden entgegengesetzten routen dann
einfach nur nochmal ausgetauscht! (?)

Jetzt schreib doch bitte mal einer dass das so richtig ist und ich es entlich verstanden habe ... :(
 
Zuletzt bearbeitet:
Durch den push würden die beiden entgegengesetzten routen dann
einfach nur nochmal ausgetauscht! (?)

Ja, genau, deshalb kannst Du sie ja bei deiner Conf eigentlich weglassen!

client.conf
route 172.16.0.0 255.255.255.128

Da Deine Clients zu allen IP's auf dem Server Zugang haben sollen muß es lauten:
route 172.16.0.0 255.255.255.0

server.conf
route 192.168.179.128 255.255.255.0

Da nur Deine Clients >= 128 connectieren dürfen muß es heißen:
route 192.168.179.0 255.255.255.128

Entsprechend müßten die push-Befehle umgesetzt werden!

Gruß
 
Zuletzt bearbeitet:
Mal noch ne andere Idee:

Ich bin jetzt auf der Client Seite:

ich trenne die LAN's der FBF:

LAN A: 192.168.179.0 (über VPN)
LAN B: 192.168.180.0
WLAN: 192.168.181.0
USB: 192.168.182.0

Dann dürfte ja nur LAN A im VPN stehen (mit normalem routing).
Jetzt gehen die Probleme aber wieder los ...
Was trage ich dann in die Routing Tabelle der FBF ein (im WebInterface) damit die "internen" LAN's sich finden.

Würde das die Sache erleichtern ?
 
Hi,

also mittlerweile nervt mich die ganze routing Sache richtig an.
Ich denke ich werde es so lösen das ich an der Client Box die
LAN's trenne.

Kann komm ich zwar von LAN B (nicht VPN) nicht mehr auf meine
WLAN Stationen, aber dafür wird sich auch ein Weg finden lassen.
(evtl. Subnetmask auf CLASS B setzten? 255.255.0.0)

Aber dann hab ich privaten Kisten aus dem VPN raus.
 
Hiho,

Ich bin auch langsam am verzweifeln. Zuerst mal meine Configs:
Server:
Code:
# Grundsaetzliches
port 6667
proto tcp-server
dev tap
# Server-Einstellungen
mode server
tls-server
server 10.1.1.0 255.255.255.0
client-to-client
route 192.168.1.2 255.255.255.0
push "route 192.168.1.0 255.255.255.0"
# Authentifizierung und Verschluesselung
ca /var/tmp/ca.crt
cert /var/tmp/fritzbox.crt
key /var/tmp/fritzbox.key
dh /var/tmp/dh1024.pem
auth SHA1
cipher AES-256-CBC
# Sonstiges
ping 10
push "ping 10"
ping-restart 60
push "ping-restart 60"
Client:
Code:
# Grundsätzliches (Was soll der CLIENT nutzen)
port 6667
proto tcp-client
dev tap
# Client-Einstellungen
tls-client
ns-cert-type server
remote **********.dyndns.*** 6667
# Authentifizierung und Verschlüsselung
ca /var/tmp/ca.crt
cert /var/tmp/birke.crt
key /var/tmp/birke.key
auth SHA1
cipher AES-256-CBC
# Sonstiges
pull
Beides sind Fritz-Boxen.
VPN-Verbindung wid aufgebaut, allerdings ergibt sich folgendes Problem: Von der Client-Box kann ich alle Geräte auf der Serverseite anpingen, aber eben nur von der BOX aus. Kein Client, der dahinter sitzt, kommt dorthin. Der Ping von einem Clienten geht nur bis zur Lokalen Tunnel-IP (10.1.1.x) aber nicht bis zum Serverende des Tunnels (10.1.1.1) oder gar bis zur Server-Box (192.168.1.1). Alle Geräte auf der Serverseite können nur bis zur Client-IP pingen (192.168.2.1) aber nicht weiter zum Netz dahinter. Was läuft da schief ?nochmal zur Übersicht der Config:

Code:
LAN Server          ServerBox       Tunnel        ClientBox       LAN Client

192.168.1.0        192.168.1.1     10.1.1.0      192.168.2.1   192.168.2.0
                               ||                                  ||
                         10.1.1.1..........DHCP..........10.1.1.x

Alle aus LAN Server:                                   Nur BOX: Ping bis ins LAN 
Ping bis 192.168.2.1                                   vom Server / LAN-Client nur
aber nicht weiter                                       ping bis 10.1.1.x aber nicht
                                                              weiter

HÜLFE ?!

Gruß icke.
 
Hi Neo7530,

der Push-Befehl
Code:
push "route 192.168.1.0 255.255.255.0"
in der server-Config ist schon richtig, vorausgesetzt die PC's im Client-Netz haben als Standardgateway die Client-FB eingetragen (192.168.2.1)

Der Route-Befehl
Code:
route 192.168.1.2 255.255.255.0

macht keinen Sinn, hier muss es heissen:
route 192.168.2.0 255.255.255.0
damit die PC's des Client-Lans vom Server-Lan richtig geroutet werden.
Auch hier ist Voraussetzung, das das Standardgateway auf Server-Lan Seite in den Server-Lan Clients richtig gesetzt ist (192.168.1.1).


Viele Grüße
interhubi
 
So, unsere VPN-Verbindung steht auch soweit.
Das ganze ist Box2Box VPN.
Nun gibt es noch ein Problem mit der Erreichbarkeit der PCs untereinander.

Aufbau der Netze:
FB1 (192.168.2.1) mit PC1.1 bis PC1.10 (192.168.2.20 bis .29) 255.255.255.0
FB2 (192.168.178.1) mit PC2.1 bis PC2.10 (192.168.178.20 bis .29) 255.255.255.0

Zur Übersicht mache ich mal eine Liste:

Es geht geht folgendes:
  • - Ping von FB1 an FB2
  • - Ping von PC1.x an FB2
(und umgekehrt)
  • - Ping von FB2 an FB1
  • - Ping von PC2.x an FB1

Folgendes geht nicht:
  • - Ping von PC1.x an PC2.x
(und umgekehrt)
  • - Ping von PC2.x an PC1.x

Die Configs sehen beide so aus:
Code:
dev tap0
remote xxxxxx.dyndns.org
ifconfig 192.168.178.1 255.255.255.0
secret /var/tmp/static.key
tun-mtu 1500
fragment 1500
float
mssfix
route 192.168.178.0 255.255.255.0
push "route 192.168.2.0 255.255.255.0"

Das mit route und push route ist scheinbar egal, zumindest ändert das nichts an unserem Problem. :confused:

Bei der anderen FB ist das natürlich entsprechend "umgekehrt".

Ich vermute, dass es mit der Netzmaske zu tun hat. Wir sind ja in unterschiedlichen Subnetzen. Leider gibt es da einen DHCP-Konflikt. Wir haben mal testweise die FBs so eingestellt, dass die selber zwar die gleiche IP wie vorher (192.168.2.1 bzw. 192.168.178.1) hatten, aber mit der Maske 255.255.0.0. Das Problem ist, dann vergeben beide per DHCP die IP's 192.168.1.20 bis ... Das ist ja nicht Sinn der Sache :(

Gibts dafür eine Lösung oder Ideen?

CU Eckat
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.