none
ActiveSync über ReverseProxy (Mobile Device Management -Sophos Mobil Control) RRS feed

  • Frage

  • Sehr geehrte Damen und Herren,

    ich arbeite in einem Systemhaus, indem ich das Produkt Sophos Mobil Control eingeführt habe. Dabei geht es um eine Multimandantenplattform zur Verwaltung von Smartphones mehrerer Mandanten. Unter anderem wird der ActiveSync Verkehr überwacht und bei Verstoß gegen Richtlinien getrennt. Dabei kommt also der TMG zum tragen, da ich einen Reverseproxy mit Wildcardzertifikat benötige. Dazu eine kurze Erklärung:

    Im Internet gibt es eine Domain, in der ich mehrere Subdomains anlege z.B.:

    Kunde1.mdm.de

    Kunde2.mdm.de

    Kunde3.mdm.de

    usw.

    Die leite ich direkt an den TMG (Dieser steht mit einer Lankarte direkt im Internet (IPOE))

    Der TMG nimmt die HTTPS Anfragen an und leitet sie über eine zweite Lankarte an meinen "SMC- Sophos Mobil Control" Server weiter an einen jeweils internen Port:

    Kunde1.mdm.de= weiterleiten an 192-168.1.1 an Port 10001

    Kunde2= iweiterleiten an 192-168.1.1 an Port 10002

    usw.

    Die handys werden später so konfiguriert, dass sie die Anfragen für Mail eben an z.B. kunde1.mdm.de senden.

    Dieses Funktioniert soweit auch mittels der Weblistener. Zumindest kann ich im Protokoll des TMG sehen, das dieser alle Anfragen korrekt weiterleitet.

    Jedoch schlägt dieses immer Fehl. Der Fehler lautet:

    Fehlgeschlagener Verbindungsversuch

    Protokolltyp: Webproxy (Reverse)

    Status: 10060 Ein Verbindungsversuch ist fehlgeschlagen, da die Gegenstelle nach einer bestimmten Zeitspanne nicht richtig reagiert hat, oder die hergestellte Verbindung war fehlerhaft, dader verbundene Host nicht reagiert hat.

    Es bleibt also die Frage was ich noch falsch gemacht habe, denn die eingehenden Activesync Anfragen müssen an den EAS (Exchange Active Sync Proxy) weitergelitet werden. Telnet auf den SMC-Server mit dem jeweiligen Kundenport ist in Ordnung (geht also). Ich habe die Vermutung, dass ich noch etwas falsch konfiguriert habe, was ggf. mit der Authentifizierung zu tun haben könnte.

    Vom Herstellerbekomme ich leider keine Hilfe dazu, da diese nur einen Reverse Proxy verlangen ihn aber selber nicht bereitstellen

    PS: Die Sophos Dokumentation zeigt mein Vorhaben sehr schön:

    http://www.sophos.com/de-de/medialibrary/PDFs/

    documentation/smc_3_ig_eng_installation.ashx


    (Seite 34 Bild 1)

    Ich hoffe mein Beschreibung ist verständlich genug und jemand von Ihnen kann mir weiterhelfen.

    Vorab vielen Dank für die Unterstützung.

    Sabriel


    Edit:

    ich habe nun von dem SMC Server mit Fireshark mal gesnifft.Dort konnte ich erkennen, dass eine eingehende Verbindung scheitert bzw. abgelehnt wird weil die Header Checksumme = 0x0000 anstelle einer anderen ist. Scheint mir so, als würde der TMG etwas noch falsch weiter geben oder?Vlt hilft euch das.

    • Bearbeitet Sabriel86 Donnerstag, 2. Mai 2013 12:24 neue Erkenntnis
    Donnerstag, 2. Mai 2013 11:49

Antworten

  • Hallo, Problem gelöst.

    Lösung: Die Regel muss wie folgt aufgebaut sein:

    Name          Aktion          Protokoll     Von/Listener           Nach                     Bedinung

    Kunde1        Zulassen      HTTPS        EAS Listener      kunde1.mdm.de          Alle Benutzer

                                                           (extern, 443 mit Wildcard zertifikat)

    Bei mir war "Nach" immer die IP des EAS Servers. das muss jedoch die subdomain sein.

    Vielen Dank für Ihre Hilfe, sie haben mir wirklich gut weigerheolfen!

    • Als Antwort markiert Sabriel86 Montag, 6. Mai 2013 11:13
    Montag, 6. Mai 2013 11:13

