UAG - Forefront unified Access Gateway (UAG)
Achtung:
Important Changes to the Forefront Product Line
http://blogs.technet.com/b/server-cloud/archive/2013/12/17/important-changes-to-the-forefront-product-line.aspx
Ab 1. Jul 2014 wird UAG nicht mehr verkauft.
Mainstream Support gibt es bis 14. Apr 2015
Microsoft verweist als Ersatz auf den Windows 2012R2 Web Application Proxy (Siehe http://www.msxfaq.de/internet/wap.htm) und die Windows 2012 Direct Access Funktion
Wenn der Zugriff auf IPv6 Ressourcen per Direct Access nicht ausreichend ist, oder die Veröffentlichung von Outlook Webzugriff über einen einfachen ReverseProxy a la TMG nicht ausreicht, dann ist UAG eine interessante Lösung auf der Microsoft Plattform.
- Choosing Between Forefront
TMG or Forefront UAG für Publishing Scenarios
http://blogs.technet.com/b/tomshinder/archive/2011/04/19/choosing-between-forefront-tmg-or-forefront-uag-for-publishing-scenarios.aspx - Overview of Forefront UAG
Direct Access
http://blogs.technet.com/edgeaccessblog/archive/2009/07/27/deep-dive-into-Direct Access-part-1.aspx - 10 Reasons Why You Should
NOT use UAG für Direct Access…anymore.
http://blog.concurrency.com/infrastructure/10-reasons-why-you-should-not-use-uag-for-Direct Access-anymore/ - 2710791 Description of Forefront unified
Access Gateway 2010 Service Pack 2
http://www.microsoft.com/en-us/download/details.aspx?id=30459 - How does the Microsoft
Windows 2012 R2 - Web
Application Proxy compare to the
Microsoft Forefront UAG 2010?
http://blog.peterdahl.net/post/How-does-the-Mirosoft-Windows-2012-R2-Web-Application-Proxy-compare-to-the-Microsoft-Forefront-UAG-2010
Installation
Wer UAG auf einer VM installiert, muss zumindest das 4GB Limit für RAM können, welches UAG beim Setup prüft.
Am besten laden Sie sich die aktuelle Version von UAG aus ihrem Microsoft Lizenzportal herunter, da dann oft das aktuellste ServicePack und sogar Rollup-Updates schon integriert oder automatisch nachinstalliert werden. Die Installation ist durch einen Assistenten geführt und fragt im wesentlichen nur den Zielpfad der Installation ab. Danach legt das Setup schon los und installiert UAG (mit darunter liegendem TMG) und mit der passenden CD auch gleich das SP1 Rollup1. Dazu sind eventuell mehrere Neustarts erforderlich.
Ich beschränke mich hier auf einen "Single Server", den man aber dank Virtualisierung sehr einfach auch "besser verfügbar" machen kann. Es sei aber nicht verschwiegen, dass Sie auch mit zu 8 UAG-Server in einem Array mit NLB installieren können.
Nach einigen Neustarts sollten Sie dann UAG auf dem Server haben und dank dem darunter liegenden TMG ist das System auch ziemlich "dich". Das geht also soweit, dass der Server weder per PING noch per RDP mehr erreichbar ist, selbst wenn er das vorher erreichbar war.
Hinweis
Ihr UAG steht mit einem Bein sehr nahe am
Internet. Ratsam ist immer eine Filterung der
Pakete "davor" aber selbst dann sollten Sie in
eigenem Interesse regelmäßig Updates
installieren. Wundern Sie sich nicht, wenn auch
TMG oder SQL mal ein Update benötigt.
- Updating SQL Server on
Forefront TMG 2010
http://tmgblog.richardhicks.com/2011/11/28/updating-sql-server-on-forefront-tmg-2010
Erstkonfiguration
Mit dem ersten Start der UAG-Konsole aus dem Menü wird der Admin schon dazu gezwungen die ersten drei Schritte durchzuführen
Und jeder der Schritte ist in weniger als einer Minute eigentlich vollzogen.
- Schritt 1 ist die
Konfiguration der
NetzwerkUmgebung
Hier sollten Sie auch alle internen Subnetze angeben und später müssen diese natürlich auch per Leitwege bekannt gegeben werden. Das Default Gateway des UAG-Servers ist später das Internet. - Schritt 2 definiert den
Server
Die meisten Firmen werden vielleicht nicht gleich mit einem Array starten, sondern mit einem einzelnen Server arbeiten, der aber per Virtualisierung natürlich auch etwas "besser" verfügbar gemacht werden kann
- Im Schritt 3 wird dann nur noch Windows Update und Feedback an Microsoft konfiguriert-
Mit dem Abschluss der erstmaligen Konfiguration werden die Einstellungen angewendet. Die Konfiguration wird dabei in einer Datei zusätzlich gesichert.
Die Angabe eines Kennworts ist erforderlich-.
Bedenken Sie bitte, dass alle KonfigurationsÄnderungen in einer darunter liegenden SQL-Datenbank abgespeichert werden und die UAG-Dienste sich diese Einstellungen regelmäßig "ziehen". Änderungen werden also nicht immer sofort aktiv.
Basiseinrichtung
Ich habe ja schon geschrieben, dass TMG mit installiert wird und da TMG durchaus als Firewall bezeichnet werden kann, schützt es den Server auch gegen eingehende Verbindungen, die noch nicht freigeschaltet sind. Sehr viele Einstellungen von TMG werden direkt durch UAG kontrolliert, aber einige Einstellungen sind in UAG nicht möglich. Wenn Sie aber den IE9 installiert haben, dann können Sie TMG gar nicht erst konfigurieren, das der IE9 einen Fehler meldet.
Die Lösung besteht darin, entweder IE9 wieder zu deinstallieren oder die fragliche Zeile im Skript zurecht zu rücken.
Editieren Sie folgende Datei
C:\Program Files\Microsoft Forefront Threat Management Gateway\UI_HTMLs\TabsHandler\TabsHandler.htc
Und kommentieren Sie die Zeilen aus, die den String "paddingTop" enthalten, z.B. durch ein "//" am Anfang der Zeile. Es müssten genau drei Zeilen sein (UAG 2010 SP1 Rollup 1)
- IE9 vs. TMG…
http://blog.forefront-tmg.de/?p=574
Danach können Sie dann auch die TMG-Konfiguration anpassen. Zwei weitere "Default-Einstellungen" sind zwar sicher aber lassen den ein oder anderen Admin vielleicht verzweifeln. In kleineren Umgebungen möchten Administratoren zumindest von Intern auch per RDP auf ihre Server und ein PING möge bitte zur Fehlersuche auch beantwortet werden. TMG hat dazu zwei eingebaute Regeln in den System Policies, die man aber entsprechend anpassen muss, denn die hinterlegten Gruppen sind erst einmal leer.
Wer es nicht ganz so sicher braucht, addiert hier einfach das Netzwerk "Internal", damit von intern eine Verbindung per RDP und ein test per ICMP möglich ist.
Direct Access
UAG wird natürlich gerne eingesetzt, um das in Windows 2008 R2 Direct Access um die IPv4 Erreichbarkeit der internen Systeme zu erweitern. Wer UAG auf einem bislang als DA-Server genutzten System installiert, wird darauf hingewiesen, dass die GPOs von DA und UAG in Konflikt stehen und ersetzt werden.
UAG entfernt also die DA Richtlinien, weil es selbst deutlich mehr Möglichkeiten der Konfiguration bietet.
Achtung:
Die bisherige Direct Access-Verwaltung sollten
Sie nicht mehr starten, da Sie mit UAG und den
erweiterten Richtlinien und Filterfunktionen von
TMG nicht umgehen kann und sogar Fehlaussagen
trifft:
Der Assistent erfragt dann wie bei Windows 2008R2 selbst die Server, anhand der ein Client erkennen kann, ob er intern oder extern ist.
Nutzen Sie immer HTTPS oder ein Dateizugriff. Es gibt nämlich Provider wie z.B. die Telekom mit einer "Navigationshilfe". Wenn ein Servernamen von "zuhause" nicht erreichbar ist, dann sendet der Telekom-DNS-Server dennoch eine IP-Adresse. Der Anwender wird bei einem Zugriff mit dem Browser auf die Telekom Suchseite umgelenkt. Dieses Verhalten kann der Anschlussinhaber Sie aber im Telekom Kundencenter abschalten.
- Basic troubleshooting steps für UAG Direct Access
http://blogs.technet.com/b/edgeaccessblog/archive/2010/04/07/basic-troubleshooting-steps-for-uag-Direct Access.aspx - IPv6 and Direct Access
Troubleshooting Cheat Sheets
http://blogs.technet.com/b/tomshinder/archive/2011/04/19/ipv6-and-Direct Access-troubleshooting-cheat-sheets.aspx
Download der Visio
Dateien
https://skydrive.live.com/?cid=dae8dcb8662ac00d&sc=documents&id=DAE8DCB8662AC00D!226
- UAG Direct Access and Client
Application Compatibility
Considerations
http://blogs.technet.com/b/tomshinder/archive/2010/06/22/uag-Direct Access-and-client-application-compatibility-considerations.aspx
NAT 64 und UAG
Einer der wesentlichen Gründe für UAG ist der Einsatz von NAT64 und DNS64. Der Client fragt nach einem internen Rechner und die Anfrage landet nicht beim internen DNS-Server sondern beim UAG-DNS64-Server.
Dieser fragt dann den internen DNS-Server um die IP-Adresse zu erhalten. Liefert der interne DNS-Server nun nur eine IPv4-Adresse zurück, dann ersetzt der DNS64-Server die IPv4-Adresse durch eine IPv6-Adresse. Das kann man hier beim Zugriff auf "Intranet" von Net at Work gut sehen.
intranet.netatwork.de ---------------------------------------- Eintragsname . . . . . : intranet.netatwork.de Eintragstyp . . . . . : 28 Gltigkeitsdauer . . . : 2388 Datenlänge . . . . . . : 16 Abschnitt. . . . . . . : Antwort AAAA-Eintrag . . . . : fd49:5251:304:5554:4:4:c0a8:6427
Dies ist eine "besondere IP-Adresse". Das Subnetz wird in der UAG-Konfiguration hinterlegt:
Und wenn Sie etwas Hexadezimal und Dezimalzahlen umrechnen, dann schauen Sie sich mal die letzten beiden Words "c0a8:6427" an. Daraus kann man problemlos 192.168.100.39 herleiten. Mein Client spricht dann also gefühlt diese IPv6-Adresse an, welche aber direkt beim UAG wieder landet, welcher dann per NAT dieses Paket nach intern umsetzt.
So kann dann auch ein IPv4-System allein über IPv6 erreicht werden. Allerdings erscheint bei dem angesprochenen Server natürlich als anfragende IP-Adresse die IPv4-Adresse des UAG-Gateways. Eine unterscheidung nach IP-Adressen von Clients kann der angesprochene Service daher nicht vornehmen.
- Deep Dive Into Direct Access
– NAT64 and DNS64 In Action
http://blogs.technet.com/b/edgeaccessblog/archive/2009/09/08/deep-dive-into-Direct Access-nat64-and-dns64-in-action.aspx - NAT64 and how it is
different from NAT-PT
http://blogs.technet.com/edgeaccessblog/archive/2009/08/27/deep-dive-into-Direct Access-part-2.aspx
UAG und Authentifizierung
Ein einfacher "Reverse Proxy" ist auch mit UAG möglich. Interessant wird aber die Funktion erst, wenn der UAG die Zugriffe von außen selbst authentifiziert, d.h. dem externen Client eine Anmeldung abverlangt. Das ist relativ einfach möglich. Wenn UAG die Identität des Benutzer kennt, kann er abhängig von der Mitgliedschaft in Windows Gruppen verschiedene Anwendungen auf dem Portal zulassen.
Aber auch ohne das Portal können Anwendungen mit einer vorherigen Authentifizierung geschützt werden. Der Zugriff auf den eigentlichen Server erfolgt nur, wenn der Anwender dem UAG bekannt ist. Das funktioniert sogar für Clients, die gar keine "Portalanmeldung" per se unterstützen wie z.B. Outlook Anywhere (RPC over HTTP) oder ActiveSync (Exchange ActiveSync Server). Der UAG "erkennt" anhand des UserAgent im HTTP-Request, ob es sich um einen Browser handelt, über den ein Anwender auch ein Formular ausfüllen kann, oder ein "Rich-Client", welcher dann per NTLM oder Basic-Auth sich anmelden muss. Auf die anonyme Anfrage liefert der Webservice die beiden Verfahren "Negotiate" und "NTLM". Kerberos kann aus dem Internet natürlich nicht gehen. Auch andere Firewalls bieten sowas an. Beim UAG kann man das auf dem Trunk unter "URL Inspection" abschalten
Man kann natürlich auch immer im lokalen Credential Manager (Tresor) einfach die Anmeldedaten hinterlegen, dann versucht Windows gar kein Negotiate mehr. Das würde ich aber nicht anraten, da nach einem geänderten Kennwort dann wieder der Dialog kommt oder schlimmstenfalls das AD-Konto gesperrt werden kann.
Damit UAG aber dann im Auftrag des Benutzers wieder die nachfolgenden Server erreichen kann, sollte UAG zum einen Mitglied der Domäne sein und Sie natürlich Kereros Constraint Delegation einsetzen.
- How to fix Lync Services
Signin : Type your User name and
password to connect für retrieving calendar data from
outlook
http://msexchangeanywhere.wordpress.com/2011/12/29/how-to-fix-lync-services-signin-type-your-User-name-and-password-to-connect-for-retrieving-calendar-data-from-outlook/ - Forefront UAG registry keys
http://technet.microsoft.com/en-us/library/ee809087.aspx - Trunk properties help : URL
Inspection tab : Block Negotiate
authorization headers
http://technet.microsoft.com/en-us/library/ee406216.aspx - Lync MAPI 2010 COM Server
http://beatabit.blogspot.de/2011/03/lync-mapi-2010-com-server.html - Microsoft Lync 2010 MAPI COM
Server Authentication Prompt
Explained
http://www.proexchange.be/blogs/lync2010/archive/2012/02/10/microsoft-lync-2010-mapi-com-server-authentication-prompt-explained.aspx - Credentials are required.
Lync Users are getting password
prompt when connecting to Lync
from the Internet.
http://jerryslyncblog.wordpress.com/2011/10/30/credentials-are-required-lync-Users-are-getting-password-prompt-when-connecting-to-lync-from-the-internet/
Wie man auf einem "F5 Loadbalancer" per Skript "Negotiate" abschaltet. - Lync Client Prompts für Credentials when Connecting to
Exchange Services
http://blog.rudikersten.com/2011/05/31/lync-client-prompts-for-credentials-when-connecting-to-exchange-services/ - 2298541 Microsoft Lync 2010 continuously asks für credentials after signing in
- Integrated Windows
Authentication
http://blogs.msdn.com/b/ieinternals/archive/2011/07/06/integrated-windows-authentication-kerberos-ntlm-http-400-error-for-16kb-authorization-header.aspx - Kerberos fallback to NTLM
http://blogs.technet.com/b/ravindrapamidi/archive/2009/03/19/kerberos-fallback-to-ntlm.aspx - Lync is experiencing
connection issues with the
Exchange server. Lync will
attempt to repair the connection until it is fully restored.
http://support.risualblogs.com/blog/2011/04/07/lync-is-experiencing-connection-issues-with-the-exchange-server-lync-will-attempt-to-repair-the-connection-until-it-is-fully-restored/
UAG als Web Publishing und Web Portal
UAG kann natürlich nicht nur Direct Access anbieten, sondern auch Webseiten veröffentlichen und optional sogar "Portalzugänge" erlauben. Das ist aber ein komplett eigenes Kapitel und hier verweise ich auf viele andere schöne Webseiten und Whitepapers.
- Forefront UAG: About Trunks
http://social.technet.microsoft.com/wiki/contents/articles/forefront-uag-about-trunks.aspx - How to Configure UAG to
Publish Your Private Certificate
Revocation List
http://blogs.technet.com/b/tomshinder/archive/2010/08/03/how-to-configure-uag-to-publish-your-private-certificate-revocation-list.aspx - Forefront UAG and ADFS
better together
http://blogs.technet.com/b/edgeaccessblog/archive/2010/04/14/forefront-uag-and-adfs-better-together.aspx
UAG und Exchange
UAG kann genau wie TMG natürlich auch Exchange OWA, aber auch ActiveSync, EWS, OAB etc. veröffentlichen. Seit UAG 2010 SP1 ist ein Weg, der vorher möglich war aber nicht supportet wurde, nun auch offiziell nicht mehr nutzbar. Wer eine Anmeldung des Benutzers an UAG abverlangt und intern auf Exchange auch noch "Formbased" arbeitet, muss innen auf HTTP umstellen oder zusätzliche virtuelle Webseiten unterstützen.
- UAG einmal mit Portal (Client erforderlich)
- UAG einmal preAuth (Client möglich)
- UAG transparent (nur URL-Screening)
Dies ist die sicher schwächste Absicherung aber mit TMG vergleichbar, wenn keine Preauthentication stattfindet. Sowohl auf dem UAG Trunk als auch auf der Application wird eine Anmeldung abgestellt so dass UAG quasi nur noch ReverseProxy und URL-Filter und Inspection macht. Wer mit UAG wirklich "nur" Exchange publizieren will, kann dies dennoch tun und die Anmeldemaske von Exchange nutzen
Hier noch ein paar weiterführende Links
- Exchange services publishing
solution guide
http://technet.microsoft.com/en-us/library/dd857315 - Before you publish Exchange
services
http://technet.microsoft.com/en-us/library/ee921437 - White Paper – Publishing
Exchange Server 2010 with
Forefront”
http://go.microsoft.com/fwlink/?LinkId=197136 - Publishing Exchange Server
2010 with Forefront UAG and TMG
http://blogs.technet.com/b/exchange/archive/2010/07/16/publishing-exchange-server-2010-with-forefront-uag-and-tmg.aspx - Configuring Multiple OWA/ECP
Virtual Directories on Exchange
2010 Client Access Server
http://blogs.technet.com/b/exchange/archive/2011/01/17/3411832.aspx - UAG 2010 SP1 SSO Removed
support für OWA 2010 FBA ( Form
Base authentication) in UAG2010
Portal
http://social.technet.microsoft.com/Forums/en-US/forefrontedgeiag/thread/1071a4ef-13f6-44b5-88a1-a2cc3308daf3
SSL Bindungen
Ein "Problemfeld" hat mich immer wieder mit UAG eingeholt. Der Server hat ja per Default erst mal 2 IP-Adressen und auf dem Server wird für die Portallösung auch ein IIS installiert. Auch wenn die zweite IP-Adresse eigentlich für IPHTTP vorgesehen ist, so scheint UAG das mit den Bindungen nicht immer hin zu bekommen. "Normalerweise" binden sich die Protokolle explizit an die einzelnen IP-Adressen und Ports und eine "Default Bindung" ist auf 0.0.0.0:443 gebunden. Diese ist dann allerdings IPHTTP. Ich habe bislang keinen Weg gefunden, um IPHTTP explizit ein Zertifikat zu binden.
netsh http show sslcert
Leider installiert UAG auch ein "Default Webserver Zertifikat" mit einer sehr langen Gültigkeit mit und bindet diese auf alle Ports, wenn nicht abweichend etwas konfiguriert ist
Prüfen Sie daher einfach mit einem HTTPS oder ein anderes Tool (z.B. http://www.digicert.com/help/) von extern das angebotene Zertifikat. Wenn das Zertifikat nicht passt, dann sollten Sie es per NETSH löschen und per GUI wieder neu zuweisen. Leider scheint auch hier die GUI von UAG sich anders zu verhalten als von DA. Daher hier die kompletten Kommandozeilen. Der Hashwert können Sie aus dem Zertifikat (Fingerprint) ablesen.
REM Zuerst delete der default bindung netsh http delete sslcert 0.0.0.0:443 REM Addieren einer Bindung (Zeilenumbruch entferen REM Per PowerShell koennen sie mit "([guid]).guid" schnell eine GUID erzeugen. REM Zur Lesbarkeit wurden Zeilenumbrueche addiert netsh http add sslcert ipport=0.0.0.0:443 certhash=5d52fe388590d25fbd4f7d902f298e97a4404440 appid={9c5923e9-de52-33ea-88de-7ebc8633b9cc} clientcertnegotiation=enable ds=en C:\>netsh http show sslcert SSL Certificate bindings: ------------------------- IP:port : 0.0.0.0:443 Certificate Hash : 5d52fe388590d25fbd4f7d902f298e97a4404440 Application ID : {9c5923e9-de52-33ea-88de-7ebc8633b9cc} Certificate Store Name : (null) Verify Client Certificate Revocation : Enabled Verify Revocation using Cached Client Certificate Only : Disabled usage Check : Enabled Revocation Freshness Time : 0 URL Retrieval Timeout : 0 Ctl Identifier : (null) Ctl Store Name : (null) DS Mapper usage : Enabled Negotiate Client Certificate : Enabled
Wenn Sie UAG mit DA automatisch installieren, dann wird auch der Parameter "Negotiate Client Certificate" auf "Enabled" gesetzt. Haben Sie aber DA vorab eingerichtet und installieren dann UAG hinterher, dann ist diese Option nicht eingeschaltet.
- Changing the IPHTTPS tunnel
certificate in Direct Access
http://itbloggen.se/cs/blogs/hasain/archive/2010/09/15/changing-the-iphttps-tunnel-certificate-in-Direct Access.aspx - How to: Configure a Port
with an SSL Certificate
http://msdn.microsoft.com/en-us/library/ms733791.aspx
Status und Überwachung
Auch die Überwachung von Direct Access und den anderen neuen Funktionen von UAG wurde nun auf eine Webseite ausgelagert. So können Sie, entsprechende Berechtigungen und Firewall-Regeln vorausgesetzt, von überall den Status des UAG-Servers einsehen.
Hier exemplarisch die beiden Ansichten bezüglich Direct Access. Zuerst der Statusübersicht der verschiedenen Dienste und Rollen
Und hier sieht man meinen PC, der über IPHTTPS gerade eine aktive Verbindung hat
Natürlich kann UAG auch SNMP-traps und SYSLOG-Meldungen senden und sich damit auch in andere Umgebungen einbinden.
Weitere Links
- TMG
- Microsoft Forefront UAG Product Team Blog
http://blogs.technet.com/b/edgeaccessblog/rss.aspx - UAG: Publishing Lync web services
http://technet.microsoft.com/en-us/library/hh490317.aspx - System requirements für Forefront UAG client devices
http://technet.microsoft.com/en-us/library/dd920232.aspx - Forefront UAG Release Notes
http://technet.microsoft.com/en-us/library/dd772157.aspx - Forefront UAG Support boundaries
http://technet.microsoft.com/en-us/library/ee522953.aspx - Forefront UAG Direct Access Design Guide
http://technet.microsoft.com/en-us/library/ee406191.aspx - Forefront UAG Direct Access Deployment Guide
http://technet.microsoft.com/en-us/library/dd857320.aspx - Understanding Forefront UAG architecture
http://technet.microsoft.com/en-us/library/ee690443.aspx - Publishing design guide
http://technet.microsoft.com/en-us/library/dd857279.aspx - Publishing deployment guide
http://technet.microsoft.com/en-us/library/ee406199.aspx - Direct Access and UAG Better Together
http://blogs.technet.com/b/forefrontexperts/archive/2009/10/01/direct-access-and-uag-better-together.aspx - Unified Access Gateway Demo, Screencast, and PM Interview
http://edge.technet.com/Media/UAG-Demo-Screencast-and-PM-Interview/ - Split Brain DNS: Configuring Direct Access für Office Communications Server (OCS)
http://blogs.technet.com/b/edgeaccessblog/archive/2010/05/12/split-brain-dns-configuring-Direct Access-for-office-communications-server-ocs.aspx - Securely Publishing Microsoft Exchange Server With
Forefront unified Access Gateway (UAG)
Part 1: http://marksmith.netrends.com/Lists/Posts/Post.aspx?ID=98
Part 2: http://marksmith.netrends.com/Lists/Posts/Post.aspx?ID=103
Part 3: http://marksmith.netrends.com/Lists/Posts/Post.aspx?ID=105 -
Forefront UAG architecture
http://bradenvoigt.blogspot.de/2010/08/forefront-uag-architecture.html -
Forefront UAG: About Trunks
http://social.technet.microsoft.com/wiki/contents/articles/forefront-uag-about-trunks.aspx -
SSTP via UAG
http://blogs.technet.com/b/edgeaccessblog/archive/2009/07/05/adding-the-sstp-magic-to-the-uag-charm.aspx