dominik-eunes
Goto Top

OpenVPN routing Probleme für Telefonanlage

Hallo zusammen,

ich hoffe, ihr könnt mir weiterhelfen. Alles googeln, Anleitungen, MANs etc und und und haben mir nicht weiterhelfen können.
Ich sitze seit 2 Tagen vor dem Problem und komme einfach nicht weiter.

Grundsätzlich geht es um folgendes:
Es sollen 2 IP-Telefone (Auerswald Compact 1400 IP) an eine Compact 5000R angebunden werden. Die Anlage selber steht an Standort A und die Telefone an den Standorten B und C.
Dies soll über ein VPN realisiert werden. Im Netzwerk der Telefonanlage läuft ein Raspberry Pi, der als VPN-Server fungieren soll. Als Programm soll OpenVPN zum Einsatz kommen. Der OpenVPN-Server soll hierfür auch lediglich eine festgelegte IP-Range vergeben (max. 10 IPs).

Folgendes ist mir bis jetzt in einer Testumgebung mit einem Server 2012 (sozusagen als Raspi-Ersatz zum testen) und einem Win10-Client gelungen.
OpenVPN-Server läuft und eine Verbindung vom Win10-Client ist auch möglich. Routing funktioniert soweit auch. Das habe ich per Remotezugriff auf den WinServer mit seiner eigenen lokalen IP ausm RZ getestet. Allerdings komme ich dann nicht weiter. Wenn ich eine andere IP(z.B. die Web-Oberfläche des Gateways) aus dem Subnetz des Servers aufrufe ist diese nicht erreichbar. Sie ist nicht mal mehr vom Server selber aus erreichbar solange der VPN-Server läuft. Beende ich den Server, ist die oben genannte IP wieder erreichbar. Ich denke, dass ich irgendwo in den gepushten Routen einen Fehler habe. Allerdings finde ich den nicht.

So sieht mein Szenario im Moment aus:
Testserver (als VM im RZ hinter Firewall mit IP 192.168.1.1):
Windows Server 2012 R2 (Firewall aktiviert, Ports aufgemacht)
IP: 192.168.1.200 255.255.255.0
Gateway: 192.168.1.1
OpenVPN Server (Konfig poste ich weiter unten)
Der Server ist natürlich über eine öffentliche IP erreichbar, die hier im Moment aber unerheblich ist.

Testclient (hinter Fritz!Box):
Windows 10 (Firewall aktiviert)
IP: 192.168.0.16 255.255.255.0
Gateway 192.168.0.1
OpenVPN Client (Konfig auch weiter unten)

Telefonzentrale (diese soll dann angebunden werden)
IP: 192.168.33.xx 255.255.255.0
Gateway: 192.168.33.254

Raspberry Pi (soll reell als VPN-Server dienenO)
IP: 192.168.33.xx+1 255.255.2550
Gateway: 192.168.33.254

Im Router in der Zentrale kann ich leider kein VPN hinterlegen, da hier schon eine feste IP-Route zu einem weiteren RZ hinterlegt ist. Diese Route stellt aber für das Vorgehen keine Einbussen dar.

Folgende configs habe ich schon.

Serverkonfig.ovpn:
local 192.168.1.200
port 10447
proto tcp
dev tun
ca "C:\\Program Files\\OpenVPN\\easy-rsa\\keys\\ca.crt"  
cert "C:\\Program Files\\OpenVPN\\easy-rsa\\keys\\server.crt"  
key "C:\\Program Files\\OpenVPN\\easy-rsa\\keys\\server.key"  # This file should be kept secret  
dh "C:\\Program Files\\OpenVPN\\easy-rsa\\keys\\dh1024.pem"  
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
push "route 192.168.1.0 255.255.255.0"  
push "route 10.8.0.0 255.255.255.0"  
route 192.168.1.0 255.255.255.0
client-config-dir ccd
client-to-client
keepalive 10 120
cipher AES-128-CBC   # AES
comp-lzo
max-clients 10
persist-key
persist-tun
status openvpn-status.log
verb 3

Client-CCD (im passenden Ordner und korrekter Dateiname)
push "route 192.168.1.0 255.255.255.0"  
push "route 10.8.0.0 255.255.255.0"  
route 192.168.1.0 255.255.255.0
iroute 192.168.0.0 255.255.255.0

