Tunnelbau durch CGN

sm4rty

Enthusiast
Thread Starter
Mitglied seit
24.06.2008
Beiträge
511
Ort
Bärlin
Hallo liebe Forumdeluxx Gemeinde,

Problem:
Server <-> Router <-> CGN <-> Internet

Das CGN teilte meine eine dynamische IP auf mehrere User auf, somit ist kein NAT oder ähnliches möglich.

Ich möchte nun von außen auf meinen Server zugreifen, das soll über einen Tunnel realisiert werden.

Was ist vorhanden:
1 x vserver ipv6 nativ und ipv4 über NAT -> fällt für mein Vorhaben aus.

1x vserver mit ipv4 nativ.

Nun soll der Server bei mir zu Hause über den vserver erreicht werden.

Das soll so aussehen:

Internetbenutzer -> Anfrage an vserver IP, dieser leitet die Anfrage über den Tunnel an meinen Server zu Hause.

Das Problem dabei ist: das ganze soll transparent erfolgen:
Also egal auf welchem Port eine Anfrage am vserver ankommt, diese soll ohne Änderung über den Tunnel zum Server gehen und auch wieder zurück.

Es soll quasi so aussehen, als sei die vserver IP die öffentliche IP des Servers.

Server: Yocto Linux - ohne Paketmanager -> Es muss also als Source Code verfügbar sein.
vserver: CentOs


Das soll dann am Ende so aussehen:
http://verserver_ip/owncloud/index.php -> soll dann die Owncloud Seite vom Server liefern, also auf die ipv4 Adresse im lokalen Netzwerk verweisen

In einem IPv6 Netzwerk könnte ich einfach:
http://[IP_Server]/owncloud/index.php, das geht aber dank CGN mit ipv4 nicht :/





Soa, welche Software / bzw. Lösung eignet sich für solch ein Vorhaben?

Ich hab einfach keine Ahnung, nach was ich da googlen soll?

Vielen Dank.
 
Zuletzt bearbeitet:
Wenn Du diese Anzeige nicht sehen willst, registriere Dich und/oder logge Dich ein.
Teilweise könnte das per IPTables realisierbar sein.

Wenn es nur um HTTP geht, dann einfach Squid als reverse Proxy.

Und die Verbindung zwischen den Servern per OpenVPN.
 
ne geht halt nicht nur um http, sondern eigentlich alles.
aber wenn das nicht realisierbar ist, dann reicht auch erstmal http.
 
Du könntest von deinem Server aus einen OpenVPN oder gar IPSec Tunnel zum vServer aufbauen. Natürlich vorausgesetzt du kannst im vServer die entsprechenden Kernelmodule nutzen.

Sobald die Verbindung dann einmal steht, kannst du auch Traffic vom vServer zu deinen Server über den Tunnel machen. Die Public IP des vServers musst du dann über den Tunnel entsprechend Naten
 
ok tunnel fällt aus :/ beide vserver haben keinen vpn support. soooo hat jemand eine idee, was ich noch machen könnte?

spiele grad damit einen transparenten proxy einzurichten, welcher auf einen anderen proxy weiterleitet, der dann auf die ipv6 adresse meines server zuhause übersetzt.... kompliziert aber das einzige, was mir noch einfällt :/

vserver1 (kann nur IPv4) -> nimmt anfrage auf port 80 entgegen -> weiterleiten an vserver2 auf Port 65436 (vserver sitzt hinter NAT) -> weiterleiten auf IPv6 meines homservers.


meint ihr das könnte funktionieren?
(Die Übersetzung von IPv4 auf IPv6 auf vserver2 läuft schon, ich muss nur noch die kaskadierung hinbekommen.)
habt ihr eine ahnung, wie ich das machen kann? bin zwar am tutorial lesen aber so richtig versteh ichs noch nicht.

allerdings beschäftigt mich da eine sache:

Problem ist: der Client macht eine Anfrage auf Port 80 des ersten squid. dieser soll daraufhin die anfrage: https://ipmeinesservers.de/owncloud/index.php bzw https://ipmeinesserver/gewünschterpfad an den zweiten vserver stellen und dann die seite ausliefern.

Das sieht dann so aus: Client: https://vserver1/owncloud/index.php -> vserver1 ersetzt nur die TLD durch https://ipmeinesserver/owncloud/index.php und stellt die anfrage an vserver2 weiter.

Wie kann man das Problem lösen?
Habt ihr Anregungen?


€dit:
Ich glaube ich habe gefunden was ich brauche. Und ich glaube außerdem noch, dass es nicht ohne weiteres möglich ist :/

Ich brauche einen ReverseProxy welcher einen parent proxy unterstützt also die anfrage an den entfernten webserver über einen weiteren Proxy leitet.

Jetzt die alles entscheidende Frage: kennt sich jemand damit aus und kann mir helfen? damit habe ich null erfahrung.

LG
 
Zuletzt bearbeitet:
soooooo

jetzt lüppt alles, auch mit SSL Verschlüsselung

ganz schön eklige Angelegenheit das alles.
Also, falls jemand das gleiche Problem mal haben sollte:

apt-get install pound

dann config anpassen:

## global options:
8
9 User<--><------>"www-data"
10 Group<-><------>"www-data"
11 #RootJail<----->"/chroot/pound"
12
13 ## Logging: (goes to syslog by default)
14 ##<---->0<----->no logging
15 ##<---->1<----->normal
16 ##<---->2<----->extended
17 ##<---->3<----->Apache-style (common log format)
18 LogLevel<------>1
19
20 ## check backend every X secs:
21 Alive<-><------>30
22
23 ## use hardware-accelleration card supported by openssl(1):
24 #SSLEngine<---->"<hw>"
25
26 # poundctl control socket
27 Control "/var/run/pound/poundctl.socket"
28
29
30 ######################################################################
31 ## listen, redirect and ... to:
32
33 ## redirect all requests on port 1199 ("ListenHTTP") to the local webserver (see "Service" below):
34 ListenHTTPS
35 <------>Address 10.222.3.90 ##Ip an welcher der proxy hört
36 <------>Port<-->1199
37 <------>cert "/root/CA/pound/our_cert.pem"
38 <------>AddHeader "X-Forwarded-Proto: https"
39 <------>HeadRemove "X-Forwarded-Proto"
40 <------>## allow PUT and DELETE also (by default only GET, POST and HEAD)?:
41 <------>xHTTP<-><------>2
42

43
44
45 <------>Service
46 <------><------>BackEnd
47 <------><------><------>Address>IP des Webservers
48 <------><------><------>Port<-->1199
49 <------><------><------>HTTPS
50 <------><------>End
51 <------>End
52 End
57

Freuen, dass endlich alles lüppt :)

Ich habe es vorher mit nginx versucht, dieser scheiterte aber daran, dass mein webserver ipv6 only ist und nginx nicht mit anfragen über ipv4 klar kam.
apache2 habe ich ehrlichgesagt einfach nicht hinbekommen zu konfigurieren und nach einem tag aufgegeben.

Pound ist schlank und leicht konfigurrierbar - perfekt!
 
Hardwareluxx setzt keine externen Werbe- und Tracking-Cookies ein. Auf unserer Webseite finden Sie nur noch Cookies nach berechtigtem Interesse (Art. 6 Abs. 1 Satz 1 lit. f DSGVO) oder eigene funktionelle Cookies. Durch die Nutzung unserer Webseite erklären Sie sich damit einverstanden, dass wir diese Cookies setzen. Mehr Informationen und Möglichkeiten zur Einstellung unserer Cookies finden Sie in unserer Datenschutzerklärung.


Zurück
Oben Unten refresh