Picture of Jürgen 2691
Registered 8 years 289 days
Jürgen 2691 Friday, 7 December 2018, 10:08 PM
Reverse Proxy
Hallo Kollegen,

irgendwie stehe ich auf dem Kabel. Ich versuche verzweifelt einen Reverse Proxy zum fliegen zu bringen. Dieser steht hinter einer Firewall. Der Client ist ein Smartphone. Ich teste mit einem iPhone. Der Kunde hat aber am Ende ein Android.
Die Anfrage kommt durch die Firewall durch zum Reverse Proxy und von dort auch zur PBX. Die sagt allerdings nur GK "Discover incoming" mit der RP-Adresse und das war es dann. Egal was ich irgendwo als Gatekeeper-ID oder Domain eintrage. Entweder es wird nicht weitergeleitet oder nur "Discover incoming" aber keine Registrierung.

Es ändert auch nichts ob ich die Rufnummer eintrage oder den Namen oder die HardwareID. Immer gleich. Keine Registrierung. Das Smartphone soll sich mit der zweiten Hardware ID anmelden.

Auf dem IPhone sehe ich einen timeout.

Bin für jede Unterstützung dankbar.

VG
Jürgen
Picture of Muschelpuster
Registered 7 years 344 days
Muschelpuster Saturday, 8 December 2018, 10:53 AM
Re: Reverse Proxy
Der Client muss den RP über die eingetragene GK-Adresse erreichen. Für das Forwarding der Registrierung nutzt der RP dann die GK-ID.
Ist in den globalen Einstellungen der PBX der RP hinterlegt und hat das im User-Object auch die Option RP gesetzt?

kurze Grüße
Niels
Picture of Jürgen 2691
Registered 8 years 289 days
Jürgen 2691 Saturday, 8 December 2018, 12:34 PM
Re: Reverse Proxy
Hallo Niels,

vielen Dank für die Hilfe. Der Client kommt über en RP. Das sehe ich am RP als auch im Wireshark. Die Einstellungen sind beim Client gesetzt. Wenn ich das Passwort beim Client entferne sehe ich auch auf der PBX eine Registrierungs-
Anfrage. Mit Passwort kommt nur das Discover. Wenn ich den Client ohne RP direkt auf die PBX sende registriert er sich.

VG
Jürgen
RP.png

Picture of Muschelpuster
Registered 7 years 344 days
Muschelpuster Monday, 10 December 2018, 06:55 AM
Re: Reverse Proxy
Moin Jürgen,

Änderst Du die Einstellungen Deines Endgerätes in Abhängigkeit, von wo Du es registrieren willst? IMHO könnte nur noch da das Problem liegen.
Ich versuche immer, die externen Namen auch von intern im DNS abzubilden. Dann muss ich zum Einen nicht am Endgerät fummeln, um es von drinnen nach draußen zu Tragen, zum Anderen bin ich mir auch sicher, dass die Einstellungen stimmen.
Oder konkreter gefragt: Kann sich das Phone von intern auch registrieren, wenn die GK-ID eingetragen ist?

faule Grüße
Niels
Picture of Jürgen 2691
Registered 8 years 289 days
Jürgen 2691 Monday, 10 December 2018, 01:42 PM
Re: Reverse Proxy
Hallo Niels,

auch die internen Telefone können sich nicht registrieren wenn die Gatekeeper-ID gesetzt wird. Ich habe testweise einmal die Gatekeeper ID im DHCP-Pool der Telefone eingetragen. Dann ging auch nichts mehr.

Ich habe nach extern die gleichen Namen wie intern. Allerdings gibt es für die Gatekeeper ID keinen DNS-Eintrag.

Viele Grüße
Jürgen
Picture of Muschelpuster
Registered 7 years 344 days
Muschelpuster Monday, 10 December 2018, 02:42 PM
Re: Reverse Proxy
Na, dann haben wir es doch wink
Die Gatekeeper-ID muss gleich dem Systemnamen sein, wenn sie angegeben wird! Mag sein, dass man das noch irgendwo einstellen kann, aber ich wüsste nicht wo.
Also packe Deinen System-Namen als GK-ID in die Endgeräte und reagiere auf die GK-ID im RP.

doppelt geprüfte Grüße
Niels
Picture of Jürgen 2691
Registered 8 years 289 days
Jürgen 2691 Monday, 10 December 2018, 02:53 PM
Re: Reverse Proxy
Hört sich gut an.
Muss ich heute Abend oder morgen Vormittag einmal testen.

Vielen Dank.


Picture of Peter 627
Registered 13 years 122 days
Peter 627 Monday, 10 December 2018, 03:57 PM
Re: Reverse Proxy
Der Systemname ist die H.323 GK-ID und das ist meines Wissens nicht änderbar.

Ich kann hierzu empfehlen mal eine Plain H323-Registrierung (nicht TLS) im LAN mit dem Wireshark aufzuzeichen und dann zu betrachten.

Die interne PBX hat halt noch den Vorteil, dass Sie weiß wie ihre Gatekeeper ID ist und deswegen kann Sie diese bei fehlender Registrierungsinformation an den Endpunkt zurückgeben der dann wieder eine neue Registrierung schickt mit enthaltener GK-ID.

