------ Geschrieben 23. März 2020 Teilen Geschrieben 23. März 2020 Hallo, ich habe mit dem Docker Image "kylemanna/openvpn" einen openVPN Server eingerichtet. Wenn ich mich Connect, dann erreiche ich andere Websites auch unter der öffentlichen IP des VPN Servers. Soweit klappt es also wie gewünscht. Jetzt würde ich gern sicherstellen das ich eine Website (welche auf dem gleichen Host wie der openVPN Server läuft) auch nur per VPN erreichen kann. Also bin ich der Einfachheit halbe hin und habe in der nginx config einfach ein "deny all; allow <VPNServerAdress>" eingefügt. Jedoch bekomme ich immer ein 403 forbidden. Egal ob ich im VPN bin oder nicht. Das Problem ist das ich im nginx access/error log sehe das ich immer, egal ob im VPN oder nicht, mit der realen IP meines PCs auf dem Server ankomme. Die Verbindung wird also nicht durchs VPN geoutet wenn ich versuche den VPN Server selbst zu erreichen. Kann mir jemand erklären was hier passiert und wie ich es lösen kann? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
1 _n4p_ Geschrieben 24. März 2020 Teilen Geschrieben 24. März 2020 Wie gesagt, so hab ich das noch nicht versucht. Prinzipiell ist das Ergebnis aber auch nicht verwunderlich. Würde das System mit dem VPN Client wirklich jedes Paket durch den Tunnel schicken, könnte es nicht mehr mit dem VPN Server reden. der vermutlich einfachste weg wäre, in der hosts des Clients die interne IP des des VPN Servers mit einem namen zu verknüpfen (bsp. nginxvpn) und den webserver dann über diesen namen statt dem öffentlichen anzusprechen. dann kann auch das redirect-gateway wieder weg. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
1 Bitschnipser Geschrieben 23. März 2020 Teilen Geschrieben 23. März 2020 Kann es sein, dass die Regeln von vorne nach hinten durchgelaufen werden wie bei regulären Firewalls? Sprich: ich blocke alles -> alles wird verworfen, nichts kommt mehr bei "allow <VPNServerAddress> an Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
1 _n4p_ Geschrieben 23. März 2020 Teilen Geschrieben 23. März 2020 vor 8 Stunden schrieb n0nam3: Kann mir jemand erklären was hier passiert und wie ich es lösen kann? Easy .. Was passiert: Standard ist das nur Traffic durch das VPN geroutet wird der in das Netz hinter dem OpenVPN soll. Welche das sind schreibt man in die Server Konfiguration. Der Server pusht diese Informationen als neue Routen auf den Client. Da dein Client den OpenVPN Server aber "direkt" erreicht gibt es keine Route zur IP von dem nginx die durch das VPN führt. Möglichkeiten: du suchst nach "redirect-gateway def1" das kann entweder in die Client Konfiguration odre als push in die Server Konfiguration eingetragen werden. Nachteil daran ist dann, das aller Traffic durch das VPN geht. Eventuell kann man auch nur eine Route zur der speziellen IP setzen, hab ich aber noch nie versucht. Han_Trio reagierte darauf 1 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
0 ------ Geschrieben 24. März 2020 Autor Teilen Geschrieben 24. März 2020 (bearbeitet) vor 13 Stunden schrieb _n4p_: Möglichkeiten: du suchst nach "redirect-gateway def1" das kann entweder in die Client Konfiguration odre als push in die Server Konfiguration eingetragen werden. Nachteil daran ist dann, das aller Traffic durch das VPN geht. Eventuell kann man auch nur eine Route zur der speziellen IP setzen, hab ich aber noch nie versucht. Hi, danke für deinen Tipp. Leider klappt dies nicht. Ich komme am Server immer noch mit der öffentlichen IP des Clients an statt mit der Server IP. Hab es in die Client Config geschrieben Bearbeitet 24. März 2020 von n0nam3 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
0 ------ Geschrieben 24. März 2020 Autor Teilen Geschrieben 24. März 2020 (bearbeitet) Client Config: client nobind dev tun remote-cert-tls server remote kinto.dev 1194 udp redirect-gateway def1 <key> -----BEGIN ENCRYPTED PRIVATE KEY----- ***KEY*** -----END ENCRYPTED PRIVATE KEY----- </key> <cert> -----BEGIN CERTIFICATE----- ***KEY*** -----END CERTIFICATE----- </cert> <ca> -----BEGIN CERTIFICATE----- ***KEY*** -----END CERTIFICATE----- </ca> key-direction 1 <tls-auth> # # 2048 bit OpenVPN static key # -----BEGIN OpenVPN Static key V1----- ***KEY*** -----END OpenVPN Static key V1----- </tls-auth> Server Config: server 192.168.255.0 255.255.255.0 verb 3 key /etc/openvpn/pki/private/DOMAIN.key ca /etc/openvpn/pki/ca.crt cert /etc/openvpn/pki/issued/DOMAIN.crt dh /etc/openvpn/pki/dh.pem tls-auth /etc/openvpn/pki/ta.key key-direction 0 keepalive 10 60 persist-key persist-tun proto udp # Rely on Docker to do port mapping, internally always 1194 port 1194 dev tun0 status /tmp/openvpn-status.log user nobody group nogroup comp-lzo no ### Route Configurations Below route 192.168.254.0 255.255.255.0 ### Push Configurations Below push "block-outside-dns" push "dhcp-option DNS 8.8.8.8" push "dhcp-option DNS 8.8.4.4" push "comp-lzo no" push "redirect-gateway def1" Bearbeitet 24. März 2020 von n0nam3 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
0 ------ Geschrieben 25. März 2020 Autor Teilen Geschrieben 25. März 2020 Okay, ich hatte 'nen Denkfehler in der ganzen Sache und bin nun auch der Meinung das das so korrekt ist wie es passiert. Danke euch Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Frage
------
Hallo,
ich habe mit dem Docker Image "kylemanna/openvpn" einen openVPN Server eingerichtet.
Wenn ich mich Connect, dann erreiche ich andere Websites auch unter der öffentlichen IP des VPN Servers. Soweit klappt es also wie gewünscht.
Jetzt würde ich gern sicherstellen das ich eine Website (welche auf dem gleichen Host wie der openVPN Server läuft) auch nur per VPN erreichen kann.
Also bin ich der Einfachheit halbe hin und habe in der nginx config einfach ein "deny all; allow <VPNServerAdress>" eingefügt.
Jedoch bekomme ich immer ein 403 forbidden. Egal ob ich im VPN bin oder nicht.
Das Problem ist das ich im nginx access/error log sehe das ich immer, egal ob im VPN oder nicht, mit der realen IP meines PCs auf dem Server ankomme.
Die Verbindung wird also nicht durchs VPN geoutet wenn ich versuche den VPN Server selbst zu erreichen.
Kann mir jemand erklären was hier passiert und wie ich es lösen kann?
Link zu diesem Kommentar
Auf anderen Seiten teilen
6 Antworten auf diese Frage
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.