Subdomain mit iptables auf lokale ip adressieren

Dieses Thema im Forum "Firewalls" wurde erstellt von wanie, 11.10.2009.

  1. #1 wanie, 11.10.2009
    Zuletzt bearbeitet: 11.10.2009
    wanie

    wanie Grünschnabel

    Dabei seit:
    11.10.2009
    Beiträge:
    3
    Zustimmungen:
    0
    Hallo,

    Ich habe einen linux router, und dahinter einige server (VM's mit eigenen IP's).
    Die domain zeigt auf meine statische IP, und auch die wildcards werden weitergeleitet.

    Nun möchte ich diese verschiedenen server von außen über die subdmain ansprechen.
    Also zb: sub1.domain.tld -> 192.168.1.2
    sub2.domain.tld -> 192.168.1.3
    usw...

    Ich weiß, apache2 bietet mit seiner virtual hosts proxy eine gute lösung diese subdomains für das http(s) protokoll weitezuleiten.
    Ich würde das jedoch gerne über die IPTABLES lösen.
    Grund dafür ist, das ich die Server mit jedem Protokoll von außen direkt ansprechen kann.
    Selbstverständlich bin ich mir bewusst das die einzelnen server dann gut abgesichert sein müssen!

    Ich habe bereits viel gegoogelt, jedoch immer nur lösungen gefunden die an das apache2 virtual hosts anlehnen.

    Gibt es jemanden der erfahrung hat dieses problem mit iptables zu lösen?
    Was sind die nachteile?
    Sind alle server auf die eine subdomain zeigt dann in einer DMZ?
    Gibt es vielleicht ein schönes howto dazu, das ich einfach noch nicht gefunden habe?

    Ich wäre um jede hilfe dankbar!

    Gruß
    wanie
     
  2. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. #2 HeadCrash, 11.10.2009
    Zuletzt bearbeitet: 12.10.2009
    HeadCrash

    HeadCrash Routinier

    Dabei seit:
    16.05.2009
    Beiträge:
    482
    Zustimmungen:
    1
    Ort:
    Bayern
    Hallo,

    was du vorhast wird nicht funktionieren, da der Adressbereich 192.168.x.x zu den privaten Netzen zählt, die nicht über das Internet geroutet werden.

    Sprich von innen funktioniert alles prächtig, nur wenn wer von außen darauf zugreifen will, wird die sub1.domain.tdl zwar auch ordnungs gemäß auf die 192.168.1.2 aufgelöst, nur wird der entsprechende Client den Server dahinter nie erreichen, bzw versuchen ein System bei sich im lokalen Netz ansprechen.

    Zum Thema iptables.
    Iptables arbeitet, soweit ich weiß, auf Ebene 3 und 4 des OSI-Modells, sprich IP und Port. Hier findet keine Unterscheidung nach Hostnamen statt. Deshalb kannst du auch nur z.B. Öffentliche_IP:Port_80 auf Interne_IP:Port_80 weiterleiten und nicht auf Interne_IP_1:Port_80, Interne_IP_2:Port_80 etc. (Loadbalancer mal ausgenommen, aber das ist hier nicht das Thema). Also keine Möglichkeit n Server hinter einer öffentlichen IP über den selben Port direkt anzusprechen.

    Zum Thema DMZ.
    Eine DMZ ist ein durch eine Firewall oder Firewall-Regeln vom Rest des Internen Netzes getrennter Netzberreich, auf den von außen zugegriffen werden darf/soll, der aber möglichst nochmals gegen das Intranet abgeschirmt ist.
    hat also mit DNS nichts am Hut.

    mfg
    HeadCrash
     
  4. Dizzy

    Dizzy Brain Damage

    Dabei seit:
    02.05.2007
    Beiträge:
    857
    Zustimmungen:
    0
    Ort:
    Graz
    /etc/hosts?
     
  5. #4 saeckereier, 12.10.2009
    saeckereier

    saeckereier Graue Eminenz

    Dabei seit:
    08.05.2005
    Beiträge:
    1.920
    Zustimmungen:
    0
    Ort:
    Im schönen Norden
    Du kannst in Iptables nur basierend auf Zielport und IP umleiten. Die Ziel-IP wird immer die gleiche sein, nämlich deine statische und der Port je nachdem auch. Wenn auf einer VM der SMTP Server läuft und auf einer anderen der HTTP Server, dann kannst du das über die Ports auseinanderhalten. Mehr geht nicht.

    Um anhand des Hostnamens umzuleiten setzt du voraus, dass der Hostname im Protokoll mit übertragen wird. Das ist z.B. bei HTTP der Fall. Hier kannst du dann mittels Apache basierend auf dem Hostnamen routen. Das funktioniert aber schon bei HTTPS nicht mehr.
     
  6. wanie

    wanie Grünschnabel

    Dabei seit:
    11.10.2009
    Beiträge:
    3
    Zustimmungen:
    0
    Vielen dank für die Info!
    Nur zur Info, wäre sowas denn mit einem Loadbalancer möglich?
    Ist warscheinlich ein wenig Zweckentfremdet, aber könnte hilfrei sein...

    Gruß
    wanie
     
  7. #6 saeckereier, 12.10.2009
    saeckereier

    saeckereier Graue Eminenz

    Dabei seit:
    08.05.2005
    Beiträge:
    1.920
    Zustimmungen:
    0
    Ort:
    Im schönen Norden
    nein. es geht *nicht*.
     
  8. #7 HeadCrash, 12.10.2009
    HeadCrash

    HeadCrash Routinier

    Dabei seit:
    16.05.2009
    Beiträge:
    482
    Zustimmungen:
    1
    Ort:
    Bayern
    Morgen,

    wie saeckereier schon sagte, nein. es geht nicht.

    Ein Loadbalancer dient dazu die Last für z.B. einen Webauftritt auf mehrere Systeme zuverteilen, die alle identische Inhalte ausliefern. Von außen hast du keine Möglichkeit zu beeinflußen auf welchem System du landest.

    mfg
    HeadCrash
     
  9. wanie

    wanie Grünschnabel

    Dabei seit:
    11.10.2009
    Beiträge:
    3
    Zustimmungen:
    0
    Ok, danke für die Antworten.
    Im Professionellen Bereich wird sowas dann vermutlich über mehrere Internet IP's und iptables gelöst oder?
    Ich denke für meinen Zweck werde ich dann mit dem redirect proxy was apache anbietet Arbeiten. und für die anderen Dienste halt dann einfach auf andere Ports ausweichen.
    Ist zwar dann immer umständlich, aber wenn mans weis geht das schon.

    Nur wundert mich das es dafür wirklich noch keine Lösung gibt.
    Bin wohl der einzige der solche Flausen im Kopf hat :D

    Gruß
    wanie
     
  10. Anzeige

    Vielleicht findest du HIER Antworten.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  11. #9 T-One, 13.10.2009
    Zuletzt bearbeitet: 13.10.2009
    T-One

    T-One Routinier

    Dabei seit:
    14.10.2008
    Beiträge:
    478
    Zustimmungen:
    3
    Ort:
    Österreich
    Nein, das geht genau so mit einer Externen IP die auf den loadbalancer zeigt und dieser gibt einfach an die richtigen Webserver weiter, Ansonsten ist sowas noch per DNS-Roundrobin oder simplen Reverse-Proxy möglich.

    Sowas wird auch nie funktionieren da es eine solche Funktion in TCP/IP und DNS nicht gibt, du kannst kein DNS-Eintrag auf irgendeinen x-beliebigen Service Routen der danach noch die zu verwendeten Ports wissen soll und dann auch noch dazu die hürde in private Netze überspringt. Was vielleicht möglich wäre, da kenn ich jetzt deine Hardware nicht, wäre Flat Based Loadbalancing, dabei werden die MAC-Adressen umgeschrieben damit der Switch hinterm Gateway die Anfragen direkt an die richtigen Server weiterleitet, ist aber eine erhebliche Kostenfrage und geht IMO wiederum nur für HTTP, HTTPs ist wieder schluss, bei anderen Services hab ich jetzt keine Erfahrung damit gesammelt.

    Was du jedoch machen könntest wäre das Routing deiner externen IP auf verschiedene Ports deiner internen Server.

    externeip:80 --> server1:80
    externeip:81 --> server2:81
    externeip:82 --> server3:82

    Dann alle Subdomains auf server1:80 per vhosts einrichten und von dort Redirects auf externeip:81, externeip:82 usw. mit mod-rewrite kannst du dann auch noch die subdomains hinzufügen, jedoch wird der client immer die Port-Nummern in der Adressleiste sehen.
     
  12. #10 saeckereier, 13.10.2009
    saeckereier

    saeckereier Graue Eminenz

    Dabei seit:
    08.05.2005
    Beiträge:
    1.920
    Zustimmungen:
    0
    Ort:
    Im schönen Norden
    Rein für http wäre das einfachste ein Apache als Reverse-Proxy auf dem Router, dann zeigen alle Hostnamen auf die IP des Routers und der leitet weiter.
     