Der ReverseProxy hingegen, kann ohne die Gatekeeper ID nicht wissen, wohin der Request übergeben werden soll. Jedoch ist dem Reverseproxy egal wie das Paket mit der Registrierung zu ihm kam. DNS Name usw. wird nicht betrachtet, nur der Inhalt des Protokolls und die darin enthaltene GK-ID sind ausschlaggebend.
Ob man in diesem Fall die Öffentliche IP, irgendeinen Puplic DNS der auf die Öffentliche IP verweist verwendet hat, ist für die direkte H323/TLS registrierung egal.
(Erst beim Redirect zu einer anderen PBX würde der DNS wieder interessant).

Bei H.323/TLS ist halt nur der SSL Mantel drum rum, ansonsten ändert sich nicht viel am Aufbau des Protokolls.

Du kannst zum Test ja mal irgendeinen freien Puplic DNS / Dyn DNS Eintrag auf die Öffentliche IP deines Reverseproxies umleiten und diesen als primary Gatekeeper angeben. Du wirst sehen, ohne das du etwas am RVP änderst, wird es funktionieren, solang die GK-ID im Protokoll stimmt und am RVP bekannt ist..

Wichtig ist auch noch, dass man am Endpunkt Groß/Kleinschreibung der GK-ID beachtet, auch wenn im Reverseproxy augenscheinlich alles kleingeschrieben ist, ist es innerhalb des Protokolls nicht verändert und wird somit Berücksichtigt. // da bin ich schon einige male drüber gestolpert smile

Gruß

Peter
Picture of Jürgen 2691
Registered 8 years 289 days
Jürgen 2691 Tuesday, 11 December 2018, 09:08 AM
Re: Reverse Proxy
Hallo an Alle,

vielen Dank für die Hilfe. Grundsätzlich funktioniert es jetzt. Mit kleinen Ausnahmen:

Hintergrund ich komme nicht mit HTTPS zur PBX. Ich muss noch versuchen den MyPBX-IOS-Client mit einem anderen Port zum HTTPS zur PBX zu bewegen.
Im Moment noch folgendes verhalten:

Ich habe ein Boolean-Objekt um extern Anrufe umzuleiten.
Intern sehe ich im MyPBX-Web die dem User zugeordneten Boolean-Objekte nur wenn ich HTTPS verwende. Mit HTTP sehe ich diese nicht.

Im MyPBX-IOS-Client sehe ich die Boolean-Objekte und kann diese auch steuern.
Im MyPBX-HTTPS-Client sehe ich auch die Änderung die ich von Extern (IOS) durchführe. Führe ich im MyPBY-HTTPS-Client eine Änderung durch, wird diese mir nicht auf den IOS-Client signalisiert. Hängt das evtl. mit dem fehlenden HTTPS zusammen?

Die PBX hat auch das Verhalten, das ich das SYSLOG nur unter HTTPS sehe.
Evtl. ein grundsätzliches Problem?

Viele Grüße
Jürgen




Picture of Muschelpuster
Registered 7 years 344 days
Muschelpuster Tuesday, 11 December 2018, 09:21 PM
Re: Reverse Proxy
Hallo Jürgen, Wenn ich das richtig sehe, dann hast Du das Boolean-Objekt auf Taste gelegt. Das geht ja über H.323 und bedarf keiner HTTP(s)-Verbindung. Hast Du die Gruppe, welche den User mit dem Boolean verknüpft im User-Objekt unter 'Group Indications' ausgewählt?

verknüpfte Grüße
Niels
Picture of Jürgen 2691
Registered 8 years 289 days
Jürgen 2691 Wednesday, 12 December 2018, 08:05 AM
Re: Reverse Proxy
Hallo Niels,

habe mich wahrscheinlich undeutlich ausgedrückt. Das Objekt funktioniert. Von dem Smartphone als auch von MyPBX-WEB. Launcher kann ich nicht testen.
Das Problem ist einmal das das Objekt nur von MyPBX-WEB steuerbar ist wenn ich diesen in einer HTTPS-Session starte. Wenn ich nur HTTP verwende, kann ich als App zwar auswählen, bekomme aber keine Buttons zum Steuern angezeigt. Das zweite Problem ist der Abgleich von Änderungen an dem Bol-Objekt. Der erfolgt nur dann, wenn diese vom Smartphone ausgeführt werden. Wenn ich am Smartphone das Bol-Objekt aktiv setze, sehe ich das auch in MyPBX-Web. Wenn ich diese vom MyPBX-Web ausführe wird die Änderung nicht am Smartphone angezeigt. Das ändert sich auch nicht wenn ich die Gruppenzugehörigkeit setze.
In dem Bildern sieht man oben die HTTPS-Verbindung und unten die HTTP. Beide vom gleichen Rechner mit dem gleichen Browser. Wobei das mit dem Browser noch ein Security-Thema sein könnte. Der Abgleich mit zwischen den beiden Applikationen ist das eigentliche Problem.
myPBX.png

← You can define your color theme preference here