Portfragen - mehrere Dienste auf Port 443?

L I V E Stammtisch ab 20:30 Uhr im Chat
  • Hallo Leute,

    mein nginx und meine Firewall auf Arbeit machen mich fertig ;)

    Ich brauche kreative Ideen für folgendes Setup, in dem ich von überall aus auf meinen raspi zu Hause zugreifen will und zwar mittels SSH und per HTTPS (auf owncloud). Letzteres trifft vor allem auf andere Personen zu, die keinen SSH-Zugriff haben sollen (Reiner Datenspeicher für Dokumente).

    Nun habe ich auf Arbeit einen Proxy vorgegeben, der sehr restriktiv ist. Für meinen SSH-Tunnel musste ich deshalb schon den öffentlichen Port 443 auf den lokalen 22 weiterleiten, da 22 generell gesperrt ist.

    Demzufolge fällt 443 als öffentlicher Port für den nginx natürlich weg. Dachte ich mir, dann leg ich den eben auf Port 80, HTTP brauch ich eh nicht. Geht grundsätzlich auch, https://home.example.com:80/ tut was es soll. Allerdings offenbar gerade nicht für Personen, die ebenfalls hinter einem Proxy hängen, da zumindest der von mir und meiner Frau offenbar keinen HTTPS-Request auf Port 80 durchlässt. Für mich via Tunnel kein Problem, aber gerade meine Frau ist somit ausgeschlossen...

    Gibt es irgendeine Möglichkeit, mehrere Dienste auf dem öffentlichen Port 443 horchen zu lassen oder entsprechend weiterzuleiten? Oder kreative Ideen, wie man dieses Problem umgehen kann?

    Beste Grüße
    Daniel

  • Hi,

    also mehrere Dienste auf einem Port kannst Du m.E. erstmal vergessen. Das wird nicht funktionieren.
    Das würde auch der ursprünglichen Idee widersprechen. Du kannst Dir die IP-Adresse wie eine Postadresse vorstellen:
    Land.Ort.Strasse.Hausnummer:Appartement

    Dass Du da irgendein Problem hast, sehe ich schon, aber wenn ich ehrlich bin verstehe ich nicht so recht wie sich die Problematik jetzt genau äussert.

    cu,
    -ds-

  • Warum "verbiegst" Du SSH von Port 22 auf 443 und dann noch HTTPS von 443 auf 80?

    Lass doch HTTPS auf 443 und versuche SSH von 22 auf 80 zu verlegen.

    Am Besten ist aber, Du sprichst mit Deinem Netzwerkadmin über eine Lösung. Sollte Deine "Durchtunnelung" der Firewall nämlich entdeckt werden kann das unangenehme arbeitsrechtliche Folgen für Dich haben. Über einen SSH Tunnel können nämlich beliebige weitere Ports auch von außen nach innen geschaltet werden, so dass die Funktion der Firewall ausgehöhlt wird und sie nicht mehr den erwarteten Schutz bietet.

  • ...Sollte Deine "Durchtunnelung" der Firewall nämlich entdeckt werden kann das unangenehme arbeitsrechtliche Folgen für Dich haben. Über einen SSH Tunnel können nämlich beliebige weitere Ports auch von außen nach innen geschaltet werden, so dass die Funktion der Firewall ausgehöhlt wird und sie nicht mehr den erwarteten Schutz bietet...

    Full ACK. "Unangenehme arbeitsrechtliche Folge" kann eine fristlose Kündigung sein :exclamation: So schön und einfach Tunnel sind um solche Beschränkungen zu umgehen - die FW meines Arbeitgebers würde ich deshalb nie umgehen. Wie sieht es aus mit einem VPN als Alternative? Heisst aber dass der VPN Port in der FirmenFW offen sein muss.

  • SSH und HTTPS kann man prinzipiell auf einem Port zur selben Zeit laufen lassen, da SSH ein "Server-sends-first"-Protokoll, und HTTPS ein "Client-sends-first"-Protokoll ist. An dem Port muss ein Programm lauschen, welches anhand des Client-Verhaltens in den ersten X Millisekunden (kommt da was oder nicht?) entscheidet, ob es sich um SSH oder HTTPS Daten handelt. Die Pakete werden dann an den echten lokalen Port vom sshd bzw. httpd umgeleitet.

    Es gibt mindestens zwei solcher Multiplexer:
    - sslh gibt es bereits als Debian/Raspbian Paket.
    - sshttp gibt es nur zum selbst kompilieren, hat aber den Vorteil, dass die Quell-IP der umgebogenen IP-Pakete nicht verlorengeht.


  • SSH und HTTPS kann man prinzipiell auf einem Port zur selben Zeit laufen lassen, da SSH ein "Server-sends-first"-Protokoll, und HTTPS ein "Client-sends-first"-Protokoll ist.

    <Begin Krümelkacker-Modus>
    Über Port 443 erreichst Du dann einen Multiplexer - also wieder nur einen Service. Der managed dann die Verteilung. Also ist es eben nicht - und schon gar nicht prinzipiell - möglich, zwei Services einem Port zuzuweisen.
    Du könntest Dir natürlich selbst einen kombinierten ssh/https/ntp/... Service stricken. Aber selbst dann wäre es eben nicht prinzipiell sondern nur unter Einsatz Deiner Spezialsoftware möglich.
    <End of Krümelkacker-Modus>

    Sorry, aber genau das sind die Ungenauigkeiten, die einem das Leben schwer machen, wenn man jemandem dabei helfen möchte, eine Frage zu beantworten oder ein Problem zu lösen.

    cu,
    -ds-

  • Danke für Euer aller Tipps. Ich werde mir die Multiplexer mal anschauen und auch testen, ob ich ggf. SSH auf 80 umlegen kann. Das kam mir bislang noch nicht in den Sinn, da ich ursprünglich auch den Webserver da lauschen haben wollte, den ich nun aber mit SSL-Zertifikat nicht zwingend brauche.


  • Danke für Euer aller Tipps. Ich werde mir die Multiplexer mal anschauen und auch testen, ob ich ggf. SSH auf 80 umlegen kann. Das kam mir bislang noch nicht in den Sinn, da ich ursprünglich auch den Webserver da lauschen haben wollte, den ich nun aber mit SSL-Zertifikat nicht zwingend brauche.

    Also ich verstehe das Ganze immer noch nicht so recht. Das ist m.E. doch ein hausgemachtes Problem. Musst Du wirklich während der Arbeitszeit von Deinem Webserver so sensible Informationen abrufen, dass Du sie verschlüsseln musst?

    cu,
    -ds-

  • Da spielen mehrere verschiedene Aspekte eine Rolle... zu komplex um das im Detail zu erklären, nur soviel: Es geht um den Zugriff auf meine alten Arbeitsergebnisse aus meinen vorherigen Arbeitsstellen, die ich beim neuen Arbeitgeber nicht lokal ablegen will (und darf). Dafür brauche ich ssh bzw. teilweise den Tunnel.

    Die ganz andere Baustelle ist die ownCloud-Installation, dort soll der Zugriff in erster Linie für die Familie für Dokumente und Fotos bestehen... das hätte ich halt ganz gerne auch verschlüsselt.

  • Naja ... die Frage ist halt, ob man in der Tat den Datenstrom verschlüsseln muss oder ob man sich das schenken kann.
    Bei Deinen Arbeitsunterlagen sehe ich das - in Grenzen - ja noch ein.
    Ich weiß jetzt nicht, wieviel CPU-Resourcen für die Crypterei verballert werden. Aber in Anbetracht der doch eher begrenzten Leistungsfähigkeit des Prozessors (iPhone der ersten Generation, wenn ich mich nicht irre) bin ich der Meinung, dass es nicht sinnvoll ist den kleinen Kerl unnötigerweise auszuquetschen.

    cu,
    -ds-

  • Bis er raucht! ;) Im Ernst, die Leistungsfähigkeit ist doch ohne Probleme da. Die ownCloud-Installation ist nicht die fixeste, aber da ist eh die Upload-Geschwindigkeit nach außen als Flaschenhals da. Aber von der Rechenpower hatte ich mit Overclocking auf Medium und nur 16 MB GPU noch keine erstzunehmenden Probleme :)



  • Full ACK. "Unangenehme arbeitsrechtliche Folge" kann eine fristlose Kündigung sein :exclamation: So schön und einfach Tunnel sind um solche Beschränkungen zu umgehen - die FW meines Arbeitgebers würde ich deshalb nie umgehen. Wie sieht es aus mit einem VPN als Alternative? Heisst aber dass der VPN Port in der FirmenFW offen sein muss.

    Um mal meinen NGFW Distributor zu zitieren : HTTPS ist das neue TCP.

    Die Next Generation Firewalls ala Palo Alto erkennen dieses im https stream und blocken den Tunnel.

    Um es einfach zu machen :
    OpenVPN auf den PI ( 443. TCP ) und gut ist.
    Darfst du auf deinem Firmenrechner nichts installieren, wovon ich ausgehe, wäre der OpenVPN Access Server noch eine Alternative. Allerdings erkennt eine NGFW so eine Schweinerei auch.

    By the Way, wenn du mein User wärst, wäre danach der Zugang zum Internet erst mal weg.
    So ein Proxy und/oder Firewall hat ja seinen Sinn, da passiert ja noch viel mehr als nur Userauth.

    Offizieller Schmier und Schmutzfink des Forum.
    Warum einfach wenn's auch schwer geht ?

    Kein Support per PN !
    Fragen bitte hier im Forum stellen. So hat jeder etwas davon.

    Einmal editiert, zuletzt von Der_Imperator (6. Juni 2013 um 14:49)

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!