Clientconfig.ovpn:
ip-win32 dynamic
client
dev tun
dev-node "Testserver"  
proto tcp
remote my-server-ip 10447
resolv-retry infinite
nobind
persist-key
persist-tun
ca "C:\\Program Files (x86)\\Sophos\\Sophos SSL VPN Client\\config\\testserver\\ca.crt"  
cert "C:\\Program Files (x86)\\Sophos\\Sophos SSL VPN Client\\config\\testserver\\testphone.crt"  
key "C:\\Program Files (x86)\\Sophos\\Sophos SSL VPN Client\\config\\testserver\\testphone.key"  
ns-cert-type server
cipher AES-128-CBC
comp-lzo
route-delay 4
verb 3
tls-remote server

IP-Forwarding ist auf den Systemen aktiviert. Wie das dann im Telefon ausschaut, kann ich noch nicht sagen. Die Software des Compact 1400 IP basiert auf Android. Aber da wird mir sicherlich der Auerswald-Support helfen. face-wink

Wie oben schon geschrieben. Die Verbindung an und für sich geht. Ich kann vom Client aus per Remote auf die lokale IP des Servers zugreifen (der ja eig hinter ner Firewall mit ner öffentlichen IP liegt). Die IP des OpenVPN-Servers ist mir relativ latte. Läuft der VPN-Server kann ich nicht auf die Firewall im RZ (192.168.1.1) zugreifen, ist er beendet, kann ich darauf zugreifen.

Wenn ihr mir hier weiterhelfen könntet, wäre das super. Ich komme echt nicht mehr weiter.

Viele Grüße,
Dominik

Content-ID: 297575

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

Ausgedruckt am: 19.11.2024 um 23:11 Uhr

aqui
Lösung aqui 28.02.2016, aktualisiert am 05.03.2016 um 14:41:31 Uhr
Goto Top
OK, soweit ist dein Vorhaben kein Problem und leicht umsetzbar. Die Vorgehensweise ist generell richtig.
Du solltest dich an das hiesige OpenVPN Tutorial halten was einen groben Gesmatüberblick über die Konfig gibt:
OpenVPN Server installieren auf pfSense Firewall, Mikrotik. DD-WRT oder GL.inet Router
Die VPN Konfig ist bei OpenVPN immer gleich, plattformübergreifend.

Wenn du dir daraufhin einmal deine Server Konfig ansiehst erkennst du auch gleich deinen ersten Kardinalsfehler !!
Das push "route 10.8.0.0 255.255.255.0" Kommando ist Blödsinn !
Das ist das OVPN interne netzwerk und muss logischerweise NICHT in die Routing Tabelle der Clients übertragen werden !
Muss also entfernt werden.
Daraus folgt dann ebenso das route 192.168.1.0 255.255.255.0. Auch überflüssiger Unsinn, denn mit dem Push Kommando zuvor propagierst du das ja schon in die Routing Tabelle der einwählenden Clients.
Kann man übrigens auch immer kontrollieren mit route print /Win) oder netstat -rn
Entsprechend falsch sind natürlich dann auch die Routen der Client CCD !

Der nächste Kardinalsfehler ist TCP Enkapsulierung zu verwenden. Das ist erheblich kontraproduktiv und auch OVPN rät dringenst davon ab, da es zu massiven Performanceeinbußen und MTU bzw. MSS Problemen kommen kann. Hier solltest du dringenst auf UDP umstellen !
Abgesehen davon sollte man keine IANA Ports verwenden wenn man über öffentliche Netze geht. Wenn du also einen anderen Standard Port verwenden willst nimm die sog. Ephemeral Ports die dazu empfohlen werden ! (49152 bis 65535)

Nochwas wichtiges zum Routing:
Vergiss nicht das sowohl auf Client und auch Serverseite deine Komponenten HINTER einem NAT Router stehen ! Beim Server also entsprechendes Port Forwarding eingerichtet werden muss.
Viel wichtiger ist aber die Tatsache das ALLE Endgeräte in diesen Netzen vermutlich den entsprechenden Router als Default Gateway haben !
Gerade am OVPN Servernetz das auch die Telefonanlage beherbergt muss hier zwingend eine statische Route in das interne OVPN Netz auf dem Internet Router eingerichtet werden ala:
Zielnetz: 10.8.0.0 Maske: 255.255.255.0, Gateway: 192.168.33.xx+1