Thema:

Subdomain mit iptables auf lokale ip adressieren

Die Seite wird geladen...

Subdomain mit iptables auf lokale ip adressieren - Ähnliche Themen

  1. Samba Active Directory SUBDOMAIN

    Samba Active Directory SUBDOMAIN: Hi, ich habe eine Samba Domäne ESC.LAN mit Samba 4.5 aufgebaut. Jetzt würde ich gern einen neuen Domänen AD im Tree MUNICH.ESC.LAN also eine...
  2. Reverse Proxy einrichten für mehrere subdomains über Port 80

    Reverse Proxy einrichten für mehrere subdomains über Port 80: Guten Tag zusammen. Ich habe folgendes Problem. Bei mir laufen 2 Apache-Tomcat Services. Einer auf Port 8880 und einer auf Port 8080. Nun habe...
  3. Mild Subdomain Brute Forcer 0.7

    Mild Subdomain Brute Forcer 0.7: mild.sh is a straight-forward subdomain brute forcer inspired by fierce.pl. It includes hosts-plus.txt, it randomizes queries, and it logs found...
  4. apache2: Virtualhost ohne subdomain

    apache2: Virtualhost ohne subdomain: Hi, ich möchte bei apache einen virtualhost für fqdn.de/testname einrichten. Folgendes habe ich (unter Anderem) in der entsprechenden Datei im...
  5. Vhost Subdomain verweist auf eine Tomcatseite

    Vhost Subdomain verweist auf eine Tomcatseite: Hallo erstmal, Wenn ich eine Seite mit Servlet öffnen möchte, muss ich zur domain.de:8080/Ordner/meineSeite.html angeben. Ist es möglich, dass...