2 FTP-Server hinter einer IP
Hallo,
nachdem ich gerne experimentiere stoße ich manchmal an meine Grenzen und bitte euch um Hilfe.
Ich möchte 2 FTP-Server hinter einer IP betreiben, dabei soll das System anhand der SubDomain entscheiden auf welchen der beiden Server zugegriffen wird. (Leider liefert mir Tante G und die Forensuche nicht das gewünschte Ergebnis)
Dazu möchte ich euch kurz erläutern wie mein System aussieht.
1 Internetanschluss mit fixer IP,
1 Router NETGEAR R6300,
1 Proxyserver Ubuntu 14.10 (Dieser soll nach meiner Vorstellung auch als Interner DNS-Syserver dienen) Interne IP 10.0.1.20,
2 IBM x3550 Server Ubuntu 14.10 (Diese sind als Webserver konfiguriert mit Apache2 und vsftpd) Interne IP 10.0.1.30, 10.0.1.31,
Auf dem Proxyserver habe ich bereits Squid3 und ftp-proxy installiert. Leider ist mir mein vorhaben noch nicht gelungen.
Zur Zeit geht es mir nur um das richtige Port-forderwaring für FTP-Anfragen auf Port 21. HTTP/HTTPS-Anfragen werden zur Zeit alle auf 10.0.1.30 weitergeleitet und das soll auch so bleiben.
Mein Plan wäre wie folgt:
Ich möchte die FTP-Server über ftp1.meinedomain.com -> 10.0.1.30 und ftp2.meinedomain.com -> 10.0.1.31 jeweils über den Port 21 ansprechen.
Ein Bekannter bekommt einen Login und ich möchte seine Daten auf ftp1 speichern. Daher soll er in seinen FTP-Client ganz normal als Server ftp1.meinedomain.com mit einem Benutzer und einem Passwort angeben und dann tatsächlcih auf meinem ftp1-Server landen.
Wenn ich die Daten eines Benutzers auf ftp2 speichern möchte, soll dieser eben als Server ftp2.meinedomain.com eingeben.
Die Subdomains ftp1.meinedomain.com und ftp2.meinedomain.com verweisen beide auf meine öffentliche IP. Daher kommt die Anfrage auf Port 21 zu meinen Router, der leitet die Anfrage intern an 10.0.1.20 weiter. 10.0.1.20 soll dann anhand der Domain erkennen ob die Anfrage für 10.0.1.30 oder .31 gedacht ist. Daraus resultiert für mich, dass ich 10.0.1.20 als Reverse Proxy einsetzen sollte.
Die Anfragen sollen über den Port 20/21 laufen. Einen anderen Port zu verwenden ist für mich leider keine Option. Auch bin ich nicht gewillt, eine zweite öffentliche IP-Adresse zu bezahlten. (Ich kann mir nicht vorstellen, dass Hostingprovider für jeden Server eine eigene öffentliche IP haben.)
Mir stellt sich die Frage, ob ich das so realisieren kann und wenn ja ob ich dann mit Squid3 auf dem richtigen Weg bin? Hat jemand einen Gedankenanstoß, eine Idee, Vorschläge für mich?
Ich bin für jeden Rat dankbar.
nachdem ich gerne experimentiere stoße ich manchmal an meine Grenzen und bitte euch um Hilfe.
Ich möchte 2 FTP-Server hinter einer IP betreiben, dabei soll das System anhand der SubDomain entscheiden auf welchen der beiden Server zugegriffen wird. (Leider liefert mir Tante G und die Forensuche nicht das gewünschte Ergebnis)
Dazu möchte ich euch kurz erläutern wie mein System aussieht.
1 Internetanschluss mit fixer IP,
1 Router NETGEAR R6300,
1 Proxyserver Ubuntu 14.10 (Dieser soll nach meiner Vorstellung auch als Interner DNS-Syserver dienen) Interne IP 10.0.1.20,
2 IBM x3550 Server Ubuntu 14.10 (Diese sind als Webserver konfiguriert mit Apache2 und vsftpd) Interne IP 10.0.1.30, 10.0.1.31,
Auf dem Proxyserver habe ich bereits Squid3 und ftp-proxy installiert. Leider ist mir mein vorhaben noch nicht gelungen.
Zur Zeit geht es mir nur um das richtige Port-forderwaring für FTP-Anfragen auf Port 21. HTTP/HTTPS-Anfragen werden zur Zeit alle auf 10.0.1.30 weitergeleitet und das soll auch so bleiben.
Mein Plan wäre wie folgt:
Ich möchte die FTP-Server über ftp1.meinedomain.com -> 10.0.1.30 und ftp2.meinedomain.com -> 10.0.1.31 jeweils über den Port 21 ansprechen.
Ein Bekannter bekommt einen Login und ich möchte seine Daten auf ftp1 speichern. Daher soll er in seinen FTP-Client ganz normal als Server ftp1.meinedomain.com mit einem Benutzer und einem Passwort angeben und dann tatsächlcih auf meinem ftp1-Server landen.
Wenn ich die Daten eines Benutzers auf ftp2 speichern möchte, soll dieser eben als Server ftp2.meinedomain.com eingeben.
Die Subdomains ftp1.meinedomain.com und ftp2.meinedomain.com verweisen beide auf meine öffentliche IP. Daher kommt die Anfrage auf Port 21 zu meinen Router, der leitet die Anfrage intern an 10.0.1.20 weiter. 10.0.1.20 soll dann anhand der Domain erkennen ob die Anfrage für 10.0.1.30 oder .31 gedacht ist. Daraus resultiert für mich, dass ich 10.0.1.20 als Reverse Proxy einsetzen sollte.
Die Anfragen sollen über den Port 20/21 laufen. Einen anderen Port zu verwenden ist für mich leider keine Option. Auch bin ich nicht gewillt, eine zweite öffentliche IP-Adresse zu bezahlten. (Ich kann mir nicht vorstellen, dass Hostingprovider für jeden Server eine eigene öffentliche IP haben.)
Mir stellt sich die Frage, ob ich das so realisieren kann und wenn ja ob ich dann mit Squid3 auf dem richtigen Weg bin? Hat jemand einen Gedankenanstoß, eine Idee, Vorschläge für mich?
Ich bin für jeden Rat dankbar.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 264868
Url: https://administrator.de/forum/2-ftp-server-hinter-einer-ip-264868.html
Ausgedruckt am: 15.05.2025 um 03:05 Uhr
12 Kommentare
Neuester Kommentar
Hi
Du hast 1 Öffentliche IP Adresse wodurch du nur 1x davon den Port jeweils belegen kannst.
Damit du beide FTP nutzten kannst brauchst du eine 2te IP Adresse (Öffentliche IP vom Provider) oder legst ein FTB auf einen anderen Port.
Oder lässt die Leute über ein VPN zu dir in dein Netz (ggfs getrenntes im VPN).
Das was du meinst mit Subdomains und Interne IP Adresse angeben geht schonmal gar nicht.
Du kannst bei Domains im Internet nur Öffentlich IPs angeben die so erreichbar sind.
Alles was hinter deinem Router an IPs vergeben sind kanns du dort nicht angeben.
Du hast 1 Öffentliche IP Adresse wodurch du nur 1x davon den Port jeweils belegen kannst.
Damit du beide FTP nutzten kannst brauchst du eine 2te IP Adresse (Öffentliche IP vom Provider) oder legst ein FTB auf einen anderen Port.
Oder lässt die Leute über ein VPN zu dir in dein Netz (ggfs getrenntes im VPN).
Das was du meinst mit Subdomains und Interne IP Adresse angeben geht schonmal gar nicht.
Du kannst bei Domains im Internet nur Öffentlich IPs angeben die so erreichbar sind.
Alles was hinter deinem Router an IPs vergeben sind kanns du dort nicht angeben.
Das ist nicht möglich !
FTP supportet KEIN Port Transaltion, auch nicht im passive Mode so das das über eine NAT Firewall nicht möglich ist !
Session und Port Verhalten hier:
http://slacksite.com/other/ftp.html
Besser ist du benutzt SCP für sowas, da du die Verwendung eines Komamndo und Datenports dort nicht hast. Mal abgesehen davon das es gleichzeitg verschlüsselt ist !
Einen anderen Port zu verwenden ist für mich leider keine Option
Geht auch nicht !FTP supportet KEIN Port Transaltion, auch nicht im passive Mode so das das über eine NAT Firewall nicht möglich ist !
Session und Port Verhalten hier:
http://slacksite.com/other/ftp.html
Besser ist du benutzt SCP für sowas, da du die Verwendung eines Komamndo und Datenports dort nicht hast. Mal abgesehen davon das es gleichzeitg verschlüsselt ist !
Ist es nicht möglich dass die Abfrage auf diesem Weg funktioniert?
Wenn der Reverse Proxy mit FTP umgehen kann und wenn der remote Client passive FTP kann, dann kann das funktionieren.Passive FTP ist zwingend wenn du mit Port Forwarding arbeitest, was du ja wegen der NAT Firewall und dem dahinterliegende Reverse Proxy machen musst .
Hallo Markus,
ich möchte deine Hoffnungen ja ungern trüben, aber mWn taugt der ftp-proxy vom Apache nur dazu, den Inhalt eines FTP-Servers über HTTP abrufbar zu machen. Sollte das anders sein, lasse ich mich gern eines Besseren belehren...
Ein Lösungsweg könnte jedoch sein, den einen Server in den anderen zu mounten und dann über die (virtuelle) Ordnerstruktur den Zugriff auf die Server zu realisieren. Möglichkeit B wäre eben ein VPN. Unterschiedliche Ports hast du ja bereits als Lösung ausgeschlossen.
Beste Grüße!
Berthold
ich möchte deine Hoffnungen ja ungern trüben, aber mWn taugt der ftp-proxy vom Apache nur dazu, den Inhalt eines FTP-Servers über HTTP abrufbar zu machen. Sollte das anders sein, lasse ich mich gern eines Besseren belehren...
Ein Lösungsweg könnte jedoch sein, den einen Server in den anderen zu mounten und dann über die (virtuelle) Ordnerstruktur den Zugriff auf die Server zu realisieren. Möglichkeit B wäre eben ein VPN. Unterschiedliche Ports hast du ja bereits als Lösung ausgeschlossen.
Beste Grüße!
Berthold
Moin,
Die Thematk wurde hier im Forum im letzten Jahr gefühlt zigmal diskutiert. Ein einfaches google, sag mir was zu ftp reverse proxy liefert in Sekundenbruchteilen genügend Lösungen.
lks
Die Thematk wurde hier im Forum im letzten Jahr gefühlt zigmal diskutiert. Ein einfaches google, sag mir was zu ftp reverse proxy liefert in Sekundenbruchteilen genügend Lösungen.
lks
Hallo,
@ppr-dev
und beim 2ten FTP Server???
@MarkusW3400
kannst du nicht einfach auf einem FTP Server 2 Verzeichnisse anlegen?
Username und Password dazu.. gut ist...
brammer
@ppr-dev
Hänge doch einfach ein :21 an den ProxyPass an: ProxyPass / ftp://10.0.1.8:21
und beim 2ten FTP Server???
@MarkusW3400
kannst du nicht einfach auf einem FTP Server 2 Verzeichnisse anlegen?
Username und Password dazu.. gut ist...
brammer