Blogserie Azure MFA – Part 3 Installation Azure MFA User Portal / SDK

Normalerweise ist die Installation des Portals genauso einfach, wie die des Servers, eigentlich und auch nur laut MSDN! Werden alle Rollen auf einem Server ausgeführt, soll die Kommunikation intern über RPC funktionieren. Leider klappt das in der Praxis nicht. Bisher habe ich auch keine Anleitung im Netz gefunden, die überhaupt funktionierte. Mit einigem Aufwand und viel Troubleshooting habe ich es zum Laufen bekommen.

Zunächst wird auf dem MFA Server die IIS Serverrolle installiert. Dabei werden folgende zusätzliche Features der Rolle benötigt.

  • Basic Authentication
  • Windows Authentication
  • ASP.NET 3.5
  • ASP.NET 4.5
  • ISS 6 Metabase Compatibility

93

Die Kommunikation zwischen SDK und Userportal muss verschlüsselt sein. Dafür wird ein gültiges Zertifikat benötigt. In meinem Beispiel stammt das Zertifikat von einer internen CA. In der Praxis wird das Userportal und die Mobile App im Internet veröffentlicht, sodass sich hier ein öffentliches Zertifikat empfiehlt. Es sollte in jedem Fall der FQDN des MFA Servers bzw. der externen Adresse verwendet werden.

94

Zunächst installiere ich das Azure MFA SDK (ebenfalls ein Webservice) auf dem Server. Das SDK stellt die Verbindung zwischen dem MFA Server und dem User Portal her. Es kann über die Konsole des MFA Server installiert werden.

95

In der Installation wird die Active Directory Gruppe Phone Admins group erzeugt.

96

Ich habe die Website unter der Standardwebsite belassen. Hier kann aber auch im Vorfeld eine eigene erstellt und ausgewählt werden.

 97

Im zweiten Schritt installiere ich nun aus der MFA Konsole das User Portal.

98

In der Installation wird der Active Directory Benutzer PFUP_MFA Account erstellt.

99

Auch hier wird die Standardwebsite verwendet.

100

Das Passwort des Active Directory Benutzers wird während der Installation generiert. Ich benötige es jedoch später in einer Konfigurationsdatei, deshalb setze ich es nach der Installation zurück.

101

Nun binde ich das SSL Zertifikat im IIS an die Standardwebsite mit dem Port 443.

102

Das Userportal muss wissen, dass es den Umweg über das SDK gehen soll. Dafür wird die Web.Config im Pfad C:\inetpub\wwwroot\MultiFactorAuth editiert.

<add key=“USE_WEB_SERVICE_SDK“ value=“true“/>

<add key=“WEB_SERVICE_SDK_AUTHENTICATION_USERNAME“ value=“domäne\PFUP_MFA“/>

<add key=“WEB_SERVICE_SDK_AUTHENTICATION_PASSWORD“ value=“Passwort“/>

<value>https://<MFASERVER FQDN>/MultiFactorAuthWebServicesdk/PfWsSdk.asmx</value>

103

In der Standardinstallation verwenden SDK und Userportal die .NET Version 4.o, jedoch benötigt das SDK die Version 2.0. Dazu wähle ich im IIS den Default App Pool und klicke auf View Applications.

104

Nun wähle ich die Website des SDK aus und ändere den Application Pool …

105

… auf Classic .NET App Pool.

106

Auf der Website des SDK ändere ich die Authentifizierung. Ich deaktiviere die anonyme Authentifizierung und aktiviere die Windows Authentifizierung.

107

Nun kann ich mich endlich mit der Konfiguration des User Portals selbst beschäftigen. In der Konsole des MFA Servers hinterlege ich die URL des Userportals und gebe einige Standardeinstellung an.

108
Nun funktioniert das Portal und der Login der Benutzer ist möglich.

109

Sofern nicht anders konfiguriert wird der Benutzer zuerst auf die Seite zur Beantwortung der Sicherheitsfragen weitergeleitet.

110

Was der Benutzer im Portal darf und was nicht regelt der Administrator in der Konsole des MFA Servers.

111
113

Sollte es beim Aufruf der Website zu folgenden Fehlern kommen, stimmt etwas in der Konfiguration nicht.

Web Service SDK: 3 – Web service requests must be protected with SSL. – Fehler bei der SSL Verschlüsselung vom SDK, tritt auch auf wenn der SDK ausgeschalten wird

 Web Service SDK: 4 – Web service requests must be protected with SSL. – Fehler bei der SSL Verschlüsselung vom SDK, tritt auch auf wenn der SDK ausgeschalten wird

 Azure MFA Web service requests must be protected by authentication. – Windows Authentifizierung auf der SDK Website fehlt 

Error communicating with the local Multi-Factor Authentication service. Please contact your administrator. – Verbindung zwischen User Portal und MFA Server funktioniert nicht

HTTP Error 500.24 – Internal Server Error – Entweder fehlt das .NET Framework oder die Zuordnung der Application Pools ist falsch

Server Error in ‚/MultiFactorAuth‘ Application. – Entweder fehlt das .NET Framework oder die Zuordnung der Application Pools ist falsch

Hyper-V SMB Storage Access Denied Error (0x80070005)