Alle Antworten

  • Sehr geehrte(r) Herr/Frau Sabriel,

    Der Sophos Proxy nimmt die Anfragen von jeder IP entgegen oder nur von einer bestimmten IP?
    In der Veroeffentlichungsregel kannst Du einstellen, ob die Anfrage vom TMG Server oder vom Client kommen soll. Wenn Du sagt die Anfrage soll vom Client kommen, muss der Sophos EAS Proxy SecureNAT client sein.
    Telnet geht vom TMG Server zum EAS Proxy oder/und von den Clients im Internet?
    Ich wuerde in den EAS Proxy Logs mal schauen ob da eine Anfrage rein kommt. Ich vermute das die Anfrage dort abgelehnt wird.
    Was sagt der Test Button in der Veroeffentlichungsregel?


    regards Marc Grote aka Jens Baier - www.it-training-grote.de - www.forefront-tmg.de - www.nt-faq.de

    Donnerstag, 2. Mai 2013 12:50
    Moderator
  • Sehr geehrte(r) Herr/Frau Sabriel,

    Der Sophos Proxy nimmt die Anfragen von jeder IP entgegen oder nur von einer bestimmten IP?

    Grundsätzlich von jeder IP. Er lauscht eben auf diversen Ports (10001 z.B) und prüft anhand einer DB ob und wohin weitergeleitet werden soll

    In der Veroeffentlichungsregel kannst Du einstellen, ob die Anfrage vom TMG Server oder vom Client kommen soll. Wenn Du sagt die Anfrage soll vom Client kommen, muss der Sophos EAS Proxy SecureNAT client sein.

    Ist "vom Client" eingestellt

    Telnet geht vom TMG Server zum EAS Proxy oder/und von den Clients im Internet?

    Telnet geht vom TMG zum SMC/EAS Proxy auf port 10001 z.b. Aus dem Internet/vom Client nur über 443.

    Ich wuerde in den EAS Proxy Logs mal schauen ob da eine Anfrage rein kommt. Ich vermute das die Anfrage dort abgelehnt wird.

    Warscheinlich werden Sie mir das nicht beantworten können oder? Aberdas log sagt:

    2013-05-02 14:11:29,894 WARN  [New I/O server worker #1-1 InboundHandler_kunde1.mdm.de] Exception occured on inbound channel
    java.lang.IllegalArgumentException: empty text
        at org.jboss.netty.handler.codec.http.HttpVersion.<init>(HttpVersion.java:97)
        at org.jboss.netty.handler.codec.http.HttpVersion.valueOf(HttpVersion.java:62)
        at org.jboss.netty.handler.codec.http.HttpRequestDecoder.createMessage(HttpRequestDecoder.java:76)
        at org.jboss.netty.handler.codec.http.HttpMessageDecoder.decode(HttpMessageDecoder.java:187)
        at org.jboss.netty.handler.codec.http.HttpMessageDecoder.decode(HttpMessageDecoder.java:101)
        at org.jboss.netty.handler.codec.replay.ReplayingDecoder.callDecode(ReplayingDecoder.java:465)
        at org.jboss.netty.handler.codec.replay.ReplayingDecoder.cleanup(ReplayingDecoder.java:544)
        at org.jboss.netty.handler.codec.replay.ReplayingDecoder.channelDisconnected(ReplayingDecoder.java:444)
        at org.jboss.netty.channel.Channels.fireChannelDisconnected(Channels.java:354)
        at org.jboss.netty.channel.socket.nio.NioWorker.close(NioWorker.java:587)
        at org.jboss.netty.channel.socket.nio.NioServerSocketPipelineSink.handleAcceptedSocket(NioServerSocketPipelineSink.java:111)
        at org.jboss.netty.channel.socket.nio.NioServerSocketPipelineSink.eventSunk(NioServerSocketPipelineSink.java:68)
        at org.jboss.netty.channel.Channels.close(Channels.java:714)
        at org.jboss.netty.channel.AbstractChannel.close(AbstractChannel.java:194)
        at org.jboss.netty.channel.ChannelFutureListener$1.operationComplete(ChannelFutureListener.java:41)
        at org.jboss.netty.channel.DefaultChannelFuture.notifyListener(DefaultChannelFuture.java:397)
        at org.jboss.netty.channel.DefaultChannelFuture.addListener(DefaultChannelFuture.java:143)
        at de.dialogs.easproxy.InboundHandler.closeOnFlush(Unknown Source)
        at de.dialogs.easproxy.InboundHandler.exceptionCaught(Unknown Source)
        at org.jboss.netty.handler.codec.replay.ReplayingDecoder.exceptionCaught(ReplayingDecoder.java:456)
        at org.jboss.netty.channel.Channels.fireExceptionCaught(Channels.java:426)
        at org.jboss.netty.channel.AbstractChannelSink.exceptionCaught(AbstractChannelSink.java:47)
        at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:268)
        at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:255)
        at org.jboss.netty.channel.socket.nio.NioWorker.read(NioWorker.java:343)
        at org.jboss.netty.channel.socket.nio.NioWorker.processSelectedKeys(NioWorker.java:274)
        at org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:194)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)

    Was sagt der Test Button in der Veroeffentlichungsregel?

    der Testbutton sagt, dass die webseitenaufrufung fehlschlägt, der ping aber geht.

    Es ist ja aber auch keine website hinter der url, da dort ja nur der eas horcht, daher habe ich das als nicht wichtig empfunden.

    Zum Thema SecureNat muss ich sagen, dass der SMC/EAS über einen anderes GW geht. ich baue das aber jetzt eben um, so dass der TMG gateway ist.


    regards Marc Grote aka Jens Baier - www.it-training-grote.de - www.forefront-tmg.de - www.nt-faq.de


    Gesagt getan:

    Siehe da, ein anderer Fehler:

    Status: 1790 Netzwerkanmeldung ist fehlgeschlagen.

    Ich prüfe gerade was das nun sein kann. Vielen Dank bis hierher schonmal.

    Edit:

    Ich habe nun auch nochmals mit dem Sophos Support kontakt aufgenommen. Dieser spekuliert, dass die Daten vom TMG als https weiter gegeben werden.Sophos setzt jedoch "plain http" vorruas.

    Ich habe nun viel gelesen über redirecting jedoch ging es da um das umleiten von http zu https. In meinem Fall muss es ja umgekehrt sein. Hat jemand eine Idee wie ich das realsieren kann?

    • Bearbeitet Sabriel86 Donnerstag, 2. Mai 2013 14:33
    Donnerstag, 2. Mai 2013 13:14
  • Hi,http://technet.microsoft.com/en-us/library/cc995200.aspx


    regards Marc Grote aka Jens Baier - www.it-training-grote.de - www.forefront-tmg.de - www.nt-faq.de

    Donnerstag, 2. Mai 2013 15:06
    Moderator
  • Guten Morgen,

    diese Seite hatte ich mir gestern schon angesehen. So gesehen Funktioniert das anscheinend.Ich bekomme jedoch weiterhin die Meldung:

    Status: 1790 Netzwerkanmeldung ist fehlgeschlagen.

    Was könnte das sein? Ich meine ich habe jegliche Art von Authentifizierung abgeschaltet. Hat noch jemand eine Idee?

    Freitag, 3. Mai 2013 07:49
  • Hi,

    wie sind denn die Authentifzierungseinstellungen in der Veroeffentlichungsregl?
    Sie muessen in dem Fall auf "no authentication und "Client cannot authenticate directly" stehen (habe gerade keinen TMG zur Hand, deswegen mag der Text nicht hundertpro stimmen


    regards Marc Grote aka Jens Baier - www.it-training-grote.de - www.forefront-tmg.de - www.nt-faq.de

    Freitag, 3. Mai 2013 07:59
    Moderator
  • Hi,

    vielen Dank für die Info.

    Ja das stimmt was Sie schreiben gut gemerkt ;)

    Genauso habe ich die Einstellungen gesetzt. Hatte zur Einrichtung auch ein TMG Buch zur Hand sowie eine Anleitung.


    Jedoch bleibt der Fehler bestehen.
    • Bearbeitet Sabriel86 Freitag, 3. Mai 2013 09:10
    Freitag, 3. Mai 2013 08:16
  • Hi,

    die Veroeffentlichungsregel gilt fuer "Alle Benutzer"? Was sagt das Sophos EAS Log?


    regards Marc Grote aka Jens Baier - www.it-training-grote.de - www.forefront-tmg.de - www.nt-faq.de

    Freitag, 3. Mai 2013 10:56
    Moderator
  • Hallo, Problem gelöst.

    Lösung: Die Regel muss wie folgt aufgebaut sein:

    Name          Aktion          Protokoll     Von/Listener           Nach                     Bedinung

    Kunde1        Zulassen      HTTPS        EAS Listener      kunde1.mdm.de          Alle Benutzer

                                                           (extern, 443 mit Wildcard zertifikat)

    Bei mir war "Nach" immer die IP des EAS Servers. das muss jedoch die subdomain sein.

    Vielen Dank für Ihre Hilfe, sie haben mir wirklich gut weigerheolfen!

    • Als Antwort markiert Sabriel86 Montag, 6. Mai 2013 11:13
    Montag, 6. Mai 2013 11:13