No Suitable Directory Servers Found in Forest windowspapst.de Site Default-First-Site-Name and connected Sites.

No Suitable Directory Servers Found in Forest

Exchange ECP OWA Error

Hierbei handelt es sich wohl eher um eine seltene aber mögliche Fehlermeldung.

Exchange OWA und ECP lassen sich nach einer Server-Härtung (Hardening) nicht mehr öffnen. Die Exchange Server laufen sonst einwandfrei. E-Mails kommen rein und gehen auch wieder raus.

Als ich mir die NIS2 Empfehlungen (Richtlinien für den KRITIS Fachbereich) angesehen und in meinem LAB zu Testzwecken gebaut und ausgerollt habe, stieß ich während der Prüfung auf einen ganz gemeinen Fehler.

No Suitable Directory Servers Found in Forest windowspapst.de Site Default-First-Site-Name and connected Sites.

No Suitable Directory Servers Found in Forest

Aus der Fehlermeldung geht viel irgendwie aber nichts brauchbares hervor.

No Suitable Directory Servers Found in Forest

Das Ziel war die Umsetzung des Gesetzes zur Stärkung der Cyber­sicherheit EU NIS2. Als Basis diente das NIST Cybersecurity Framework basierend auf fünf Kernfunktionen:

Identifizieren – Sie kennen alle Ihre Ressourcen und Ihre Angriffsfläche.
Schützen – Implementieren Sie die Sicherheitsvorkehrungen.
Erkennen – Rechtzeitige Erkennung von Cybersicherheitsvorfällen.
Reagieren – Plan zur Eindämmung der Auswirkungen.
Wiederherstellen – Aufrechterhaltung der Ausfallsicherheit und Wiederherstellung der Services nach einem Angriff.

Mein Kernpunkt war die Implementierung von Sicherheitsvorkehrungen.

Nach einer intensiven Suche nach der Ursache (4 Stunden) musste ich nachher echt schmunzeln. Ich habe die kompletten Richtlinien stufenweise zurückgebaut und letztlich lag es, wie solles auch anders sein, an einer Kleinigkeit. Da wäre ich im Leben nicht drauf gekommen.

User Rights Assigment > Manage auditing and security log

Den Gruppenrichtlinen zur Härtung der Domänen-Controller fehlte der Eintrag “Exchange Servers

Exchange ECP OWA Error

Fehlermeldung Server Error in owa Application

Server Error in ‘/owa’ Application.
No Suitable Directory Servers Found in Forest windowspapst.de Site Default-First-Site-Name and connected Sites.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.ServiceModel.FaultException`1[[Microsoft.Exchange.Data.Directory.TopologyDiscovery.
TopologyServiceFault, Microsoft.Exchange.Data.Directory, Version=15.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]]: No Suitable Directory Servers Found in Forest windowspapst.de Site Default-First-Site-Name and connected Sites.

Source Error:

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.

Stack Trace:

[FaultException`1: No Suitable Directory Servers Found in Forest windowspapst.de Site Default-First-Site-Name and connected Sites.] System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg) +4520880
System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type) +1364
Microsoft.Exchange.Data.Directory.TopologyDiscovery.ITopologyClient.GetServersForRole(String partitionFqdn, List`1 currentlyUsedServers, ADServerRole role, Int32 serversRequested, Boolean forestWideAffinityRequested) +0
Microsoft.Exchange.Data.Directory.<>c__DisplayClass33_0.<InternalServiceProviderGetServers
ForRole>b__0(IPooledServiceProxy`1 proxy) +140
Microsoft.Exchange.Net.ServiceProxyPool`1.TryCallServiceWithRetry(Action`1 action, String debugMessage, WCFConnectionStateTuple proxyToUse, Int32 numberOfRetries, Boolean doNotReturnProxyOnSuccess, Exception& exception) +312