Eine kleine Stolperfalle ergibt sich bei der Remoteverwaltung eines Hyper-V Servers in SMB Szenarien. Sobald der Hyper-V / Clusterfailover Manager Remote ausgeführt wird, muss die Delegierung konfiguriert werden, sonst gibt es bei jeglichem Zugriff auf SMB-Ebene aus der Konsole heraus den Fehler „access denied error (0x80070005)“. Nachdem man alle NTFS und Share Berechtigungen für fehlerfrei befunden hat landet man bei Eingabe des Fehlercodes bei zahlreichen Workarounds die jedoch anderen Ursachen gelten. Im konkreten Fall fehlte die eingeschränkte Delegierung in den Active Directory Objekten der Hyper-V Hosts. Ich habe selbst einige Zeit suchen müssen, bis ich auf der entsprechenden Technet Seite gelandet bin. Deshalb hier der Link was genau durchzuführen ist.

0017

KB2920189 Fehler bei Gen2 VMs

Das aktuelle Update KB2920189 führt bei Generation 2 VMs mit eingeschaltetem Secure Boot zu einem Fehler während der Installation. Wird das Update mit mehreren anderen Updates installiert schlagen alle fehl. Derzeit gibt es noch keine Überarbeitung des Updates, jedoch folgenden Workaround.

  1. VM Herunterfahren
  2. Secure Boot in den Eigenschaften der VM deaktivieren
  3. VM Starten und Update installieren
  4. VM erneut Herunterfahren
  5. Secure Boot in den Eigenschaften der VM aktivieren
  6. VM Starten

Das Update betrifft

  • Windows RT 8.1
  • Windows 8.1
  • Windows 8.1 Enterprise
  • Windows 8.1 Pro
  • Windows Server 2012 R2 Datacenter
  • Windows Server 2012 R2 Essentials
  • Windows Server 2012 R2 Foundation
  • Windows Server 2012 R2 Standard
  • Windows RT
  • Windows 8
  • Windows 8 Enterprise
  • Windows 8 Pro
  • Windows Server 2012 Datacenter
  • Windows Server 2012 Essentials
  • Windows Server 2012 Foundation
  • Windows Server 2012 Standard

SCVMM 2012R2 Error ID 25325

Manchmal ist es wie verhext. Nachdem ich mich schon gefreut hatte, bei Erstellung des Clusters über VMM den Workaround Error ID 25342 wieder anwenden zu dürfen, lächelte mir der nächste Fehler im Workaround in der Powershell entgegen.

Install-SCVMHostCluster : Fehler bei der Clustererstellung: Network XXX.XXX.XXX.XXX/XX has already been specified. (Fehler-ID: 25325)

Nachdem ich einige Zeit mit der Fehleranalyse verbracht habe, bin ich auf diesen interessanten Beitrag im Social Technet vom 31.05.2013 gestoßen.

„I spoke to Microsoft, the solution is to create the cluster outside of VMM first, then add it into the VMM afterwards. It’s a known error and MS is working on a fix, but I have not been given any date for when the patch with come out.“

Ich kann den Workaround bestätigen und bin bisher im Betrieb auch auf keine dadurch verursachten Fehler gestoßen.

  1. alle VMHosts des zukünftigen Clusters dem SCVMM hinzufügen
  2. Konfiguration der VMHosts vornehmen (Netzwerk, IP-Adressen, Berechtigungen, …)
  3. alle VMHosts des zukünftigen Clusters wieder aus dem SCVMM entfernen (alle Einstellungen bleiben dabei erhalten)
  4. über den Failover Cluster Manager das Cluster außerhalb des SCVMM erstellen
  5. das neue Cluster dem SCVMM hinzufügen

SCVMM 2012 / 2012SP1 / 2012R2 Error ID 25342

Als ich im Sommer 2013 über SCVMM 2012 SP1 meinen ersten Cluster erstellen wollte, scheiterte der Wizard mit der folgenden Fehlermeldung:

„Network configuration of hosts to be clustered requires at least one static IP address to create a cluster.  Please specify at least one IP address and retry the operation.  ID 25342“

Im Setup wurden zuvor alle VMHosts hinzugefügt und erhielten über den VMM ihre Netzwerkkonfiguration samt IP-Adressen aus einem VMM IP-Pool. Wir haben damals einen Call bei Microsoft eröffnet mit dem Ergebnis Bug. Der Wizard erkennt wohl keine der Adressen als statisch an und kann somit keine Schnittstelle zur Vergabe der Cluster IP-Adresse bestimmen. Im Call wurde mir der Weg über die Powershell als Workaround genannt und, dass der Bug mit SCVMM 2012R2 behoben wird. Leider ist dem nicht so. Der Bug ist auch weiterhin enthalten.

$RunAsAcct=Get-SCRunAsAccount -Name <Ausführendes Konto was im VMM hinterlegt ist>

Install-SCVMHostCluster -ClusterName <Clustername> -ClusterIPAddress XXX.XXX.XXX.XXX -VMHost <VMHost1>,<VMHost2>,<VMHost…> -Credential $RunAsAcct

Der Vorgang kann nach Absetzen in der Job Übersicht im VMM verfolgt werden. Auch hier wird die Clusterprüfung durchgeführt und bei Fehler oder Warnungen das Erstellen das Clusters abgebrochen.