Das ist erforderlich, da 10.8.0.0er IP Pakete ja an den OVPN Server geroutet werden müssen.
Im Grunde machst du ja eine LAN zu LAN Kopplung aller 3 Standorte. Du bräuchtest also eigentlich 3 Raspberry Pis die das realisieren.
Vermutlich machst du also auch beim VPN Design noch einen Denkfehler ?!
http://jankarres.de/2013/05/raspberry-pi-openvpn-vpn-server-installiere ...
Dominik-EUNES
Dominik-EUNES 29.02.2016 aktualisiert um 19:07:38 Uhr
Goto Top
Hallo aqui,

vielen herzlichen Dank für diese ausführlichen Informationen, Tipps und Hilfestellungen!

Habe Deine ersten beiden Absätze beherzigt und es ist immer noch alles erreichbar. face-wink

Und viel wichtiger: Nachdem ich die statische Route im Gateway im Testsystem gesetzt habe, kann ich auch auf das interne Netzwerk zugreifen.

Habe nur noch drei Fragen, da Du in dieser Thema ja echt fit bist. face-wink

1. Sehe ich das richtig, dass ich in der statischen Route als Gateway grundsätzlich den OpenVPN-Server angebe (-n muss)???
2. Ich verstehe nicht genau, weshalb ich 3 Raspberrys benötige. Die IP-Telefone von Auerswald können mit OpenVPN umgehen und sind dafür auch ausgelegt. Oder könnte das hier am Port Forwarding scheitern? Sollte es daran scheitern, könnte ich Doch in den jeweiligen Routern (Speedports) bei den Mitarbeitern ebenso wieder Routen setzen, oder?
3. Ich würde gerne die IP-Adressvergabe auf max. 10 IPs beschränken. Mir ist bewusst, dass ich das über die ifconfig regele. Allerdings hat mir der Server immer ne Fehlermeldung ausgegeben. Könntest DU mir hier noch weiterhelfen?


Liebe Grüße
Dominik
aqui
Lösung aqui 02.03.2016, aktualisiert am 05.03.2016 um 14:41:26 Uhr
Goto Top
1. Sehe ich das richtig, dass ich in der statischen Route als Gateway grundsätzlich den OpenVPN-Server angebe (-n muss)???
Nein, das siehst du falsch ! Es betrifft ausschliesslich nur Routen im VPN
2. Ich verstehe nicht genau, weshalb ich 3 Raspberrys benötige.
Du musst doch 3 Standorte vernetzen, oder ??
Die IP-Telefone von Auerswald können mit OpenVPN umgehen
Ohh, cool. Das war mir nicht bekannt ! Die haben also einen OpenVPN Client schon gleich mit an Bord ???
Wie komfortabel ! Dann benötigst du natürlich nur einen einzigen RasPi, klar !
könnte ich Doch in den jeweiligen Routern (Speedports) bei den Mitarbeitern ebenso wieder Routen setzen, oder?
Zeigt leider deine Unkenntniss...sorry.
Jeder netzwerker weiss das Speedport Schrottrouter keine statischen Routen supporten.
Aber mal ganz abgesehen davon hat das erstens rein gar nichts mit Routen zu tun und zweitens sind die Telefone ja VPN Clients, die öffnen eine ganz normale SSL Session auf den RasPi OVPN Server. Da muss man rein gar nix mehr machen.
Hauptsache ist einzig nur das die Ziel IP des RasPi OVPN Servers für die Clients erreichbar ist. Nicht mehr und nicht weniger...
3. Ich würde gerne die IP-Adressvergabe auf max. 10 IPs beschränken.
Wie bzw. wo willst du das ?? Im internen OVPN Netzwerk für die Clients ??
ifconfig ist natürlich mal wieder Blödsinn, denn das ist die IP Adresse des LAN Ports.
Du machst das ganz einfach in der server.conf Datei des OVPN Servers:
server 10.8.0.0 255.255.255.248 = lässt nur 6 IP Adressen auf den Clients zu
server 10.8.0.0 255.255.255.240 = lässt nur 14 IP Adressen auf den Clients zu
Dominik-EUNES
Dominik-EUNES 05.03.2016 um 14:44:13 Uhr
Goto Top
Hy,

ifconfig tauchte immer wieder in den Tutorials auf, dass man damit IP-Adressbereiche festlegen könnte.

Aber danke für Deine Hilfe. Klappt nun alles reibungslos.

LG