[ADTransientException: The call to Microsoft Exchange Active Directory Topology service on server ‘TopologyClientTcpEndpoint (localhost)’ returned an error. Error details No Suitable Directory Servers Found in Forest windowspapst.de Site Default-First-Site-Name and connected Sites..] Microsoft.Exchange.Data.Directory.ServiceTopologyProvider.GetConfigDCInfo(String partitionFqdn, Boolean throwOnFailure) +506
Microsoft.Exchange.Data.Directory.TopologyProvider.PopulateConfigNamingContexts(String partitionFqdn) +55
Microsoft.Exchange.Data.Directory.TopologyProvider.GetConfigurationNamingContext(String partitionFqdn) +61
Microsoft.Exchange.Data.Directory.ADDataSession.GetNamingContext(ADNamingContext adNamingContext) +446
Microsoft.Exchange.Data.Directory.ADDataSession.GetConfigurationNamingContext(String callerFilePath, Int32 callerFileLine, String memberName) +249
Microsoft.Exchange.Data.Directory.ADDataSession.GetConnection(String preferredServer, Boolean isWriteOperation, String optionalBaseDN, ADObjectId& rootId, ADScope scope) +238
Microsoft.Exchange.Data.Directory.ADDataSession.InternalFind(ADObjectId rootId, String optionalBaseDN, ADObjectId readId, QueryScope scope, QueryFilter filter, SortBy sortBy, Int32 maxResults, IEnumerable`1 properties, Boolean includeDeletedObjects) +4910
Microsoft.Exchange.Data.Directory.ADDataSession.Find(ADObjectId rootId, QueryScope scope, QueryFilter filter, SortBy sortBy, Int32 maxResults, IEnumerable`1 properties, Boolean includeDeletedObjects) +132
Microsoft.Exchange.Data.Directory.ADDataSession.Find(ADObjectId rootId, QueryScope scope, QueryFilter filter, SortBy sortBy, Int32 maxResults, String callerFilePath, Int32 callerFileLine, String memberName) +371
Microsoft.Exchange.Data.Directory.SystemConfiguration.ADTopologyConfigurationSession.
FindServerByFqdn(String serverFqdn, String callerFilePath, Int32 callerFileLine, String memberName) +445
Microsoft.Exchange.Data.Directory.SystemConfiguration.ADTopologyConfigurationSession.
ReadLocalServer(String callerFilePath, Int32 callerFileLine, String memberName) +272
Microsoft.Exchange.Data.Directory.SystemConfiguration.Server.GetLocalServerClientAccessArray() +148
Microsoft.Exchange.ExchangeSystem.LazyMember`1.GetLazyMemberInternal() +103
Microsoft.Exchange.HttpProxy.Common.PerfCounters.UpdateHttpProxyPerArrayCounters() +26
Microsoft.Exchange.HttpProxy.ProxyApplication.Application_Start(Object sender, EventArgs e) +259

[HttpException (0x80004005): The call to Microsoft Exchange Active Directory Topology service on server ‘TopologyClientTcpEndpoint (localhost)’ returned an error. Error details No Suitable Directory Servers Found in Forest windowspapst.de Site Default-First-Site-Name and connected Sites..] System.Web.HttpApplicationFactory.EnsureAppStartCalledForIntegratedMode(HttpContext context, HttpApplication app) +546
System.Web.HttpApplication.RegisterEventSubscriptionsWithIIS(IntPtr appContext, HttpContext context, MethodInfo[] handlers) +171
System.Web.HttpApplication.InitSpecial(HttpApplicationState state, MethodInfo[] handlers, IntPtr appContext, HttpContext context) +173
System.Web.HttpApplicationFactory.GetSpecialApplicationInstance(IntPtr appContext, HttpContext context) +255
System.Web.Hosting.PipelineRuntime.InitializeApplication(IntPtr appContext) +347

[HttpException (0x80004005): The call to Microsoft Exchange Active Directory Topology service on server ‘TopologyClientTcpEndpoint (localhost)’ returned an error. Error details No Suitable Directory Servers Found in Forest windowspapst.de Site Default-First-Site-Name and connected Sites..] System.Web.HttpRuntime.FirstRequestInit(HttpContext context) +552
System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext context) +122
System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest wr, HttpContext context) +732

Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.8.9224.0

Weitere Informationen zum Thema europäischer Rahmen für Betreiber Kritischer Infrastrukturen findet ihr bei OpenKRITIS.

Download:

RICHTLINIE (EU) 20222555 DES EUROPÄISCHEN PARLAMENTS UND DES RATES