ADFS2012R2 Setup
Die Installation von ADFS ist mit Windows 2012R2 deutlich einfacher geworden, als mit ADFS 2.0 Setup. Während mit ADFS2 noch einige Vorarbeiten erforderlich sind, ist es mit Windows 2012R2 eine Rolle, die einfach addiert werden kann. Das kann sogar auf dem Domain Controller erfolgen, da die vielleicht als kritisch angesehene Komponente IIS nicht mehr erforderlich ist. Natürlich müssen Sie immer noch wissen, was Sie tun und was sie benötigen. Die folgende Checkliste kann ihnen dabei helfen.
-
Checklisten
Eine Übersicht aller Checklisten der MSXFAQ
Vorüberlegungen
Ehe Sie das Setup starten, müssen Sie einige Dinge festlegen:
Entscheidung | Status |
---|---|
NameDer ADFS-Service muss von den Clients später unter einem DNS-Namen per HTTPS angesprochen werden. Hier gibt es keine "Standards" auch wenn Microsoft gerne in Dokumentationen ein "sts.domain>" verwendet. Andere Firmen nehmen adfs.<domain> oder sts.federation.<domain> oder adfs-online.<domain>. Wenn Sie auf Office 365 verschiedene Domänen von Firmen ausprobieren, sehen Sie unterschiedlichste Namen. Denken Sie dabei aber an:
|
|
VerfügbarkeitDamit ein Zugriff auf Dienste einer mit ADFS gekoppelten Stelle möglich ist, muss ADFS funktionieren. Ohne Ticket gibt es keinen Zugriff und wenn der ADFS-Service nicht verfügbar ist, kann niemand sich mehr an den abhängigen Diensten anmelden. ADFS sollte also "hochverfügbar" sein. Das geht mit zwei oder mehr ADFS-Server in einer Farm sehr einfach. Die Clientzugriffe sollte natürlich mit einem LoadBalancer verteilt werden. |
|
Plattform und SizingADFSR2 ist eine Windows Rolle und dazu ist ein Windows Server erforderlich. Sie haben also die Wahl zwischen virtuellen und physikalischen Servern. Auch die Dimensionierung ist natürlich ein wichtige Thema, wobei hier relativiert werden muss. Ein Ticket gilt in der Regel 60 Minuten und eine Anmeldung kann mit 10kbyte auskommen. Selbst 1000 User, die jeden Tag sich im Mittel vielleicht 10mal anmelden, ergeben 10.000 HTTP-Requests mit 100 Megabyte Datenvolumen. Das sollte einen normalen ADFS-Server nicht wirklich belasten. |
|
StandortDer Server muss natürlich von allen Clients erreichbar sein und mit den Domain Controllern sprechen können. Dennoch ist es z.B.: möglich, den ADFS-Service zusammen mit der Domaincontroller-Funktion in einem anderen RZ oder in Azure zu betreiben. Das ist interessant, wen Firmen viele Cloud-Dienste nutzen und so unabhängiger von einem Ausfall der "On-Prem-Anbindung sein wollen. |
|
InternetZuletzt stellt sich noch die Frage, wie der ADFS-Service aus dem Internet erreichbar gemacht wird, wenn Clients ohne VPN von Dort ein Ticket erhalten wollen. Microsoft empfiehlt hier die Rolle des ADFS Proxy. Es sind aber auch andere Reverse-Proxy-Server möglich, solange Sie einen Proxy-Via-Header addieren. Nur dann kann der ADFS-Server den externen Zugriff verhindern und die alternativen Authentifizierungsverfahren anbieten oder einen DoS-Schutz gegen Kennwortattacken aktivieren. |
|
Installation
Schritt | Status |
---|---|
Betriebssystem bereitstellenFür den ADFS-Server benötigen Sie Windows 2012R2 oder höher, welches Mitglied einer Domäne ist. Die späteren Benutzer zu Authentifizierung können auch in anderen Domänen oder sogar vertrauten Forests sein. |
|
DienstkontoADFS benötigt ein Dienstkonto, welches sie vorher manuell anlegen müssen, es sie denn Sie nutzen die Funktion der "verwalteten Dienstkonten". Bei einem manuellen Dienstkonto sollten Sie aktivieren, dass es nicht abläuft und nicht regelmäßig sein Kennwort ändern muss.
|
|
ZertifikatDie Verbindung mit den Clients wird per SSL abgesichert. Dazu benötigen alle ADFS-Server ein Zertifikat. Dieses muss vorher installiert worden sein. Die Installation und Konfiguration der ADFS-Rolle enthält keinen Assistenten zum Anfordern eines Zertifikats. Vergessen Sie nicht, die entsprechenden "Intermediate"-Zertifikate mit im richtigen Store abzulegen |
|
Rolle addierenNachdem die Vorarbeiten erledigt sind können Sie die ADFS-Rolle über den Servermanager oder PowerShell einfach installieren. |
|
Initialkonfiguration
Direkt nach der Installation der Rolle können Sie über den Servermanager die ausstehende Initial-Konfiguration starten. Die einzelnen Bilder erspare ich mir.
Schritt | Status |
---|---|
FarmeinstellungZuerst bietet ihnen der Assistent aus, eine neue Farm einzurichten oder einen weiteren Server in eine bestehende Farm zu installieren. Der erste Server startet eine neue Farm |
|
Domain Admin CredentialsDas Setup legt einige Einträge im Forest ab, z.B. damit die Anmeldung per Kerberos funktioniert. Dazu müssen Sie im Setup einmal die Anmeldedaten eines Domänen Administrator eingeben. Diese werden nur für die Einrichtung genutzt. |
|
SSL Zertifikat auswählenNun sollten Sie das vorab installierte SSL-Zertifikat auswählen können und den Farmnamen als auch den Display Name auf der ADFS-Webseite |
|
Service Account auswählenErst dann können Sie das Dienstkonto angeben, welches sie im Vorfeld angelegt haben oder die "Managed Service Accounts" nutzen. |
|
SQL Backend auswählenADFS muss einige Einstellungen speichern, die von allen Servern in der Farm repliziert werden. Heute ist das in vielen Programmen einfach SQL. Die ADFS-Rolle kann die "Windows Internal Database", eine spezielle SQL-Datenbank für Betriebssystemdienste nutzen. Sehr große Umgebungen können die Daten aber auch in einen anderen SQL-Server auslagern. |
|
Konfiguration ausführenMit dem Startknopf beginnt der Assistent die gemachten Angaben umzusetzen. |
|
Damit ist die Ersteinrichtung abgeschlossen und der ADFS-Server sollte schon unter seinem Farmnamen erreichbar sein.
Nachkonfiguration
Der Assistent hinterlässt ihnen einen Server, der grundlegend funktioniert. Allerdings gibt es noch einige Einstellungen, die nicht bei der Ersteinrichtung abgefragt werden, z.B.
Schritt | Status |
---|---|
Anpassen der Anmeldegrafik, Links und FarbenWenn Anwender auf die "Formularseite" von ADFS kommen, dann zeigt Windows hier erst einmal das StandardLayout, welches sehr schnell über PowerShell angepasst werden kann. Set-AdfsGlobalWebContent ` -CompanyName "MSXFAQ" Set-AdfsGlobalWebContent ` -HelpDeskLink https://adfs.msxfaq.de/help/ ` -HelpDeskLinkText "Hilfe" Set-AdfsGlobalWebContent ` -HomeLink https://adfs.msxfaq.de/home/ ` -HomeLinkText "Startseite" Die Online-Anleitung von Microsoft beschreibt sehr gut die weiteren Optionen:
|
|
Extranet Lockout SchutzSet-AdfsProperties ` -ExtranetLockoutThreshold 2 ` -ExtranetObservationWindow 00:01:00 ` -EnableExtranetLockout $true Wenn der ADFS-Proxy den Header "x-ms-proxy" addiert, dann kann der ADFS-Server erkennen, dass der Zugriff von außen kommt.
|
|
KerberosSie haben bei der Installation ein "Dienstkonto angegeben, mit dem die ADFS-Services arbeiten. Das ist wichtig zu wissen, wenn Sie statt NTLM z.B. "Kerberos" nutzen wollen. Dazu müssen Sie dann einfach den SPN des ADFS-Servers auf dieses Benutzerkonto addieren. |
|
WIA Anmeldung (Windows Integrated Authentication)Der ADFS-Service wertet den "UserAgent" aus, um die entsprechende Authentifizierung anzubieten. Die "Windows integrierte Anmeldung", d.h. NTLM oder Kerberos bekommen nur "kompatible" Clients. Auf der Liste fehlen per Default aber z.B. Chrome, Firefox und Safari(MAC). Diese Browser können aber auch Kerberos, wenn Sie entsprechend konfiguriert wurden (Siehe ). Damit Sie aber auch von ADFS zur Anmeldung per "Windows Integrated Authentication" aufgefordert werden, müssen Sie dies in ADFS auch einrichten: Set-ADFSProperties ` -WIASupportedUserAgents @("MSAuthHost/1.0/In-Domain", "MSIE 6.0", "MSIE 7.0", "MSIE 8.0", "MSIE 9.0", "MSIE 10.0", "Trident/7. |
|
WSAuth von externAus Sicherheitsgründen sollte man NTLM von extern abschalten. Set-AdfsEndpoint -TargetAddressPath /adfs/services/trust/2005/windowstransport -Proxy $false Set-AdfsEndpoint -TargetAddressPath /adfs/services/trust/13/windowstransport -Proxy $false |
|
Weitere AnpassungenWenn Sie weitere Einstellungen vornehmen, sollten Sie diese dokumentieren. |
|
Diese Dinge sind natürlich noch zu konfigurieren.
Testen
Den ADFS-Server zu testen ist gar nicht so einfach ohne Dienste, die auf ADFS aufbauen. Ohne eine Partnerschaft zu Office 365, SharePoint, CRM, WAP o.ä. können Sie nur zwei Dinge machen:
- Abfrage der XML-Dateien
- Aufruf der interaktiven
Anmeldeseite
https://adfs.netatwork.de/adfs/ls/IdpInitiatedSignon.aspx
ADFSHelp - Resolve authentication issues faster
https://adfshelp.microsoft.com/
https://adfshelp.microsoft.com/JwtDecoder/GetToken
Sehr nützliche Seite von Microsoft, um Probleme mit ADFS und
Tokens zu analysieren
Konfiguration
Die eigentliche Arbeit steht ihnen aber nun noch bevor, denn erst wenn Sie nun verschiedene Trust Partner addiert haben, können andere Dienste von den ADFS-Tickets profitieren. Sie müssen dazu sowohl auf dem ADFS-Server als auch auf dem anderen System entsprechende Einrichtungen vornehmen.
- Best practices for securing
Active Directory Federation
Services
https://aka.ms/adfs-best-practices - Konfigurieren von
SAML-basierter
Anspruchsauthentifizierung mit
ADFS in SharePoint 2013
https://technet.microsoft.com/de-de/library/hh305235.aspx - Verwenden der
anspruchsbasierten AD
FS-Authentifizierung mit Outlook
Web App und
Exchange-Verwaltungskonsole
https://technet.microsoft.com/de-de/library/dn635116(v=exchg.150).aspx - Configuring Exchange 2013
SP1 to Accept AD FS Claims
http://blogs.technet.com/b/platformspfe/archive/2014/03/12/configuring-exchange-2013-sp1-to-accept-ad-fs-claims.aspx - Configure the AD FS server für IFD
https://technet.microsoft.com/en-us/library/gg188600.aspx - How to Set up CRM 2015 IFD
on Windows 2012 and ADFS 3.0
http://www.interactivewebs.com/blog/index.php/crm/how-to-set-up-crm-2015-ifd-on-windows-2012-and-adfs-3-0/ - Configure ShareFile Single
Sign-On with ADFS 2.0
http://support.citrixonline.com/en_US/sharefile/help_files/SF090006?title=Configure+ShareFile+Single+Sign-On+with+ADFS+2.0%7D
Betrieb
Nach spätestens einem Jahr werden Sie eventuell eine böse Überraschung erleben. Entweder ist dann das Token Signing Zertifikat abgelaufen oder es wurde automatisch erneuert aber Sie haben dieses neue Zertifikat nicht an die Dienste weiter gegeben, die ihrem ADFS-Server vertrauen. Der einen ADFS-Server betreibt, sollte sich also auch Gedanken über den Betrieb machen. Dazu gehört wie immer:
- Patch-Management
- Updates
- Zertifikate
- Fehlerüberwachung
- Und anderes
Für den ADFS-Server gelten also ähnliche Anforderungen wie für andere Dienste.
-
AzureAD Connect Health
Mit Azure P1 können Sie ADFs aus der Cloud überwachen
Umbenennen
Es ist nicht möglich, den Hostnamen des ADFS-Servers oder der ADFS-Farm nachträglich zu ändern. Die Information steckt in zu vielen Stellen (Datenbank, ADFS-Tickets, Zertifikate etc.) und auch die Federation Partner müssen ihre Konfiguration dann auch ändern. Insofern sollten Sie sich vorher genau den ADFS-Hostnamen überlegen.
Sollten Sie aber dennoch den Namen ändern müssen, dann geht das nur, indem sie neue ADFS-Services parallel aufbauen und alle Dienste schwenken ehe die dann die alten Services abbauen.
Wer es etwas eiliger hat oder keine zusätzlichen Server und Loadbalancer bereits.tellen kann, kann natürlich auch die bestehenden Server "Uminstallieren." das Vorgehen ist recht einfach und kann in ca. 1-2h durchgeführt werden
- Alle ADFS-Proxies deinstallieren
- Alle ADFS-Rollen deinstallieren
- ADFS-Container in im AD unter "Program Data\Microsoft" löschen
- ADFS-Datenbank löschen
- ADFS neu installieren
Bedenken Sie, dass Sie nicht nur bei allen Federation-Partner dann neue Signing-Zertiifkate hinterlegen müssen. ,sondern auch die mit dem UPN verknüpfte URL auf den neuen Server verweisen muss.
Der Wechsel das ADFS-Server-FQDN ist möglich aber nur kleine Umgebungen oder "nicht produktive" Systeme werden eine bestehende Installation entfernen und neu installieren. Nahtloser ist ein Wechsel durch den parallelen Aufbau einer neuen ADFS-Infrastruktur und dem Umstellen der Anmeldung auf das neue System.
Es temporär von einem "SingleSignOn" auf ein "SameSignOn" wechseln kann, kann in Office 365 natürlich auch einfach ADFS deaktivieren und auf die vorher schon aktivierte Kennwort-Replikation durch AADConnect (Siehe Password Sync) setzen.
Weitere Links
- ADFS 2012R2
- ADFS 2.0 Setup
- ADFS Proxy
- PinpointDNS / Geo-DNS
- DNS
- DNS einrichten
- LoadBalancer
-
Checklisten
Eine Übersicht aller Checklisten der MSXFAQ -
AD FS 3.0: replace SSL
certificate
https://nolabnoparty.com/en/adfs-3-0-replace-ssl-certificate/
Deploy or update SSL certificate on ADFS servers and ADFS proxy servers
https://0049am.wordpress.com/2019/03/28/replace-ssl-certificate-on-adfs-servers-and-adfs-proxy-servers/